UNPKG

5.13 kBMarkdownView Raw
1ip
2===
3
4网络配置工具
5
6## 补充说明
7
8**ip命令** 用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。
9
10### 语法
11
12```shell
13ip(选项)(对象)
14Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
15 ip [ -force ] -batch filename
16```
17
18### 对象
19
20```shell
21OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |
22 tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
23 netns | l2tp | macsec | tcp_metrics | token }
24
25-V:显示指令版本信息;
26-s:输出更详细的信息;
27-f:强制使用指定的协议族;
28-4:指定使用的网络层协议是IPv4协议;
29-6:指定使用的网络层协议是IPv6协议;
30-0:输出信息每条记录输出一行,即使内容较多也不换行显示;
31-r:显示主机时,不使用IP地址,而使用主机的域名。
32```
33
34### 选项
35
36```shell
37OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
38 -h[uman-readable] | -iec |
39 -f[amily] { inet | inet6 | ipx | dnet | bridge | link } |
40 -4 | -6 | -I | -D | -B | -0 |
41 -l[oops] { maximum-addr-flush-attempts } |
42 -o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |
43 -rc[vbuf] [size] | -n[etns] name | -a[ll] }
44
45网络对象:指定要管理的网络对象;
46具体操作:对指定的网络对象完成具体操作;
47help:显示网络对象支持的操作命令的帮助信息。
48```
49
50### 实例
51
52```shell
53ip link show # 显示网络接口信息
54ip link set eth0 up # 开启网卡
55ip link set eth0 down # 关闭网卡
56ip link set eth0 promisc on # 开启网卡的混合模式
57ip link set eth0 promisc offi # 关闭网卡的混合模式
58ip link set eth0 txqueuelen 1200 # 设置网卡队列长度
59ip link set eth0 mtu 1400 # 设置网卡最大传输单元
60ip addr show # 显示网卡IP信息
61ip addr add 192.168.0.1/24 dev eth0 # 为eth0网卡添加一个新的IP地址192.168.0.1
62ip addr del 192.168.0.1/24 dev eth0 # 为eth0网卡删除一个IP地址192.168.0.1
63
64ip route show # 显示系统路由
65ip route add default via 192.168.1.254 # 设置系统默认路由
66ip route list # 查看路由信息
67ip route add 192.168.4.0/24 via 192.168.0.254 dev eth0 # 设置192.168.4.0网段的网关为192.168.0.254,数据走eth0接口
68ip route add default via 192.168.0.254 dev eth0 # 设置默认网关为192.168.0.254
69ip route del 192.168.4.0/24 # 删除192.168.4.0网段的网关
70ip route del default # 删除默认路由
71ip route delete 192.168.1.0/24 dev eth0 # 删除路由
72```
73
74**用ip命令显示网络设备的运行状态**
75
76```shell
77[root@localhost ~]# ip link list
781: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
79 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
802: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
81 link/ether 00:16:3e:00:1e:51 brd ff:ff:ff:ff:ff:ff
823: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
83 link/ether 00:16:3e:00:1e:52 brd ff:ff:ff:ff:ff:ff
84```
85
86**显示更加详细的设备信息**
87
88```shell
89[root@localhost ~]# ip -s link list
901: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
91 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
92 RX: bytes packets errors dropped overrun mcast
93 5082831 56145 0 0 0 0
94 TX: bytes packets errors dropped carrier collsns
95 5082831 56145 0 0 0 0
962: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
97 link/ether 00:16:3e:00:1e:51 brd ff:ff:ff:ff:ff:ff
98 RX: bytes packets errors dropped overrun mcast
99 3641655380 62027099 0 0 0 0
100 TX: bytes packets errors dropped carrier collsns
101 6155236 89160 0 0 0 0
1023: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
103 link/ether 00:16:3e:00:1e:52 brd ff:ff:ff:ff:ff:ff
104 RX: bytes packets errors dropped overrun mcast
105 2562136822 488237847 0 0 0 0
106 TX: bytes packets errors dropped carrier collsns
107 3486617396 9691081 0 0 0 0
108```
109
110**显示核心路由表**
111
112```shell
113[root@localhost ~]# ip route list
114112.124.12.0/22 dev eth1 proto kernel scope link src 112.124.15.130
11510.160.0.0/20 dev eth0 proto kernel scope link src 10.160.7.81
116192.168.0.0/16 via 10.160.15.247 dev eth0
117172.16.0.0/12 via 10.160.15.247 dev eth0
11810.0.0.0/8 via 10.160.15.247 dev eth0
119default via 112.124.15.247 dev eth1
120```
121
122**显示邻居表**
123
124```shell
125[root@localhost ~]# ip neigh list
126112.124.15.247 dev eth1 lladdr 00:00:0c:9f:f3:88 REACHABLE
12710.160.15.247 dev eth0 lladdr 00:00:0c:9f:f2:c0 STALE
128```
129
130**获取主机所有网络接口**
131
132```shell
133ip link | grep -E '^[0-9]' | awk -F: '{print $2}'
134```
135
136