如何在RHEL / CentOS 7/8和Fedora接口上配置802.1q VLAN标记

VLAN标记是一种处理网络端口上多个VLAN的方法。 VLAN标记用于识别哪些数据包穿越网络介质时属于哪个VLAN。在本指南中,我们将在RHEL / CentOS和Fedora系统上的网络接口上配置802.1q VLAN标记。

要创建VLAN,请在另一个称为“父接口”的接口之上创建一个接口。 VLAN接口在通过接口时使用VLAN ID标记数据包,但不标记返回的数据包。

在配置之前,请确保已加载8021q模块。

sudo modprobe --first-time 8021q
modinfo 8021q

在这个例子中 enp6s0 服务器上的接口。

$ ip link  show  dev enp6s0
2: enp6s0:  mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 38:90:a5:14:96:54 brd ff:ff:ff:ff:ff:ff

您可以使用网络管理器命令行工具– 南极 要么执行此操作,要么直接编辑网络配置文件。

手动编辑配置文件

编辑父接口配置文件并进行如下设置:

$ sudo vim /etc/sysconfig/network-scripts/ifcfg-enp6s0
TYPE=Ethernet
NAME=enp6s0
DEVICE=enp6s0
BOOTPROTO=none
ONBOOT=yes

如上所述,我们已经将接口配置为在引导时引导,但是在此我们将不分配任何IP信息。

接下来,配置VLAN接口。配置文件名是父接口的补充 . 字母和VLAN ID号。在我的配置中,VLAN ID为 21,并且父接口为enp6s0,因此配置文件名为:

sudo vim /etc/sysconfig/network-scripts/ifcfg-enp6s0.21

所有网络配置信息均已添加到此文件。

DEVICE=enp6s0.21
BOOTPROTO=none
ONBOOT=yes
IPADDR=172.10.10.11
GATEWAY=172.10.10.1
DNS1=172.10.10.1
DNS2=8.8.8.8
PREFIX=24
VLAN=yes

进行更改后,重新启动网络服务以使更改生效。

sudo systemctl restart network

或者,手动启动界面。

sudo ifdown enp6s0 && sudo ifup enp6s0
sudo ifup enp6s0.21

验证接口IP地址信息。

$ ip ad | grep enp6s0
2: enp6s0:  mtu 1500 qdisc mq state UP group default qlen 1000
49: [email protected]:  mtu 1500 qdisc noqueue state UP group default qlen 1000
    inet 172.10.10.11/24 brd 172.10.10.255 scope global noprefixroute enp6s0.21

使用NMCLI工具

完全可以从命令行界面执行相同的配置。此方法要求NetworkManager服务正在运行。

$ systemctl status NetworkManager

检查当前的网络配置。

$ nmcli con show

在以太网接口上创建802.1Q VLAN接口 enp6s0带VLAN接口 VLAN21 和ID 21发出以下命令:

$ nmcli con add type vlan con-name VLAN21 ifname VLAN21 dev enp6s0 id 21

然后,您可以为VLAN接口分配IP地址。

nmcli connection modify VLAN21 ipv4.addresses 172.10.10.11/24 
ipv4.method manual ipv4.gateway 172.10.10.1 
ipv4.dns 172.10.10.1 +ipv4.dns 8.8.8.8

要显示与上面创建的VLAN相关的所有参数,请发出以下命令:

$ nmcli connection show VLAN21

您已经在RHEL / CentOS或Fedora服务器接口上成功配置了VLAN标记。

类似文章:

将辅助IP地址添加到CentOS / RHEL网络接口

Linux ifconfig和ip使用指南

创建Openstack网络和子网

Sidebar