ip
语法
ip [OPTIONS] OBJECT {COMMAND | help}
OBJECT
-
link, l: 网络设备
-
address, a: 网络协议(IP, IPv6)地址
-
route, r: 路由表
-
netns: net-namespace管理
-
addrlabel, addrl: Label configuration for protocol address selection
-
neighbour, n: ARP or NDISC cache entry.
-
rule, ru: Rule in routing policy database
-
tunnel, t: Tunnel over IP
帮助
-
ip help
-
ip OBJECT help
-
ip OBJECT COMMAND help
示例
ip link
创建网络设备
ip link add [name] DEVICE type TYPE
TYPE
-
vlan
-
veth: 虚拟网卡,成对出现,一端连接协议栈,另外一端和另外一个相连
-
bridge:虚拟网桥
-
vxlan
创建虚拟网卡veth
ip link add name veth0 type veth peer name veth1
创建虚拟网桥bridge
ip link add name br0 type bridge
veth0
设备加入网桥br0
ip link set veth0 master br0
修改设备的net-namespace
ip link set veth0 netns net1
启动/停止网络设备
ip link set dev DEVICE up|down
修改txqueuelen大小
ip link set txqueuelen 1000 dev eth0
修改MTU大小
ip link set mtu 9000 dev eth0
ip address
查看网卡信息
ip a show
Assigns the IP address to the interface
ip a add IP/mask dev INTERFACE
ip a add 192.168.0.32/24 dev eth0
ip route
查看路由表
ip route
增加网关地址
ip route add default via 192.168.0.1
增加路由条目
ip route add 172.19.0.0/24 dev eth0
或使用下一跳地址
ip route add 172.19.0.0/24 via 172.19.0.200
ip netns
创建新的net-namespace
ip netns add net01
进入新的网络命令空间net01
并执行bash
程序
ip netns exec net1 /bin/bash
可以验证已进入新的net-namespace, 查看net的node节点和老的namespace的不一样。
readlink /proc/$$/ns/net
ip neigh
** 查看ARP缓存**
ip n show
** 增加ARP缓存**
ip n add IP lladdr MAC dev DEVICE nud STATE
ip neigh add 192.168.1.5 lladdr 00:1a:30:38:a8:00 dev eth0 nud perm
net-tools
与 iproute
包命令对比
Old command (Deprecated) | New command |
---|---|
ifconfig -a | ip a |
ifconfig enp6s0 down | ip link set enp6s0 down |
ifconfig enp6s0 up | ip link set enp6s0 up |
ifconfig enp6s0 192.168.2.24 | ip addr add 192.168.2.24/24 dev enp6s0 |
ifconfig enp6s0 netmask 255.255.255.0 | ip addr add 192.168.1.1/24 dev enp6s0 |
ifconfig enp6s0 mtu 9000 | ip link set enp6s0 mtu 9000 |
ifconfig enp6s0:0 192.168.2.25 | ip addr add 192.168.2.25/24 dev enp6s0 |
netstat | ss |
netstat -tulpn | ss -tulpn |
netstat -neopa | ss -neopa |
netstat -g | ip maddr |
route | ip r |
route add -net 192.168.2.0 netmask 255.255.255.0 dev enp6s0 | ip route add 192.168.2.0/24 dev enp6s0 |
route add default gw 192.168.2.254 | ip route add default via 192.168.2.254 |
arp -a | ip neigh |
arp -v | ip -s neigh |
arp -s 192.168.2.33 1:2:3:4:5:6 | ip neigh add 192.168.3.33 lladdr 1:2:3:4:5:6 dev enp6s0 |
arp -i enp6s0 -d 192.168.2.254 | ip neigh del 192.168.2.254 dev wlp7s0 |