22

这两个标志通常设置在一起。它们之间有什么区别?

4

2 回答 2

25

Linux 设备驱动程序 3

IFF_UP 该标志对驱动程序是只读的。当接口处于活动状态并准备好传输数据包时,内核将其打开。

...

IFF_RUNNING

此标志指示接口已启动并正在运行。它主要用于 BSD 兼容性;内核很少使用它。大多数网络驱动程序不必担心 IFF_RUNNING。

再深入一点,似乎有一个显着的区别:

IFF_RUNNING应该反映网络接口上的操作状态,而不是其管理接口。UP举个例子,管理员可能会带来一个以太网接口(例如ifconfig eth0 up),但如果未插入电缆,则它不会被认为是可操作的(即RUNNING根据 RFC2863)。

于 2012-07-27T00:30:01.143 回答
6

要检查以太网电缆是否真的连接到网络您应该检查 IFF_RUNNIG。IFF_UP 表示系统为接口分配了资源。

请在此处找到“ip link show”和“ethtool eth0”如何检查链接的详细代码。

于 2013-04-10T08:23:35.870 回答