启动 vlan 接口时出现设备 vlanVID 似乎不存在错误

启动 vlan 接口时出现设备 vlanVID 似乎不存在错误

编辑#2:我想我找到了问题的原因:在 /proc/net/vlan/config 中,有一个旧的 vlan620 条目链接到 bond0(我最初尝试进行绑定),还有一个旧的 vlan620 文件再次绑定到 bond0。既然 /proc 的内容不能像普通文件那样编辑,那么如何删除这些条目呢?

我正在尝试使用 eth0 作为 802.1q 中继接口 - 我的配置如下:

ifcfg-eth0
# Intel Corporation 82571EB Gigabit Ethernet Controller
DEVICE=eth0
#SLAVE=yes
#MASTER=bond0
HWADDR=00:1b:21:ac:ae:d2
ONBOOT=yes
BOOTPROTO=none
TYPE=Ethernet

ifcfg-vlan620
#VLAN620 Config
VLAN=yes
VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD
DEVICE=vlan620
PHYSDEV=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=172.16.37.7
NETMASK=255.255.255.224
GATEWAY=172.16.37.1

ifcfg-vlan621
#VLAN621 Configuration
VLAN=yes
VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD
DEVICE=vlan621
PHYSDEV=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=172.16.37.39
NETMASK=255.255.255.224
GATEWAY=172.16.37.33

然后我执行“ifup eth0”,然后执行“ifup vlan620”。当我尝试启动 vlan620 时,出现以下错误:

Device vlan620 does not seem to be present, delaying initialization.

但是 vlan621 可以正常启动并可用于访问网络。

当两个接口都处于关闭状态(ifdown vlan620 和 ifdown vlan621)时,我检查系统中是否存在名为 vlan620 和 vlan621 的文件。

find / -name vlan620
/proc/net/vlan/vlan620

即使接口已关闭,/proc/net 下仍存在一个文件。文件内容

eth1  VID: 620   REORDER_HDR: 1  dev->priv_flags: 81
         total frames received         1379
          total bytes received        69170
      Broadcast/Multicast Rcvd          610

      total frames transmitted           83
       total bytes transmitted        17564
            total headroom inc            0
           total encap on xmit            0
Device: bond0
INGRESS priority mappings: 0:0  1:0  2:0  3:0  4:0  5:0  6:0 7:0
EGRESSS priority Mappings:

对 vlan621 进行同样的查找,没有返回任何结果,界面运行正常。操作系统是 RHEL5.5 32 位。有人能提出解决方案或原因吗?重新启动系统并不能解决问题。

注意:bond0 条目在相关位置被注释掉 - 我正在尝试在主动备份模式下通过 eth0 和 eth1 引入绑定,但现在 vlan 不起作用,所以我试图一次解决一个问题。

答案1

尝试使用虚拟配置删除接口:

vconfig rem vlan620

Linux Journal 上有一篇很好的文章讨论Linux 中的 VLAN 支持这可能会有帮助。

相关内容