Linux网络——配置网络之iproute家族命令
摘要:本文主要学习了iproute家族用来配置网络的命令。
ip命令
ip命令用于查看和管理IP地址、接口、路由、隧道等。用来取代ifconfig命令。
基本语法
网络接口相关:
1 ip link [选项]
网络名称空间相关:
1 ip netns [选项]
IP地址相关:
1 ip addr [选项]
路由相关:
1 ip route [选项]
选项说明
网络接口相关:
1 list 网卡名称:查看网卡信息,不指定则查看全部网卡信息。2 show 网卡名称:查看网卡信息,不指定则查看全部网卡信息。3 set 网卡名称 up:启用网卡。4 set 网卡名称 down:关闭网卡。5 set 网卡名称 name 网卡名称:修改网卡名称,需要在网卡关闭状态才可修改。6 set 网卡名称 mtu mtu值:修改网卡最大传输单元。7 set 网卡名称 multicast on:开启组播功能。8 set 网卡名称 multicast off:禁用组播功能。9 set 网卡名称 netns 名称空间:将接口移动至指定的网络名称空间中。
网络名称空间相关:
1 list:列出所有的netns。2 add 名称空间:创建指定的netns。3 del 名称空间:删除指定的netns。4 exec 名称空间 命令:在指定的netns上运行命令。
IP地址相关:
1 list 网卡名称:查看网卡上的IP地址,不指定则查看全部网卡IP地址。2 show 网卡名称:查看网卡上的IP地址,不指定则查看全部网卡IP地址。3 add IP地址/掩码位数 dev 网卡名称:添加IP地址。4 add IP地址/掩码位数 dev 网卡名称 label 别名:添加IP地址并指定别名。5 add IP地址/掩码位数 dev 网卡名称 broadcast 广播地址:添加IP地址并指定广播地址。6 add IP地址/掩码位数 dev 网卡名称 scope 作用域:添加IP地址并指定作用域。作用域主要有三种:global全局有效,link仅接口有效,host仅主机有效。7 delete IP地址/掩码位数 dev 网卡名称:删除IP地址。8 flush dev 网卡名称:清空IP地址。
路由相关:
1 show 路由地址:显示路由表,不指定地址则查看全部路由。2 add 目标网络 via 网关 dev 网卡 src 出口地址:添加路由,网卡和出口地址可以省略。3 change 目标网络 via 网关 dev 网卡 src 出口地址:修改路由,网卡和出口地址可以省略。4 replace 目标网络 via 网关 dev 网卡 src 出口地址:修改路由或添加路由,网卡和出口地址可以省略。5 del 目标网络:删除路由。6 get 目标网络:获得单条路由的详细信息。7 flush:清空路由表。
ss命令
ss命令用于获取socket统计信息等。用来取代netstat命令。
基本语法
1 ss [选项] 过滤条件
选项说明
1 -t:显示tcp协议相关的连接。 2 -u:显示udp协议相关的连接。 3 -w:显示raw协议相关的连接。 4 -a:显示所有状态的连接。 5 -l:显示处于监听状态的连接。 6 -e:以扩展格式显示。 7 -n:以数字格式显示IP和Port。 8 -p:显示相关进程和PID。 9 -m:显示内存用量。10 -o:显示计数器信息。
过滤条件
过滤条件可以没有,主要有种方式:
1)通过TCP状态过滤
语法如下:
1 state TCP状态
TCP状态通常为以下几个值之一:
1 ESTABLISHED 套接字有一个有效连接。 2 SYN_SENT 套接字尝试建立一个连接。 3 SYN_RECV 从网络上收到一个连接请求。 4 FIN_WAIT1 套接字已关闭,连接正在断开。 5 FIN_WAIT2 连接已关闭,套接字等待远程方中止。 6 TIME_WAIT 在关闭之后,套接字等待处理仍然在网络中的分组。 7 CLOSED 套接字未用。 8 CLOSE_WAIT 远程方已关闭,等待套接字关闭。 9 LAST_ACK 远程方中止,套接字已关闭。等待确认。10 LISTEN 套接字监听进来的连接。如果不设置-l或者-a选项,将不显示出来这些连接。11 CLOSING 套接字都已关闭,而还未把所有输出发出。12 UNKNOWN 套接字状态未知。
2)通过表达式过滤
语法如下:
1 dport 目标端口或协议类型2 sport 源端口或协议类型
使用举例
显示tcp网络连接:
1 [root@localhost ~]# ss -tan2 State Recv-Q Send-Q Local Address:Port Peer Address:Port 3 LISTEN0128 *:22*:* 4 LISTEN0100 127.0.0.1:25*:* 5 ESTAB 00 192.168.35.128:22 192.168.35.1:93416 ESTAB 052192.168.35.128:22 192.168.35.1:12751 7 LISTEN0128 :::22 :::* 8 LISTEN0100::1:25 :::* 9 [root@localhost ~]#
通过状态筛选:
1 [root@localhost ~]# ss state ESTABLISHED 2 Netid Recv-Q Send-Q Local Address:PortPeer Address:Port 3 u_str 00* 19669* 19670 4 u_str 00* 19633* 19634 5 u_str 00* 16125* 16787 6 u_str 00* 19661* 19660 7 u_str 00* 19646* 19645 8 u_str 00* 18283* 18284 9 ...10 [root@localhost ~]#
通过端口筛选:
1 [root@localhost ~]# ss dport = 17715 2 Netid StateRecv-Q Send-Q Local Address:PortPeer Address:Port 3 u_str ESTAB00* 17224* 17715 4 [root@localhost ~]# ss sport = 17224 5 Netid StateRecv-Q Send-Q Local Address:PortPeer Address:Port 6 u_str ESTAB00* 17224* 17715 7 [root@localhost ~]# ss sport = 22 8 Netid StateRecv-Q Send-Q Local Address:PortPeer Address:Port 9 tcp ESTAB00 192.168.35.128:ssh 192.168.35.1:9341 10 tcp ESTAB052192.168.35.128:ssh 192.168.35.1:1275111 [root@localhost ~]#
通过组合筛选:
1 [root@localhost ~]# ss state established '( dport = :ssh or sport = :ssh )'2 Netid Recv-Q Send-Q Local Address:PortPeer Address:Port3 tcp 00 192.168.35.128:ssh192.168.35.1:9341 4 tcp 052 192.168.35.128:ssh192.168.35.1:127515 [root@localhost ~]# ss -tan state established sport = :226 Recv-Q Send-Q Local Address:Port Peer Address:Port 7 00192.168.35.128:22 192.168.35.1:93418 052192.168.35.128:22 192.168.35.1:12751 9 [root@localhost ~]#
如果觉得《Linux网络——配置网络之iproute家族命令》对你有帮助,请点赞、收藏,并留下你的观点哦!