##ifcfg:ifconfig,route,netstat ##iprout:ip,ss,nmcli
1)#ifconfig 常用显示或更改网络配置 -a 显示所有接口信息,包括未激活接口 #ifconfig IFACE IP/MASK [up] 立即生效 #ifconfig add addr/prefixlen 添加IPv6地址
更改IP地址: 1
| ]# ifconfig eth0 202.204.235.1/24
|
查看指定网卡信息
2)#route 路由查看及管理 -n 不解析主机名,以数字格式显示 ----------------------------------------------------------------------- Destination Gateway Genmask Flags Metric Ref Use Iface 10.1.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 ----------------------------------------------------------------------- /Destination 目标 The destination network or destination host. 目标网络或目标主机。 0.0.0.0表示默认网关
/Gateway 网关 The gateway address or '*' if none set. 网关地址,如果没有就显示星号。
/Genmask 网络掩码 若为0.0.0.0表示该主机在本地网络内 直连路由 /Flags:标志,代表的意义如下: o U 该路由已启动; o H 目标是一部主机 (IP) 而非网域; o G 需要透过外部的主机 (gateway) 来转递封包; o R 使用动态路由时,恢复路由资讯的旗标; o D 已经由服务或转 port 功能设定为动态路由 o M 路由已经被修改了; o ! 这个路由将不会被接受(用来抵挡不安全的网域!) o A (installed by addrconf) o C (cache entry) /Metric 距离、跳数。暂无用。 /Ref 不用管,恒为0。 Number of references to this route. (Not used in the Linux kernel.) /Use 该路由被使用的次数,可以粗略估计通向指定网络地址的网络流量。 /Iface 接口,即eth0,对应本机的接口
route add [-net|-host] target [netmask NM] [[dev]if] 添加/删除路由条目
可手动添加也可安装quagga包借助于RIP、OSPF、BGP等协议自动生成 使用vtysh配置 1
2
3
4
| ]#route add -net 10.0.0.0/8 gw 192.168.10.1添加路由条目 网络
]#route add default gw 192.168.0.1更改默认网关
删除:
]#route del -host 10.1.252.54
|
3)netstat 命令用于显示各种网络相关信息,网络连接,路由表,接口状态,连接等。 -r 显示路由信息,路由表 -n 不解析主机名,能显示数字的全部转化成数字 -t (tcp)仅显示tcp相关选项 -u (udp)仅显示udp相关选项 -l 仅列出有在 Listen (监听) 的服務状态 -s 按各个协议进行统计 -p 显示建立相关链接的程序名 -e 显示扩展信息,例如uid等 -c 每隔一个固定时间,执行该netstat命令。 -i 所有接口信息 -I 指定接口 -Ieth0 或 -I=eth0 常用组合:-tan, -uan, -tnl, -unl
netstat -rn 类似 route -n
4)ifup/ifdown DEVICE 启动或禁用网卡
#hostname [HOSTNAME] 查看或修改主机名 立即生效,但重启不保留
#hostnamectl 显示主机名等信息 内核、架构、底层等 set-hostname 设置主机名,不会立即生效,重启永久有效
Cent OS 7 一般使用hostnamectl 修改主机名 配置文件/etc/hostname 默认没有
===== ##iprout家族: 版本与内核相同
1)ip show / manipulate routing, devices, policy routing and tunnels OBJECT [ link | addr | route ] #ip link set|show DEV 修改设备属性 up/down multicast on /multicast off:启用或禁用多播功能 name NAME:重命名接口 需先停用接口 mtu NUM:设置MTU大小 默认1500 #ip netns PID:ns表namespace,用于将接口移动到指定的网络名称空间,构建虚拟网络 list:列出所有的netns add NAME:创建指定netns del NAME:删除指定netns exec NAME COMMAND:在指定netns中运行命令 1
2
3
| ]#ip netns add mynet
]#ip link set eth1 netns mynet
]#ip link exec mynet ip link show
|
#ip address [OPTION] dev IFACE :地址管理 add IFADDR dev IFACE label LABEL:添加地址 ifconfig只显示一个主地址 1
2
| ]#ip addr add 202.204.235.5 dev eth1
]#ip addr show
|
[label NAME] 添加别名 ifconfig可显示 1
| ]#ip addr add 10.1.54.23 dev eth1 label eth1:0
|
[broadcast ADDRESS]:广播地址 会自动计算得到 省略 [scope SCOPE_VALUE]:设备的作用域 global 全局可用网卡地址在内核中,可连接eth0访问eth1的地址 link 接口可用 与网卡绑定 host 主机可用 del IFADDR dev IFACE:删除地址 show/list:查看地址 flush:清空接口所有地址 #ip route :routing table management 路由表管理 add TYPE PREFIX via GW [dev IFACE] [src SOURCE_IP]添加新路由 1
2
| ]#ip route add 172.18.20.0/16 via 202.204.235.1 dev eth1 src 10.1.54.23
]#ip route sdd default via 10.1.0.1
|
change replace delete 删除路由条目 1
| ]#ip route delet 172.18.20.0/16
|
show 显示路由信息 flush ARG 清空路由表 get 显示某个单条路由信息 2)ss [options] [FILTER] 类似netstat 用于取代netstat 性能更优 [option]: -t TCP相关连接 -u UDP相关连接 -w 裸套接字相关连接 -l 监听状态连接 -a 所有状态 -n 数字格式 -p 相关程序及PID -e 扩展格式信息 -m 内存用量 -o 计时器信息 [FILTER]:=[ stat TCP-STATE ] [ EXPRESSION ] [ TCP-STATE ] TCP FSM LISTEN:监听状态 ESTABLISHET:已建立的连接
FIN_WAIT_1: FIN_WAIT_2: SYN_SENT: SYN_RECV: CLOSED: [ EXPRESSION ]: dport = :22 sport = 1
2
| ]#ss -tan '( sport = :22 or dport = :22 )'
]#ss -tan state ESTABLISHED
|
======配置文件: IP/NETMASK/GW/DNS等属性配置文件: /etc/sysconfig/network-scripts/ifcfg-IFACE 路由的相关配置文件: /etc/sysconfig/network-scripts/route-IFACE 两种配置方式:不可混用 1.每行一个路由条目 TARGET via GW 10.0.0.0/8 via 202.204.235.1 2.每3行一个路由条目 ADDRESS#=TARGET NETMASK#=MASK GATEWAY#=GW
可用 vim 或专用命令修改: CentOS 6 setup(system-config-network) CentOS 7 nmtui
ifcfg-IFACE NAME: 名称 * - DEVICE:对应设备 ONBOOT:是否开机启动 UUID: 此设备唯一标识 IPV6INIT: 是否启用IPv6 - BOOTPROTO: 激活次接口时使用哪种协议,重用 hdcp、bootp、static、none TYPE: 接口类型,常见 Ethernet、Bridge * DNS: 第一DNS服务器指向 DNS2: 备用 DOMAIN:当前主机所在域 DNS搜索域 ping www 自动补全的域名 DEFROUTE: 是否为默认路由所使用的接口 * GATEWAY: 默认网关 * IPADDR: IP地址 * PREFIX: 网络位长度 * NETMASK: 子网掩码 CentOS 7支持PREFIX=# 以长度指明子网掩码 USERCTl: 是否允许普通用户控制此设备 PEERDNS: 如果BOOTPROTO为dhcp,是否允许dhcp server分配的dns覆盖本地设置 NM_CONTROLLED: 是否使用NetworkManager服务控制接口 最简配置 静态 * 动态 -
]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet UUID=97ce546f-f7e3-4115-af8d-a215ab8aa7e0 ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=none IPADDR=10.1.252.33 NETMASK=255.255.0.0 GATEWAY=10.1.0.1 DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" HWADDR=00:0C:29:F2:0D:9A PEERDNS=yes PEERROUTES=yes
|