首页/系统/Linux 运维命令速查/ip 网络配置总入口
网络命令82 条

ip 网络配置总入口

iproute2 套件的主命令,统一替代 ifconfig/route/arp:addr 管地址、link 管网卡、route 管路由、neigh 管邻居表,现代 Linux 网络排查起点。

Linux 运维命令速查系统更新于 2026-10-13

ip 是什么

ip 是 iproute2 套件的主命令,用一套统一语法管理网络配置:addr 管地址、link 管网卡与链路状态、route 管路由表、neigh 管邻居(ARP)表、rule 管策略路由。它取代了 ifconfig、route、arp 这组老工具,原因不只是维护状态——新版工具能表达策略路由、多播、隧道等净图能力,而老工具的输出格式也早已不适合用脚本解析。排查网络问题的第一步通常就是它与 ss 的组合。

基本信息

适用平台Linux(iproute2,主流发行版默认安装);老系统可能需要单独安装 iproute 或 iproute2 包
命令语法ip [选项] 对象 { 命令 | help }
常用对象addr 地址、link 链路、route 路由、neigh 邻居表、rule 策略路由、tunnel 隧道
常用选项-br 简洁输出(brief)、-4/-6 指定协议族、-s 显示统计信息、-c 彩色输出、-o 每行输出一条记录
权限要求查询类命令普通用户可用;add、del、set 等修改类命令需要 root 或 CAP_NET_ADMIN

典型使用场景

  • 快速体检:ip -br addr 与 ip -br link 一屏看完全部接口状态、地址与 MAC
  • 排查路由:ip route get 目标地址 直接给出本机将使用哪条路由与哪个源地址
  • 定位 ARP 问题:ip neigh show 查看邻居表状态,与网关通信异常时常用
  • 确认接口统计:ip -s link 看收发包、错误与丢弃计数
  • 临时调整:临时加地址或改 MTU 用于验证(重启失效)
  • 识别多地址与多网卡:确认服务绑定的是哪个地址,避免 0.0.0.0 与内网地址混淆

常用示例

常用示例
ip addr show                 # 等价 ip a
ip -br addr                  # 简洁模式:接口 + 状态 + 地址
ip -br link                  # 各网卡 UP/DOWN 一眼看全
ip route show
ip route get 8.8.8.8         # 目标地址会走哪条路由、用哪个源地址
ip neigh show                # 邻居表(ARP)
ip -s link show eth0         # 收发包与错误统计
ip addr add 192.168.1.50/24 dev eth0    # 临时加地址(重启失效)
ip link set eth0 mtu 1400              # 临时改 MTU
tracepath 8.8.8.8            # iproute2 自带的路径探测

排查要点对照

对象看什么异常信号
link接口是否 UP、MTU、MAC、收发包计数DOWN 或 errors、dropped 持续增长
addr接口上的 IP 与掩码、是否缺少预期地址地址缺失或掩码写错导致同网段不通
route默认网关、各网段路由、是否有多条同网段路由缺默认路由、网关不可达
route get本机对某个目标实际选用的路由与源地址源地址不是预期网卡,说明选路或绑定有问题
neigh邻居表状态:REACHABLE、STALE、FAILEDFAILED 说明二层解析失败,通常是链路或设备问题
ip route get 是定位「为什么不通」的高效工具:它不需要真的发包,就能给出内核会选用的出口接口、下一跳与源地址。抓包看到源地址与预期不符时,用它可以快速确认是策略路由、掩码还是多网卡选路的问题。
临时配置与永久配置要分开:ip addr add、ip route add 等修改在重启后全部丢失,用于验证假设很合适。需要持久化时应使用发行版的管理方式——RHEL 系用 nmcli 或 network-scripts、Debian/Ubuntu 用 netplan 或 networking 服务,把配置写进对应的配置文件。先临时生效验证假设、确认无误再落盘,是网络变更最稳妥的顺序。
在远程 SSH 会话里修改网络配置是高危操作:ip link set eth0 down、改错掩码或删掉默认路由都可能立刻切断自己的连接。执行前先准备带外访问(控制台或管理网),并用命令的临时生效特性做最小化验证。

常用子命令速查

子命令作用排查用途
ip addr接口与地址确认地址与掩码
ip link接口开关与 MTU确认是否启用与帧长
ip route路由表确认默认网关与明细路由
ip neigh链路层邻居表确认同网段可达性
ip -s link收发统计与错误计数看丢包与错误是否增长
ip route get 目标地址查看实际选路验证源地址与出口
永久化要按发行版分支:NetworkManager 环境用 nmcli 或 nmtui,systemd-networkd 用 .network 单元,旧版 RHEL 系列用 ifcfg 文件,Ubuntu 侧常用 netplan。用 ip 命令改的都是运行时状态,改完必须同步进配置文件,否则重启即回退。

易错点

  • ip 的修改类命令重启后失效,把临时验证当成正式配置会导致下次重启后网络异常
  • 往老脚本里直接替换 ifconfig/route 而不同步改解析逻辑,输出格式与列顺序都变了,取字段会错位
  • 排查不通时只看 addr 不看 route 与 neigh,漏掉路由缺失与二层解析失败这两类常见原因
  • 在 SSH 会话中直接改地址或关接口,稍有不慎就切断连接且无法回退,应优先准备带外通道
  • 多网卡机器上不确认源地址选择,抓包看到出口与预期不一致时应先用 ip route get 验证选路
  • 只验证运行时配置就交付:ip 的修改重启即失效,交付前要在配置文件里落实并安排一次重启或重启网络服务验证结果

数据来源与参考

  • man 8 ip(iproute2 手册)

相关工具

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