Linux下如何划分VLAN
更新:HHH   时间:2023-1-7


这篇文章主要为大家展示了“Linux下如何划分VLAN”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下如何划分VLAN”这篇文章吧。

VLAN即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。VLAN内的主机间可以直接通信,而VLAN间不能直接通信,从而将广播报文限制在一个VLAN内。

假设我们有一个Linux服务器,其中有两个以太网卡(ens33和ens38),第一个网卡(ens33)用于数据流量,第二个网卡(ens38)用于控制/管理流量。对于数据流,将使用多个vlan(将在数据流网卡上分配来自不同vlan的多个ip)。

假设从交换机连接到服务器数据流量网卡的端口被配置为Trunk,通过映射多个vlan到它。下面是映射到数据流量网卡的vlan:

  • VLAN ID (200),172.168.10.0/24
  • VLAN ID (300),172.168.20.0/24

在CentOS 7 /RHEL 7 / CentOS 8 /RHEL 8系统上使用VLAN标记接口,必须加载内核模块8021q。 使用以下命令加载内核模块“8021q”

# 先列出模块,发现没有8021q模块。[root@localhost ~]# lsmod | grep -i 8021q# 加载模块[root@localhost ~]# modprobe --first-time 8021q[root@localhost ~]# lsmod | grep -i 8021q8021q                  33080  0
garp                   14384  1 8021q
mrp                    18542  1 8021q

使用modinfo命令列出8021q的信息:

[root@localhost ~]# modinfo 8021q

 

现在使用ip命令创建vlan 200和vlan 300到ens33网卡:

# 创建vlan 200和vlan 300[root@localhost ~]# ip link add link ens33 name ens33.200 type vlan id 200[root@localhost ~]# ip link add link ens33 name ens33.300 type vlan id 300

 

发现ens33.200和ens33.300的链路状态为DOWN,下面启用它们。

# 启用vlan 200 和vlan 300[root@localhost ~]# ip link set ens33.200 up[root@localhost ~]# ip link set ens33.300 up

 

下面为两个vlan 分配ip地址:

[root@localhost ~]# ip address add 172.168.10.51/24 dev ens33.200[root@localhost ~]# ip address add 172.168.20.51/24 dev ens33.300

 

可以看到ens33.200和ens33.300已经配置好ip地址了。

但是上面使用ip address添加的VLAN和地址不会永久生效的。重启系统之后都不存在了。我们需要把这些配置保存在配置文件里面。

首先修改ifcfg-ens33的配置文件,其次创建ifcfg-ens33.200和ifcfg-ens33.300配置文件:

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE=Ethernet
BOOTPROTO=none
DEVICE=ens33
ONBOOT=yes

接下来为vlan 200创建配置文件,命名为ifcfg-ens33.200

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33.200DEVICE=ens33.200
BOOTPROTO=none
ONBOOT=yes
IPADDR=172.168.10.51
PREFIX=24
NETWORK=172.168.10.0
VLAN=yes

接下来为vlan 300创建配置文件,命名为ifcfg-ens33.300

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33.300DEVICE=ens33.300
BOOTPROTO=none
ONBOOT=yes
IPADDR=172.168.20.51
PREFIX=24
NETWORK=172.168.20.0
VLAN=yes

编辑完配置文件,重启一下网络服务。

[root@localhost ~]# systemctl restart network

 

可以看到vlan200,300的信息都没有消失。

以上是“Linux下如何划分VLAN”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注天达云行业资讯频道!

返回开发技术教程...