ip 概述
`ip` 命令是 `iproute2` 包的一部分,提供了一个综合的接口来控制网络堆栈的多个方面。这对网络管理员配置系统的网络和故障排除至关重要。
ip 的主要角色
`ip` 命令主要用于以下目的:
主要应用领域
- 网络接口管理: 检查网络适配器状态,分配 IP 地址,启用/禁用等。
- 路由表管理: 设置和检查数据包到达目的地的路径。
- ARP 缓存管理: 检查 IP 地址与 MAC 地址之间的映射信息。
- 网络设备统计: 检查按接口接收/发送的数据包和错误统计。
- 多路径和策略路由: 配置高级网络设置。
`ip` 与 `ifconfig`
`ifconfig` 是一个过时的命令,现代 Linux 发行版推荐使用 `ip`。`ip` 更好地支持包括 IPv6 在内的最新网络功能,并提供更一致和可扩展的语法。
主要 ip 命令选项
`ip` 命令以 `ip [OPTIONS] OBJECT { COMMAND | help }` 形式使用,其中 `OBJECT` 表示管理的网络资源(例如:`link`,`addr`,`route`,`neigh`),`COMMAND` 定义对该资源的操作。
1. 网络接口 (ip link / ip addr)
2. 路由表 (ip route)
3. ARP 缓存 (ip neigh)
生成的命令:
请尝试组合命令。
描述:
`ip` 执行命令。
通过组合这些选项,您可以与 AI 一起虚拟地执行命令。
使用示例
通过 `ip` 命令的各种使用示例,学习如何有效管理网络接口、IP 地址、路由表等,并解决问题。
查看所有网络接口的 IP 地址
ip addr show
显示系统中连接的所有网络接口的 IP 地址(IPv4,IPv6)、广播地址、MAC 地址等详细信息。
启用特定接口 (eth0)
sudo ip link set dev eth0 up
启用名为 `eth0` 的网络接口,使其能够进行通信。
为接口添加 IP 地址
sudo ip addr add 192.168.1.10/24 dev eth0
为 `eth0` 接口分配 `192.168.1.10/24` 的 IP 地址。
查看当前路由表
ip route show
显示操作系统用于决定数据包发送位置的路由规则。包括默认网关信息。
设置默认网关
sudo ip route add default via 192.168.1.1
将默认网关设置为 `192.168.1.1`,确保所有流向本地网络外部的流量都通过该网关。
查看 ARP 缓存条目
ip neigh show
检查系统最近通信过的 IP 地址及其对应的 MAC 地址映射信息。