ip 命令是什么
ip 属于 iproute2 工具集,用来查看和临时修改网络接口、地址、路由与邻居表,是 ifconfig、route、netstat 的现代替代品。它直接与内核 netlink 通信,信息比老工具更全。Linux 全发行版都自带,麒麟与 UOS、openEuler 同样如此。要留意的是:用 ip 做的改动只在运行期有效,重启就没了,持久化得写配置文件或 nmcli。
基本信息
| 适用平台 | Linux(iproute2,国产发行版默认自带) |
|---|---|
| 查看地址 | ip -br a 或 ip addr show |
| 查看路由 | ip route show |
| 改接口状态 | ip link set <网卡> up/down |
| 邻居表 | ip neigh |
典型使用场景
- 服务器上架时核对网卡状态、IP、掩码与网关
- 排查不通问题:先看地址与路由,再查上层应用
- 临时加地址做迁移切换,随后再补持久化配置
- ARP 异常排查:看 ip neigh 条目是可达还是失败状态
- 脚本自动化:用 ip -j 输出 JSON 供程序解析
典型用法
典型用法
ip -br a # 精简列出接口与地址
ip route show default # 查看默认网关
ip link set ens33 up # 启用网卡
ip addr add 192.168.1.20/24 dev ens33 # 临时加地址
ip neigh | head # 查看 ARP 邻居表
ip -s link show ens33 | head -8 # 收发计数与错误统计
ip -j a | head -1 # JSON 输出,便于脚本处理输出怎么读
| 输出片段 | 含义 | 异常判断 |
|---|---|---|
| state UP / DOWN | 链路与管理状态 | 起不来时查网线、交换机与驱动 |
| inet 192.168.1.20/24 | IPv4 地址与前缀长度 | 漏写前缀会按单机路由处理 |
| default via 192.168.1.1 | 默认路由 | 缺失则无法访问其他网段 |
| neigh REACHABLE | 邻居可达状态 | FAILED 多为地址冲突或设备离线 |
| errors / dropped | 收发出错统计 | 持续增长要查物理层与驱动 |
持久化路径随发行版不同:NetworkManager 托管的主机用 nmcli con mod,openEuler 与麒麟部分版本仍走 /etc/sysconfig/network-scripts/ 下的 ifcfg 文件,改完用 nmcli con reload 或重启网络服务验证。
子命令速查
| 子命令 | 作用 | 典型写法 |
|---|---|---|
| ip a / addr | 地址管理 | ip addr show dev ens33 |
| ip r / route | 路由表 | ip route add 10.10.0.0/16 via 192.168.1.1 |
| ip l / link | 二层接口 | ip link set ens33 mtu 1500 |
| ip n / neigh | ARP 邻居表 | ip neigh show dev ens33 |
| ip -s | 收发与错误统计 | ip -s link 查看计数变化 |
排查不通的标准顺序是先看接口与地址状态,再看路由与网关,最后用 ping 与端口探测验证连通,避免一上来就重启网络服务反而丢失现场。