如何在启动时按特定顺序启动网络接口和网桥

如何在启动时按特定顺序启动网络接口和网桥

目前,我的设置有许多节点,每个节点都安装了 RHEL 7,每个节点只有一个接口。 我在用ovs 桥和一个VLAN 标记接口在主机内。我使用带 vlan 标记的虚拟接口来处理带 vlan 标记的流量。我已禁用 NetworkManager。

我的网络配置示例:-

我的 /etc/sysconfig/network-scripts/ifcfg-eth0:-

BOOTPROTO="dhcp"
DEVICE="eth0"
HWADDR="80:34:53:23:12:45"
ONBOOT=yes
PEERDNS=no
DEFROUTE=no
PEERROUTES=no

我的 vlan 标记接口 /etc/sysconfig/network-scripts/ifcfg-eth0.200:-

DEVICE=eth0.200
DEVICETYPE=ovs
TYPE=OVSPort
OVS_BRIDGE=br100
ONBOOT=yes
BOOTPROTO=none
VLAN=yes
NOZEROCONF=yes

我的 openvswitch 桥 /etc/sysconfig/network-scripts/ifcfg-br100 :-

ONBOOT=yes
IPADDR=100.100.100.20
NETMASK=255.255.255.0
GATEWAY=100.100.100.1
DEVICE=br100
DEVICETYPE=ovs
OVSBOOTPROTO=static
TYPE=OVSBridge

现在,主要问题是:-

当我重新启动系统时,它会在启动时尝试启动 br100,然后是 eth0,然后是 eth0.200。网络工作正常只有且仅当接口分别按 eth0、eth0.200 和 br100 的顺序启动。

有什么方法可以在启动时命令启动接口?系统完全启动后,我有点犹豫是否使用脚本重新启动网络,因为有些服务最初会失败,我必须手动启动它们。我不知道如何才能在 br100 之前启动 eth0?任何指示都会很有帮助。

谢谢。

答案1

您的接口似乎配置错​​误。请查看此处(我从以下链接引用了示例设置,并根据您的设置进行了编辑): https://github.com/osrg/openvswitch/blob/master/rhel/README.RHEL

 Example
---------


Standalone bridge:

==> ifcfg-ovsbridge0 <==
DEVICE=br100
ONBOOT=yes
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=A.B.C.D
NETMASK=X.Y.Z.0
HOTPLUG=no

Enable DHCP on the bridge:
* Needs OVSBOOTPROTO instead of BOOTPROTO.
* All the interfaces that can reach the DHCP server
as a space separated list in OVSDHCPINTERFACES.

DEVICE=br100
ONBOOT=yes
DEVICETYPE=ovs
TYPE=OVSBridge
OVSBOOTPROTO="dhcp"
OVSDHCPINTERFACES="eth0"
HOTPLUG=no

Adding physical eth0 to br100 described above:

==> ifcfg-eth0 <==
DEVICE=eth0
ONBOOT=yes
DEVICETYPE=ovs
TYPE=OVSPort
OVS_BRIDGE=br100
BOOTPROTO=none
HOTPLUG=no


Tagged VLAN interface on top of br100:

==> ifcfg-eth0.200 <==
DEVICE=eth0.200
ONBOOT=yes
DEVICETYPE=ovs
TYPE=OVSIntPort
BOOTPROTO=static
IPADDR=A.B.C.D
NETMASK=X.Y.Z.0
OVS_BRIDGE=br100
OVS_OPTIONS="tag=200"
OVS_EXTRA="set Interface $DEVICE external-ids:iface-id=$(hostname -s)-$DEVICE-vif"
HOTPLUG=no

相关内容