学习linux的 ip 命令可以告诉你很多网络连接配置和状态的信息,但是ip a展示出来的一大堆信息让我们有些迷惑,这些配置信息到底是什么意思呢?
让我们深入了解一下,看看所有显示的值都试图告诉你什么。
当使用 ip a(或 ip addr)命令获取系统上所有网络接口的信息时,将看到如下所示的内容:
这个系统上的两个接口 环回(lo)和 普通网口(eth0-eth3)——显示了很多统计数据。
lo 接口显然是 环回地址(loolback)。 我们可以在列表中看到环回 IPv4 地址(127.0.0.1)和环回 IPv6(::1)。
现在让我们看看网口eth0的接口信息:
eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
这个配置串告诉我们:
BROADCAST 该接口支持广播
MULTICAST 该接口支持多播
UP 网络接口已启用
LOWER_UP 网络电缆已插入,设备已连接至网络
当然列出的其他值也告诉了我们很多关于接口的知识,但我们需要知道 brd 和 qlen 这些词代表什么意思。
所以,这里显示的是上面展示的 ip 信息的其余部分的详细解释
- mtu 1500 最大传输单位(数据包大小)为1,500字节
- qdisc pfifo_fast 用于数据包排队
- state UP 网络接口已启用
- group default 接口组
- qlen 1000 传输队列长度
- link/ether 00:1e:4f:c8:43:fc 接口的 MAC(硬件)地址
- brd ff:ff:ff:ff:ff:ff 广播地址
- inet 192.168.0.24/24 IPv4 地址
- brd 192.168.0.255 广播地址
- scope global 全局有效
- dynamic enp0s25 地址是动态分配的
- valid_lft 80866sec IPv4 地址的有效使用期限
- preferred_lft 80866sec IPv4 地址的首选生存期
- inet6 fe80::2c8e:1de0:a862:14fd/64 IPv6 地址
- scope link 仅在此设备上有效
- valid_lft forever IPv6 地址的有效使用期限
- preferred_lft forever IPv6 地址的首选生存期
或许可能已经注意到,ifconfig 命令提供的一些信息未包含在 ip a 命令的输出中 —— 例如传输数据包的统计信息。 如果您想查看发送和接收的数据包数量以及冲突数量的列表,可以使用以下 ip 命令:
ip -s link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 00:50:56:93:25:4a brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
2934544843403 47674045941 0 11147124548 0 0
TX: bytes packets errors dropped carrier collsns
18821745307 230945809 0 0 0 0
看起来好像不太可读,当然为了方便还可以通过ifconfig检查收发包情况:
ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:50:56:93:25:4a
inet addr:10.10.69.34 Bcast:10.10.69.255 Mask:255.255.255.0
inet6 addr: fe80::250:56ff:fe93:254a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:47674048060 errors:0 dropped:11147124548 overruns:0 frame:0
TX packets:230947731 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2934544992846 (2.9 TB) TX bytes:18821901377 (18.8 GB)
另一个 ip 命令提供有关系统路由表的信息。
ip route show
default via 10.10.69.254 dev eth0
10.10.69.0/24 dev eth0 proto kernel scope link src 10.10.69.34
169.254.128.0/30 dev brdummy proto kernel scope link src 169.254.128.1
强大的ip还有其他各种各种的操作和意义,欢迎关注,等我下一篇文章细说。