首页/网络/协议速查/iproute2 命令速查

iproute2 命令速查

现代 Linux 网络管理统一入口:ip addr/link/route/neigh/rule 覆盖地址、接口、路由、邻居与策略;ifconfig/route 已弃用。

协议速查网络更新于 2026-10-13

iproute2 是现代 Linux 的统一入口

ip 命令把地址、接口、路由、邻居表与策略路由收在一个工具里,取代了 ifconfig、route、arp 这些分属不同软件包的老命令。它的输出结构清晰、支持的特性更全,是现代发行版的默认选择。排障时用 ip 能直接看到策略路由与多地址这类老工具完全看不到的信息,因此不建议再用 ifconfig 判断网络状态。

常用子命令

子命令作用示例
ip addr地址管理ip addr add 10.0.0.5/24 dev eth0
ip link接口状态与 MTUip link set eth0 up mtu 1400
ip route路由表ip route add 10.1.0.0/16 via 10.0.0.1
ip neigh邻居表,相当于 ARP 缓存ip neigh show
ip rule策略路由规则ip rule add from 10.0.0.5 table 100
ip -s link接口收发与错误统计ip -s link show eth0
ip -br 前缀简洁单行视图ip -br addr 与 ip -br link

常用组合

常用组合
ip -br addr                            # 简洁查看所有接口地址
ip -s link show eth0                   # 看收发包量、错误与丢包计数
ip route get 1.1.1.1                   # 查内核实际选用的路由与源地址
ip neigh show dev eth0                 # 看邻居表,排查同网段不通很有用
ip link set eth0 mtu 9000              # 临时改 MTU:重启后丢失,需写入发行版网络配置
ip -4 route add 10.9.0.0/16 via 10.0.0.254 dev eth0   # 临时加路由,同样不持久

ip -s link 输出读法

字段含义异常表现
RX packets接收报文总数与对端发送量对比可判断丢包发生在哪一侧
RX errors 与 dropped接收错误与丢弃计数持续增长说明链路或缓冲区有问题
TX packets发送报文总数结合重传情况判断链路质量
TX errors 与 dropped发送错误与丢弃计数常见于队列溢出或 MTU 不匹配
collisions冲突计数有线网络里出现大量冲突应检查双工与线缆

典型使用场景

  • 临时切换接口地址与 MTU 做连通性验证,确认后再落到配置管理
  • 排查同网段不通,先看邻居表里对端 MAC 是否正常解析
  • 查看内核实际选用的路由与源地址,判断多网卡环境出口是否符合预期
  • 核对接口错误与丢包计数,定位物理链路或缓冲区问题
  • 配合策略路由实现多出口分流,比如按源地址选择出口
ip 命令的所有修改默认都是临时的,重启即失效。要长期生效必须写进发行版的网络配置(netplan、NetworkManager 或 ifcfg 文件),否则会出现「改完测试正常、重启后全部恢复」的假象。
避免用 ifconfig 排障:它看不到次要地址、策略路由与部分接口标志,输出还会把状态显示得与真实情况不一致,容易得出错误结论。

易错点

  • 只用 ip 命令做临时修改而不写入配置,重启后配置全部丢失,故障在下次重启时原样复现
  • 改 MTU 只改一端,两端 MTU 不一致导致大包被丢弃,表现为小请求正常、大请求卡死
  • 看到接口有 dropped 计数就去调内核参数,忽略了物理链路错误与双工不匹配这类更基础的原因
  • 在容器宿主机上直接改接口地址做验证,影响其它容器或系统组件,应先确认变更范围再操作

数据来源与参考

  • iproute2 文档
  • man 8 ip

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌