ip - 显示/操作路由、网络设备、接口和隧道
概要
ip [ 选项 ] 对象 { 命令 | 帮助 }
ip [ -force ] -batch 文件名
对象 := { 地址 | addrlabel | fou | 帮助 | ila | ioam | l2tp | 链接 | macsec | maddress |
监控 | mptcp | mroute | mrule | 邻居 | neighbour | netconf | netns | nexthop |
ntable | ntbl | 路由 | 规则 | sr | 标签 | tcpmetrics | 令牌 | 隧道 | tuntap | vrf |
xfrm }
选项 := { -V[版本] | -h[人类可读] | -s[统计] | -d[详细] | -r[解析] | -iec |
-f[家族] { inet | inet6 | 链接 } | -4 | -6 | -B | -0 | -l[循环] { 最大地址清除尝试次数 } | -o[单行] | -rc[vbuf] [大小] | -t[时间戳] | -ts[短时间戳] | -n[网络命名空间] 名称 |
-N[数字] | -a[全部] | -c[颜色] | -br[简短] | -j[json] | -p[漂亮] }
选项
-V, -版本
打印 ip 实用程序的版本并退出。
-h, -人类可读, -human-readable
以人类可读的格式输出统计信息,后跟后缀。
-b, -批处理 <文件名>
从提供的文件或标准输入读取命令并执行它们。第一次失败将导致 ip 终止。
-force
在批处理模式下,即使出现错误也不要终止 ip。如果在执行命令期间出现任何错误,则应用程序的返回代码将为非零。
-s, -统计, -statistics
输出更多信息。如果该选项出现两次或多次,则信息的数量将增加。通常,这些信息是统计信息或一些时间值。
-d, -详细
输出更多详细信息。
-l, -循环 <计数>
指定“ip 地址清除”逻辑在放弃之前将尝试的最大循环次数。默认值为 10。零 (0) 表示循环,直到删除所有地址。
-f, -家族 <家族>
指定要使用的协议族。协议族标识符可以是 inet、inet6、bridge、mpls 或 link。如果未指定此选项,则协议族将从其他参数中推断。如果命令行中的其余部分没有提供足够的信息来推断家族,则 ip 将回退到默认值,通常为 inet 或 any。link 是一个特殊的家族标识符,表示不涉及任何网络协议。
-4
-family inet 的快捷方式。
-6
-family inet6 的快捷方式。
-B
-family bridge 的快捷方式。
-M
-family mpls 的快捷方式。
-0
-family link 的快捷方式。
-o, -单行
将每个记录输出到单行,用“\”字符替换换行符。这在使用 [wc]({filename}../../wc)(1) 或 [grep]({filename}../../grep)(1) 对输出进行计数或搜索时非常有用。
-r, -解析
使用系统的名称解析器打印 DNS 名称而不是主机地址。
-n, -netns <NETNS>
将操作切换到指定的网络命名空间 NETNS。实际上,它只是简化了以下命令的执行:
ip netns exec NETNS ip [ 选项 ] 对象 { 命令 | 帮助 }
为:
ip -n[etns] NETNS [ 选项 ] 对象 { 命令 | 帮助 }
-N, -Numeric
直接打印协议、作用域、dsfield 等的数值,而不是转换为人类可读的名称。
-a, -all
对所有对象执行指定的命令,这取决于该命令是否支持此选项。
-c[color][={always|auto|never}]
配置彩色输出。如果省略参数或为 always,则无论 stdout 状态如何,都启用彩色输出。如果参数为 auto,则在启用彩色输出之前,会检查 stdout 是否为终端。如果参数为 never,则禁用彩色输出。如果多次指定,则最后一次生效。如果同时指定了 -json,则忽略此标志。
可以使用 COLORFGBG 环境变量来影响使用的颜色调色板(请参阅环境变量)。
-t, -timestamp
在使用 monitor 选项时,显示当前时间。
-ts, -tshort
类似于 -timestamp,但使用较短的格式。
-rc, -rcvbuf<SIZE>
设置 netlink 套接字的接收缓冲区大小,默认为 1MB。
-iec 以 IEC 单元打印人类可读的速率(例如,1Ki = 1024)。
-br, -brief
以表格格式打印基本信息,以提高可读性。此选项当前仅受 ip addr show、ip link show 和 ip neigh show 命令的支持。
-j, -json
以 JavaScript 对象表示法 (JSON) 格式输出结果。
-p, -pretty
默认的 JSON 格式紧凑且更易于解析,但对于大多数用户来说,它很难阅读。此标志添加缩进以提高可读性。
-echo 请求内核发送应用的配置。
IP - 命令语法
对象
address
- 设备上的协议(IP 或 IPv6)地址。
addrlabel
- 协议地址选择的标签配置。
fou - Foo-over-UDP 接收端口配置。
ila - 管理标识符定位器地址 (ILA)。
ioam - 管理 IOAM 命名空间和 IOAM 模式。
l2tp - 通过 IP 隧道传输以太网 (L2TPv3)。
link - 网络设备。
macsec - MACsec 设备配置。
maddress
- 多播地址。
monitor
- 监视 netlink 消息。
mptcp - 管理 MPTCP 路径管理器。
mroute - 多播路由缓存条目。
mrule - 多播路由策略数据库中的规则。
neighbour
- 管理 ARP 或 NDISC 缓存条目。
netconf
- 网络配置监控。
netns - 管理网络命名空间。
nexthop
- 管理下一跳对象。
ntable - 管理邻居缓存的操作。
route - 路由表条目。
rule - 路由策略数据库中的规则。
sr - 管理 IPv6 报头段路由。
stats - 管理和显示接口统计信息。
tcp_metrics/tcpmetrics
- 管理 TCP 指标。
token - 管理标记化的接口标识符。
tunnel - 通过 IP 隧道。
tuntap - 管理 TUN/TAP 设备。
vrf - 管理虚拟路由和转发设备。
xfrm - 管理 IPSec 策略。
所有对象的名称都可以写成完整形式或缩写形式,例如,address 可以缩写为 addr 或 a。
命令
指定要对对象执行的操作。 可用的操作集取决于对象类型。 通常,可以添加、删除和显示(或列出)对象,但某些对象不允许所有这些操作,或者具有一些其他命令。 所有对象都可用帮助命令。 它会打印出可用命令列表和参数语法约定。
如果没有给出命令,则假定为默认命令。 通常是列表,或者如果该类对象无法列出,则为帮助。
环境
COLORFGBG
如果设置,则其值用于检测背景是深色还是浅色,并使用对比色。
COLORFGBG 环境变量通常包含两个或三个值,用分号分隔;我们想要最后一个值。 如果此值为 0-6 或 8,则选择适合深色背景的颜色:
COLORFGBG=\";0\" ip -c a
退出状态
如果命令成功,退出状态为 0;如果存在语法错误,则为 1。 如果内核报告了错误,则退出状态为 2。
示例
ip addr
显示分配给所有网络接口的地址。
ip neigh
显示内核中的当前邻居表。
ip link set x up
激活接口 x。
ip link set x down
停用接口 x。
ip route
显示路由表。
历史
ip 由 Alexey N. Kuznetsov 编写,并添加到 Linux 2.2 中。
参见
ip-address(8), ip-addrlabel(8), ip-fou(8), ip-ioam(8), ip-l2tp(8), ip-link(8), ip-macsec(8), ipmaddress(8), ip-monitor(8), ip-mptcp(8), ip-mroute(8), ip-neighbour(8), ip-netconf(8), ipnetns(8), ip-nexthop(8), ip-ntable(8), ip-route(8), ip-rule(8), ip-sr(8), ip-stats(8), iptcp_metrics(8), ip-token(8), ip-tunnel(8), ip-vrf(8), ip-xfrm(8) IP 命令参考 ip-cref.ps
报告错误
将任何错误报告到网络开发者邮件列表 <__>,主要在该列表中进行开发和维护。 您无需订阅该列表即可发送消息。
作者
原始手册页由 Michail Litvak <__> 编写。