ip link 是 linux 中用于管理和显示网络接口信息的工具,支持查看接口状态、修改 mtu、mac 地址及创建虚拟接口。1. 使用 ip link 可列出所有接口及其状态;2. 通过 ip link show eth0 查看特定接口详情;3. 使用 ip link set eth0 down/up 控制接口启停;4. 可设置 mtu 和 mac 地址;5. 支持创建 vlan 和 bridge 虚拟接口;6. 相比 ifconfig,ip link 更强大且持续维护,推荐使用。
想要深入了解linux网络接口的配置?ip link 命令绝对是你的得力助手。它不仅能告诉你接口是否启动,还能揭示更多隐藏的细节。
解决方案
ip link 命令是 iproute2 工具包的一部分,用于管理和显示网络接口的信息。它比传统的 ifconfig 命令更加强大和灵活。
基本用法:
最简单的用法就是直接输入 ip link,它会列出所有网络接口,包括物理接口和虚拟接口。
ip link
输出类似:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode default group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether aa:bb:cc:dd:ee:ff brd ff:ff:ff:ff:ff:ff 3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 link/ether 11:22:33:44:55:66 brd ff:ff:ff:ff:ff:ff
每一行代表一个接口,lo 是回环接口,eth0 和 wlan0 是以太网和无线网接口。 中的内容是接口的标志,例如 UP 表示接口已启动。
查看特定接口:
要查看特定接口的详细信息,可以加上接口名。
ip link show eth0
输出会包含更多信息,例如 MTU (最大传输单元)、Qdisc (排队规则)、状态、MAC 地址等。
修改接口状态:
ip link 还可以用来启动或停止接口。
ip link set eth0 down # 停止 eth0 接口 ip link set eth0 up # 启动 eth0 接口
修改 MTU:
MTU 是一个重要的参数,影响网络传输效率。
ip link set eth0 mtu 1400
注意,修改 MTU 可能需要重启网络服务才能生效。
修改 MAC 地址:
虽然不常用,但 ip link 也可以修改 MAC 地址。
ip link set eth0 address 00:11:22:33:44:55
修改 MAC 地址通常用于测试或解决某些网络问题。
如何理解 ip link 输出中的各个字段?
ip link 的输出包含了大量信息,理解这些字段对于网络管理至关重要。
- link/ether 或 link/loopback: 表示链路层类型,ether 是以太网,loopback 是回环接口。后面跟着 MAC 地址。
- mtu: 最大传输单元,表示接口一次能传输的最大数据包大小。
- qdisc: 排队规则,用于控制数据包的发送顺序和速率。
- state: 接口状态,UP 表示已启动,DOWN 表示已停止。
- mode: 接口模式,DEFAULT 是默认模式。
- group: 接口所属的组。
- qlen: 传输队列长度。
如何使用 ip link 创建虚拟网络接口?
ip link 不仅可以管理物理接口,还可以创建虚拟网络接口,例如 VLAN、bridge 等。
创建 VLAN:
ip link add link eth0 name eth0.10 type vlan id 10
这条命令会在 eth0 接口上创建一个 VLAN 接口 eth0.10,VLAN ID 为 10。
创建 Bridge:
ip link add name br0 type bridge
这条命令会创建一个名为 br0 的 bridge 接口。然后,你可以将物理接口添加到 bridge 中。
ip link set eth0 master br0 ip link set eth1 master br0
最后,你需要为 bridge 接口配置 IP 地址。
ip link 和 ifconfig 的区别是什么?为什么推荐使用 ip link?
ifconfig 是传统的网络配置工具,但它已经被 iproute2 工具包取代。ip link 是 iproute2 的一部分,功能更强大,更灵活。
- ifconfig 只能配置基本的 IP 地址、掩码、广播地址等,而 ip link 可以配置更多的链路层参数,例如 MTU、MAC 地址、VLAN 等。
- ifconfig 已经停止维护,而 iproute2 还在积极开发中。
- ip link 的语法更加简洁和一致。
总而言之,ip link 是一个现代化的网络管理工具,强烈推荐使用。虽然刚开始可能需要一些学习成本,但一旦掌握,你会发现它比 ifconfig 更加高效和强大。