linux 网络配置与管理
网络基础知识
ISO/OSI:网络传输七层协议
物理层:底层数据传输硬件 链路层:从设备到设备主机通信,MAC地址,IP<-->MAC (ARP/RARP) 网络层:从源主机到目标主机之间通信,IP地址,IP报文 传输层:从源主机进程到目标主机特定进程之间通信,TCP/UDP。 TCP:有连接协议,建立逻辑连接 · SYN, ACK, FIN, RST, PSH, URG 三次握手: SYN=1, ACK=0, FIN=0 SYN=1, ACK=1, FIN=0 SYN=0, ACK=1, FIN=0 四次断开: 应用层:包括 (会话层、表示层、应用层) ps:网络传输协议1-4层:通信,5-7层:资源
网络属性配置
dig:DNS服务器地址解析
本地解析: /etc/hosts DNS服务器解析:指定DNS服务器地址 dig -t A FQDN dig -x IP:反解IP至FQDN
route: 网络路由配置
route-IFNAME: 配置文件的格式1:每行一个路由条目 DESTINATION via NETX_HOP 配置文件格式2: 每三行一个路由条目 ADDRESS#=DESTINATION NETMASK#=MASK GATEWAY#=GW 路由配置命令: route:显示路由信息 -n: 数字格式的地址 route add -host:目标为主机 -host HOST_IP gw NEXT_HOP [dev DEVICE] -net:目标是网络 -net NET_ADDRESS gw NEXT_HOP [dev DEVICE] -net 0.0.0.0: 表示目标为任意地址 route add default gw GW_ADD route del -host HOST_IP -net NET_ADDRESS
hostname:主机名配置
命令配置:hostname HOSTNAME 配置文件:/etc/sysconfig/network HOSTNAME=主机名
ifconfig:IP配置
配置文件有两类(/etc/sysconfig/network-scripts) 配置IP、掩码和网关: 以太网:ifcfg-IFNAME PPP: ifcfg-pppX ifcfg-IFNAME配置文件的格式: DEVICE=IFNAME: 此配置文件所关联到的设备,设备名称要与本文件名ifcfg-后面保持一致; BOOTPROTO={bootp|dhcp|static|none} HWADDR=00:11:22:33:44:55:66 :当前设备的MAC地址; NM_CONTROLLED={yes|no}: 是否接受NetworkManager服务脚本来配置此设备; ONBOOT={yes|no}: 是否在开机过程中,自动激活此接口 TYPE={Ethernet|Bridge}: 网络接口类型 UUID= IPADDR= NETMASK= GATEWAY= DNS1= DNS2= IPV6INIT={yes|no} USERCTL={yes|no}: 是否允许普通用控制此接口 PEERDNS={yes|no}: 不接受DHCP服务器指派的DNS服务器地址
一个网络接口配置多个IP地址
通过网络接口的别名来实现:IFNAME:# ens33, ens33:0, ens33:1, ens33:2 eth0,eth0:0, eth0:1 命令配置:立即生效 ifconfig IFALIAS IP 配置文件配置:别名不支持使用DHCP进行配置 ifcfg-IFALIAS DEVICE=IFALIAS BOOTPROTO={static|none} IPADDR= NETMASK= ONBOOT= USERCTL=
ping:ICMP
ping [option]... IP -c #: 报文的个数 -W timeout: 等待响应报文的超时时长;
traceroute:获取从当前主机到达目标主机所经由的所有网关
traceroute HOST
netstat: (ss):查看端口
netstat: (ss) -t: tcp协议相关 -u: udp协议相关 -n: 显示数字格式的地址 -l: listen,显示处于监听状态的连接 -tunl -a: 所有状态的连接 -tan -p: 显示会话中的进程程序名及进程号 -r: routing,显示路由表 -rn
ip命令
ip link : 管理接口 show [IFNAME] set IFNAME {up|down} multicast {on|off} 网卡关闭与开启: ifconfig IFNAME {up|down} ifup IFNAME ifdown IFNAME ip addr: 管理协议地址 ip addr {show|flush} [dev DEVICE] ip addr {add|del} ADDRESS dev DEVICE [label IFALIAS] [broadcast BCAST_ADDRESS] fconfig IFNAME ADDRESS broadcast BCAST_ADDRESS ip route: 管理路由 ip route list ip route flush ip route add DESTINATION [via NEXT_HOP] [src SOURCE_ADDRESS] [dev DEVICE] ip route del DESTINATION
后台进程管理
/etc/rc.d/init.d/与/etc/init.d/* SysV风格的脚本:多数脚本都用于控制Linux的后台进程,接受参数{start|stop|restart|status} /etc/init.d/network start service network start 配置某服务是否开机自动运行: chkconfig SRVNAME on|off 查看哪些服务开机自动运行: chkconfig --list