标记 VLAN 并将 IP 地址添加到 Linux 服务器

标记 VLAN 并将 IP 地址添加到 Linux 服务器

有人告诉我要标记 VLAN 并向 Linux 服务器添加 IP 地址。它正在使用/etc/sysconfig/network-scripts/

我以前从来没有尝试过这个。

有多个具有不同 IP 子网的 VLAN,一些 VLAN 具有相同的已公布 IP 子网。

物理服务器在端口 2 和 3 有 2 个以太网,并且两个以太网包含相同的 VLAN。

我的方法是ifcfg-eth1.101为 VLAN 101 添加我的第一个 IP 地址,其中包含以下内容:

DEVICE=eth1.101
BOOTPROTO=static
ONBOOT=yes
IPADDR=23.543.11.10
NETMASK=255.255.255.255
USERCTL=no
NETWORK=23.543.11.1
VLAN=yes

...然后ifup eth1.101运行systemctl restart network.service

这是正确的吗?我是否遗漏了什么?

答案1

对于任何不使用的类 RedHat 发行版来说,这看起来是正确的NetworkManager

如果您有两个具有相同 VLAN 的 NIC,您可能需要先将端口绑定在一起(即绑定eth1eth2bond0),然后将 VLAN 挂接到绑定上(即,而不是ifcfg-eth1.101使用DEVICE=eth1.101withifcfg-bond0.101DEVICE=bond0.101

使用绑定时,请务必选择绑定模式,除非您已与网络管理员确认可以使用BONDING_OPTS="mode=active-backup"默认绑定模式(或任何其他绑定模式)。使用托管交换机时,可能会导致交换机和/或路由器中出现“MAC 地址抖动”警告,这可能会让网络管理员感到烦恼。如果交换机上启用了 MAC 地址劫持保护,则使用可能看起来像是劫持尝试并导致误报。balance-rrbalance-rrbalance-rr

如果您需要在 VLAN 上设置多个 IP 地址,则额外 IP 的语法ifcfg-bond0.101为(对于绑定接口)“主接口”的文件名、ifcfg-bond0.101:0第一个额外 IP 地址的文件名,依此类推。句号后的数字是 VLAN 编号,冒号后的数字是额外 IP 的索引号。

该文件的内容ifcfg-bond0.101:0应与仅配置一个 IP 地址时类似:

DEVICE=eth0.101:0
BOOTPROTO=static
IPADDR=xx.xx.xx.xx
NETMASK=255.255.255.0
ONBOOT=yes
VLAN=yes

请注意,以这种方式在 VLAN 上配置 IP 别名保证仅在 RHEL/CentOS 5 及更高版本上受支持;它可能已在 4.x 发布周期中期添加,但我不确定。

对于旧版本的操作系统,您必须编写自定义脚本来手动初始化 IP 别名ifconfig,因为initscripts4.x 中的软件包最初没有处理这种组合的能力。

相关内容