命令ip a 输出详解

· 2456 words · 5 minute read
lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

       valid_lft forever preferred_lft forever

    inet6 ::1/128 scope host

       valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000

    link/ether 00:15:5d:b6:90:03 brd ff:ff:ff:ff:ff:ff

    inet 192.168.1.35/24 brd 192.168.1.255 scope global dynamic eth0

       valid_lft 41555sec preferred_lft 41555sec

    inet6 fde9:4266:4a5d:0:215:5dff:feb6:9003/64 scope global dynamic mngtmpaddr

       valid_lft forever preferred_lft forever

    inet6 fe80::215:5dff:feb6:9003/64 scope link

       valid_lft forever preferred_lft forever

3: vcard: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000

    link/ether aa:6c:f6:3d:0b:2e brd ff:ff:ff:ff:ff:ff

    inet 192.168.1.160/24 brd 192.168.1.255 scope global dynamic vcard

       valid_lft 43014sec preferred_lft 43014sec

这是ip命令的输出结果,它显示了计算机的网络接口信息。下面是每个接口的解释:

lo是loopback接口。它是计算机的本地回环接口,用于发送和接收本地数据包。它有一个IP地址127.0.0.1,它是一个特殊的IP地址,表示本地主机。IP地址的前8位是网络地址,后24位是主机地址,因此127.0.0.1/8表示网络地址为127.0.0.0,子网掩码为255.0.0.0。

eth0是网络接口。它是计算机上的一块网卡,用于连接本地网络。它有一个IP地址192.168.1.35,子网掩码为255.255.255.0,表示它属于192.168.1.0/24子网。它还有一个IPv6地址fde9:4266:4a5d:0:215:5dff:feb6:9003/64和一个链路本地IPv6地址fe80::215:5dff:feb6:9003/64。此外,它有一个广播地址192.168.1.255。

vcard是另一个网络接口,但它当前处于关闭状态。它有一个IP地址192.168.1.160,子网掩码为255.255.255.0,表示它属于192.168.1.0/24子网。它还没有IPv6地址。注意,它的状态为DOWN,表示它目前没有启用。

qdisc pfifo_fast 这两个参数是什么意思? 🔗

qdisc是队列规则,用于控制传出数据包的排队和传输方式。pfifo_fast是一种qdisc,它使用了一个简单的优先级队列算法来处理传出数据包。它具有两个队列,一个是高优先级队列,一个是低优先级队列,当高优先级队列中有数据包时,它们将优先发送,而低优先级队列中的数据包则等待。在数据包数量相等的情况下,先到达的数据包将被优先发送。pfifo_fast是Linux内核中最常用的队列规则之一,因为它非常快速且适用于大多数情况。

qlen 1000 是什么意思 🔗

qlen表示队列的长度,指的是网络接口的传出队列的最大长度。在这个输出中,每个网络接口都有一个qlen值,表示其传出队列的最大长度为1000。这意味着当网络接口正在传输数据时,它可以在队列中缓存最多1000个数据包。如果队列已满,则新的数据包将被丢弃。qlen值可以通过修改网络接口的参数来更改,以适应不同的网络流量需求。

<NO-CARRIER,BROADCAST,MULTICAST,UP>  是什么意思 🔗

这里是网络接口的状态信息,表示该接口当前的状态和属性。其中,每个属性之间用逗号分隔。

NO-CARRIER:表示该网络接口当前没有连接到任何物理设备,或者该连接已经断开。例如,当网线未连接到网卡时,该属性会显示为NO-CARRIER。

BROADCAST:表示该网络接口支持广播通信,也就是可以向同一网络中的所有设备广播信息。

MULTICAST:表示该网络接口支持多播通信,也就是可以向同一网络中的一组设备广播信息。

UP:表示该网络接口已经启用并正在工作。

因此,<NO-CARRIER,BROADCAST,MULTICAST,UP> 表示该网络接口当前没有连接到任何物理设备,但支持广播和多播通信,并已启用并正在工作。

valid_lft 41359sec preferred_lft 41359sec 什么意思 🔗

valid_lft和preferred_lft分别表示IPv6地址的有效期和首选期。

valid_lft:IPv6地址的有效期,也就是这个地址可以使用的时间长度,单位为秒。在这个时间过期后,该地址将被认为不再可用。

preferred_lft:IPv6地址的首选期,也就是这个地址被认为是最好的、优先使用的时间长度,单位为秒。在这个时间过期后,该地址仍然可用,但不再被认为是首选地址。

在这个输出中,inet6行下面的valid_lft和preferred_lft表示该IPv6地址的有效期和首选期,分别为41359秒,即约11小时30分钟。当这两个值都为0时,表示该IPv6地址已经过期或不再可用。

inet 192.168.1.160/24 brd 192.168.1.255 scope global dynamic vcard 什么意思

这是网络接口vcard的IPv4地址信息。

inet 192.168.1.160/24:这表示vcard接口的IPv4地址是192.168.1.160,/24表示子网掩码为255.255.255.0,也就是说,vcard接口所在的网络地址为192.168.1.0,广播地址为192.168.1.255。 🔗

brd 192.168.1.255:这表示vcard接口的IPv4广播地址是192.168.1.255,也就是在该网络中向所有设备广播信息的地址。

scope global:这表示vcard接口的IPv4地址是全局可见的,也就是在整个网络中都可以被访问。

dynamic:这表示vcard接口的IPv4地址是通过动态获取方式获得的,例如DHCP协议等。

综上所述,inet 192.168.1.160/24 brd 192.168.1.255 scope global dynamic vcard表示vcard接口的IPv4地址为192.168.1.160,子网掩码为255.255.255.0,广播地址为192.168.1.255,是全局可见的动态获取的IPv4地址。

state DOWN 什么意思? 🔗

state DOWN表示网络接口当前处于禁用状态,也就是说,该接口当前没有启用网络连接。具体而言,这个状态通常是由于一些因素导致网络接口无法正常工作,比如缺乏必要的网络配置、硬件故障等等。在这种情况下,该接口无法传输数据包,不能接受和发送网络流量。需要进行相关故障排查和修复,以便将网络接口恢复到正常工作状态。

如果你能够ping通192.168.1.160,那么vcard接口可能并没有处于DOWN状态。在你的初始输出结果中,vcard接口状态为DOWN,但这可能是因为网络接口此时没有启用网络连接,或者该接口没有插上网线等原因。但如果你可以ping通vcard的IP地址,那么说明vcard接口已经启用了网络连接。

可以通过执行ip link set vcard up来启用vcard接口的网络连接。这个命令可以将vcard接口的状态修改为UP,从而使其处于启用状态。