接口向上和向下?

Luc*_*Luc 3 iproute

$ ip link | grep vboxnet
10: vboxnet0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
Run Code Online (Sandbox Code Playgroud)

在尖括号中,它说UP。尖括号表示什么?

进一步,它声称state DOWN。这似乎与之前的信息相冲突。接口是up还是down?

在手册页、ip-linkip和 中ip-address,我找不到尖括号的含义。

tel*_*coM 9

在尖括号内有接口的标志列表(= 开/关类型属性)。在标志之后,列出了非二进制属性(也称为属性)。

有两个概念你应该知道:

  • 管理状态:您命令网络接口处于的状态(即,活动与否)
  • 操作状态:网络接口实际所处的状态

如果配置网络接口,其管理状态将设置为UP立即,但只有在物理接口成功上电、检测到来自另一端的链路脉冲、自动协商已完成(如果适用)后,操作状态才会改变) 并且接口和驱动程序已完全准备好通过流量。

ip link输出中,UP标志描述了接口的管理状态。有两个相关的标志:LOWER_UP当卡物理上准备好进行通信时添加,NO-CARRIER如果另一端没有信号。这两个标志将被视为操作状态的一部分。

因此,您的vboxnet0接口已被命令启动(= 活动),但目前没有虚拟机连接到该虚拟接口,因此该接口被标记NO-CARRIER并因此在操作上处于关闭状态,至少在某些虚拟机开始使用它之前。

实际内核级标志被称为IFF_UP“接口管理启用”和IFF_RUNNING“接口操作就绪”。以前的ifconfig命令只是直接显示它们(没有IFF_前缀),但是RUNNING没有很容易注意到,所以ip link命令现在有这个逻辑:

 IF (IFF_UP is set) AND (IFF_RUNNING is not set)
 THEN display an extra flag "NO-CARRIER" in the flags field
Run Code Online (Sandbox Code Playgroud)

内核级标志在netdevice(7)手册页中的“描述”下进行了描述?“Iocts”。