跳转到内容
搜索 RunEntLinux 文档

仅搜索 RunEntLinux 通用文档,各发行版文档使用各自的搜索入口。

    浏览当前文档目录

    ip 命令是 iproute2 工具包的核心,是现代 Linux 系统中管理网络接口、IP 地址和路由的标准工具。本文介绍如何在 CentOS / AlmaLinux / Rocky Linux 上使用 ip 命令进行网络配置。

    列出所有网络接口及其 IP 地址
    ip addr show

    简写形式:

    简写方式查看 IP 地址
    ip a
    只查看 ens33 的 IP 信息
    ip addr show dev ens33
    过滤只显示 IPv4 信息
    ip -4 addr show
    过滤只显示 IPv6 信息
    ip -6 addr show
    为 ens33 添加一个临时 IP 地址
    sudo ip addr add 192.168.1.200/24 dev ens33

    一个接口可以绑定多个 IP 地址:

    添加第二个 IP 地址
    sudo ip addr add 192.168.1.201/24 dev ens33
    删除临时添加的 IP 地址
    sudo ip addr del 192.168.1.200/24 dev ens33
    列出所有网络接口的链路状态
    ip link show

    简写:

    简写方式查看链路状态
    ip l
    启用 ens33 接口
    sudo ip link set ens33 up
    禁用 ens33 接口
    sudo ip link set ens33 down
    将 ens33 的 MTU 设为 9000(巨型帧)
    sudo ip link set ens33 mtu 9000
    显示接口的收发包统计
    ip -s link show ens33
    显示当前路由表
    ip route show

    简写:

    简写方式查看路由表
    ip r

    输出示例:

    default via 192.168.1.1 dev ens33 proto dhcp metric 100
    192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.100 metric 100
    • default via 192.168.1.1 — 默认网关
    • 192.168.1.0/24 dev ens33 — 直连网段
    查看访问 8.8.8.8 会走哪条路由
    ip route get 8.8.8.8
    删除当前默认网关
    sudo ip route del default
    添加新的默认网关
    sudo ip route add default via 192.168.1.254 dev ens33
    永久配置默认网关
    sudo nmcli connection modify ens33 ipv4.gateway 192.168.1.1
    sudo nmcli connection up ens33
    添加到 10.10.0.0/16 网段的静态路由
    sudo ip route add 10.10.0.0/16 via 192.168.1.254 dev ens33
    添加到特定主机的路由
    sudo ip route add 172.16.5.10/32 via 192.168.1.254
    删除静态路由
    sudo ip route del 10.10.0.0/16

    临时路由重启后会丢失,使用 nmcli 可以持久化:

    为连接添加永久静态路由
    sudo nmcli connection modify ens33 +ipv4.routes "10.10.0.0/16 192.168.1.254"

    添加多条路由:

    添加多条永久静态路由
    sudo nmcli connection modify ens33 \
    +ipv4.routes "10.10.0.0/16 192.168.1.254" \
    +ipv4.routes "172.16.0.0/12 192.168.1.253"

    使配置生效:

    重新激活连接以应用路由
    sudo nmcli connection up ens33
    查看 nmcli 中配置的静态路由
    nmcli connection show ens33 | grep ipv4.routes
    删除某条永久路由
    sudo nmcli connection modify ens33 -ipv4.routes "10.10.0.0/16 192.168.1.254"
    sudo nmcli connection up ens33

    ifconfig 属于 net-tools 包,在新版 EL 系统中已不再默认安装。ip 命令功能更强大,是推荐使用的替代工具。

    用途ifconfig (旧)ip (新)
    查看所有接口ifconfigip addr show
    查看指定接口ifconfig ens33ip addr show dev ens33
    添加 IP 地址ifconfig ens33 192.168.1.100 netmask 255.255.255.0ip addr add 192.168.1.100/24 dev ens33
    启用接口ifconfig ens33 upip link set ens33 up
    禁用接口ifconfig ens33 downip link set ens33 down
    查看路由表route -nip route show
    添加默认网关route add default gw 192.168.1.1ip route add default via 192.168.1.1
    查看接口统计ifconfig ens33ip -s link show ens33

    如果你仍然需要 ifconfig,可以安装 net-tools:

    安装 net-tools 包(提供 ifconfig)
    sudo dnf install net-tools

    以 JSON 格式输出(便于脚本解析)

    Section titled “以 JSON 格式输出(便于脚本解析)”
    以 JSON 格式输出 IP 地址信息
    ip -j addr show ens33

    配合 jq 格式化输出:

    用 jq 美化 JSON 输出
    ip -j addr show ens33 | jq .
    简洁模式显示 IP 地址
    ip -br addr show
    简洁模式显示链路状态
    ip -br link show
    实时监控路由变化
    ip monitor route
    实时监控所有网络事件
    ip monitor all
    显示 ARP 邻居缓存
    ip neighbour show