Linux IP命令常见用法及网络管理参考手册

一、查询

1、显示IP地址及其属性

ip addr

仅显示某块网卡的信息

ip addr show dev em1

2、显示所有接口状态

ip link

显示某一接口状态:

ip link show dev em1

查询接口数据:

ip -s link

3、查询路由表

ip route

4、查询网卡多播信息

ip maddr
ip maddr show dev em1

5、查询ARP缓存表

ip neigh
ip neigh show dev em1

6、查询命令参数

ip help
ip addr help
ip link help
ip route help
ip neigh help

二、多播寻址

1、添加静态链路层多播地址

ip maddr add 33:33:00:00:00:01 dev em1

2、删除多播地址

ip maddr del 33:33:00:00:00:01 dev em1

三、修改IP地址与接口状态

1、添加一个IP地址

ip addr add 192.168.1.1/24 dev em1

2、删除一个IP地址

ip addr del 192.168.1.1/24 dev em1

3、拉起em1网卡

ip link set em1 up

4、down掉em1网卡

ip link set em1 down

5、设置网卡最大传输单元(Maximum Transfer Unit,MTU)

ip link set em1 mtu 9000

6、启用网卡混杂模式(能够接收所有经过它的数据流,而不论其目的地址是否是它)

ip link set em1 promisc on

四、调整路由

1、添加默认路由,网关为192.168.1.1 ,通过em1网卡连接

ip route add default via 192.168.1.1 dev em1

2、添加到192.168.1.0/24的路由

ip route add 192.168.1.0/24 via 192.168.1.1

3、添加到192.168.1.0/24的路由,通过em1网卡

ip route add 192.168.1.0/24 dev em1

4、删除一条路由

ip route delete 192.168.1.0/24 via 192.168.1.1 
ip route delete 192.168.1.0/24 via 192.168.1.1 dev em1

5、替换路由(如果未定义,则添加-add)

ip route replace 192.168.1.0/24 dev em1

6、显示到达IP 192.168.1.5的路由

ip route get 192.168.1.5

五、管理ARP表

1、向ARP表添加条目,IP地址:192.168.1.1,MAC地址:1:2:3:4:5:6

ip neigh add 192.168.1.1 lladdr 1:2:3:4:5:6 dev em1

2、使ARP表某个条目失效

ip neigh del 192.168.1.1 dev em1

3、替换,如果未定义则添加一条ARP记录

ip neigh replace 192.168.1.1 lladdr 1:2:3:4:5:6 dev em1

六、其他一些有用的网络命令

以下命令不一定来自iproute工具包

1、向相邻主机发送ARP请求

查看当前缓存ARP表:

arp -a  //BSD风格显示
arp -e  //Linux风格显示

通过eth0向相邻主机发送ARP请求:

arping -I eth0 192.168.1.1

检测192.168.1.1上的重复mac地址:

arping -D -I eth0 192.168.1.1

2、查询和控制网卡驱动和硬件设置

显示eth0的循环缓冲区(ring buffer):

ethtool -g eth0

显示eth0的驱动信息:

ethtool -i eth0

定位eth0,通常是通过使网络端口上的指示灯闪烁来定位:

ethtool -p eth0

显示eth0的网络和驱动数据:

ethtool -S eth0

3、显示socket数据

显示所有socket(监听/非监听):

ss -a

显示详细的socket信息:

ss -e

显示计时器信息:

ss -o

不解析地址:

ss -n

显示使用socket的进程:

ss -p

七、net-tools和iproute工具包的命令比较

NET-TOOLS 命令IPROUTE 命令
arp -aip neigh
arp -vip -s neigh
arp -s 192.168.1.1 1:2:3:4:5:6ip neigh add 192.168.1.1 lladdr 1:2:3:4:5:6 dev eth1
arp -i eth1 -d 192.168.1.1ip neigh del 192.168.1.1 dev eth1
ifconfig -aip addr
ifconfig eth0 downip link set eth0 down
ifconfig eth0 upip link set eth0 up
ifconfig eth0 192.168.1.1ip addr add 192.168.1.1/24 dev eth0
ifconfig eth0 netmask 255.255.255.0ip addr add 192.168.1.1/24 dev eth0
ifconfig eth0 mtu 9000ip link set eth0 mtu 9000
ifconfig eth0:0 192.168.1.2ip addr add 192.168.1.2/24 dev eth0
netstatss
netstat -neopass -neopa
netstat -gip maddr
routeip route
route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0ip route add 192.168.1.0/24 dev eth0
route add default gw 192.168.1.1ip route add default via 192.168.1.1
net-tools和iptoute命令对比