1 | ip
|
2 | ===
|
3 |
|
4 | 网络配置工具
|
5 |
|
6 | ## 补充说明
|
7 |
|
8 | **ip命令** 用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。
|
9 |
|
10 | ### 语法
|
11 |
|
12 | ```shell
|
13 | ip(选项)(对象)
|
14 | Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
|
15 | ip [ -force ] -batch filename
|
16 | ```
|
17 |
|
18 | ### 对象
|
19 |
|
20 | ```shell
|
21 | OBJECT := { 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
|
37 | OPTIONS := { -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 | 具体操作:对指定的网络对象完成具体操作;
|
47 | help:显示网络对象支持的操作命令的帮助信息。
|
48 | ```
|
49 |
|
50 | ### 实例
|
51 |
|
52 | ```shell
|
53 | ip link show # 显示网络接口信息
|
54 | ip link set eth0 up # 开启网卡
|
55 | ip link set eth0 down # 关闭网卡
|
56 | ip link set eth0 promisc on # 开启网卡的混合模式
|
57 | ip link set eth0 promisc offi # 关闭网卡的混合模式
|
58 | ip link set eth0 txqueuelen 1200 # 设置网卡队列长度
|
59 | ip link set eth0 mtu 1400 # 设置网卡最大传输单元
|
60 | ip addr show # 显示网卡IP信息
|
61 | ip addr add 192.168.0.1/24 dev eth0 # 为eth0网卡添加一个新的IP地址192.168.0.1
|
62 | ip addr del 192.168.0.1/24 dev eth0 # 为eth0网卡删除一个IP地址192.168.0.1
|
63 |
|
64 | ip route show # 显示系统路由
|
65 | ip route add default via 192.168.1.254 # 设置系统默认路由
|
66 | ip route list # 查看路由信息
|
67 | ip route add 192.168.4.0/24 via 192.168.0.254 dev eth0 # 设置192.168.4.0网段的网关为192.168.0.254,数据走eth0接口
|
68 | ip route add default via 192.168.0.254 dev eth0 # 设置默认网关为192.168.0.254
|
69 | ip route del 192.168.4.0/24 # 删除192.168.4.0网段的网关
|
70 | ip route del default # 删除默认路由
|
71 | ip route delete 192.168.1.0/24 dev eth0 # 删除路由
|
72 | ```
|
73 |
|
74 | **用ip命令显示网络设备的运行状态**
|
75 |
|
76 | ```shell
|
77 | [root@localhost ~]# ip link list
|
78 | 1: 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
|
80 | 2: 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
|
82 | 3: 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
|
90 | 1: 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
|
96 | 2: 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
|
102 | 3: 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
|
114 | 112.124.12.0/22 dev eth1 proto kernel scope link src 112.124.15.130
|
115 | 10.160.0.0/20 dev eth0 proto kernel scope link src 10.160.7.81
|
116 | 192.168.0.0/16 via 10.160.15.247 dev eth0
|
117 | 172.16.0.0/12 via 10.160.15.247 dev eth0
|
118 | 10.0.0.0/8 via 10.160.15.247 dev eth0
|
119 | default via 112.124.15.247 dev eth1
|
120 | ```
|
121 |
|
122 | **显示邻居表**
|
123 |
|
124 | ```shell
|
125 | [root@localhost ~]# ip neigh list
|
126 | 112.124.15.247 dev eth1 lladdr 00:00:0c:9f:f3:88 REACHABLE
|
127 | 10.160.15.247 dev eth0 lladdr 00:00:0c:9f:f2:c0 STALE
|
128 | ```
|
129 |
|
130 | **获取主机所有网络接口**
|
131 |
|
132 | ```shell
|
133 | ip link | grep -E '^[0-9]' | awk -F: '{print $2}'
|
134 | ```
|
135 |
|
136 |
|