centos配置vlan
一. 网上大佬方式(测试未通过)
- 安装依赖包
- 查看核心是否提供VLAN 功能
1 2 3 4 5 6 7 8 9
| dmesg | grep -i 802 [root@c159 network-scripts] [ 0.318021] pci 0000:00:16.5: [15ad:07a0] type 01 class 0x060400 [ 0.398023] pci 0000:00:16.2: bridge window [mem 0xeb100000-0xeb1fffff 64bit pref] [ 1.120802] Key type trusted registered [12888.091996] 8021q: 802.1Q VLAN Support v1.8 [12888.092019] 8021q: adding VLAN 0 to HW filter on device ens192 [12888.092511] 8021q: adding VLAN 0 to HW filter on device ens224
|
- 查看
/proc/net/vlan
目录是否存在,如果不存在,使用modprobe
模命令进入802.1q.o
,且使用lsmod
命令模是否已入核心
1 2 3 4 5 6
| modprobe 8021q [root@c159 network-scripts] 8021q 33159 0 garp 14384 1 8021q mrp 18542 1 8021q
|
- 使用vconfig命令增加子接口:
- 利用
ls /proc/net/vlan
查看
1 2
| [root@c159 network-scripts] config ens224.60 ens224.20 ens224.30
|
如没有vconfig包则修改配置文件即可(见六以下步骤)
- 修改网卡配置:
ifcfg-ens224配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| cd /etc/sysconfig/network-scripts/ cp ifcfg-ens224 ifcfg-ens224.60 vim ifcfg-ens224 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none //此项dhcp对vlan端口无影响,如不放心,可改成static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens224 DEVICE=ens224 ONBOOT=no //此项yes或no,对vlan端口无影响
|
对应vlan的配置文件中UUID一定要删掉,不然会出现不可知的问题
ifcfg-ens224.60配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| vim ifcfg-ens224.60 TYPE=vlan //TYPE类型 PHYSDEV=ens224 //vlan端口对应物理硬件名称 VLAN_ID=60 //VLAN ID PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens224.60 DEVICE=ens224.60 ONBOOT=yes VLAN=yes //设置允许vlan IPADDR=10.0.0.80 NETMASK=255.255.255.0
|
二. 直接在主网卡修改配置文件方式(推荐)
vlan内网10.0.1.段地址vlan id | vlan60 | vlan60 |
---|
机器名称 | centos1 | centos2 |
vlan内网地址
| 10.0.1.60 | 10.0.1.61 |
外网地址 | 10.0.0.10 | 10.0.0.128
|
本次环境使用 vmware 模拟
一台centos7 一台centos8
GATEWAY
此参数根据情况考虑是否添加
如:双网卡不同IP情况 只允许有一个默认网关 如果另一张网卡需要配置外网IP 那么只允许规定外网IP的网卡配置外网网关
VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD
是网络配置文件中的一个选项,它指定了 VLAN 标签的格式。
VLAN_PLUS_VID_NO_PAD
表示 VLAN 标签以 “VLAN” 开头,后跟 VLAN ID,例如 “VLAN80”。NO_PAD
表示 VLAN ID 不会在前面填充零。例如,VLAN ID 80 表示为 “VLAN80” 而不是 “VLAN080”。
因此,VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD
的意思是,使用 “VLAN” 加上 VLAN ID 的格式,并且不在 VLAN ID 前面填充零。
网卡配置其实只需要在下方添加此配置即可
1 2 3 4 5 6 7 8 9
| IPADDR=10.0.1.61 PREFIX=24 GATEWAY=10.0.1.220 DNS1=114.114.114.114 DNS2=8.8.8.8 DNS3=223.5.5.5 VLAN=yes VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD VLAN_ID=80
|
centos8修改网卡配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=eui64 NAME=ens224 DEVICE=ens224 ONBOOT=yes IPADDR=10.0.1.61 PREFIX=24 GATEWAY=10.0.1.220 DNS1=114.114.114.114 DNS2=8.8.8.8 DNS3=223.5.5.5 VLAN=yes VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD VLAN_ID=60
|
centos7配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" DEFROUTE="yes" IPV4_FAILURE_FATAL="yes" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" IPV6_PRIVACY="no" NAME="ens35" DEVICE="ens35" ONBOOT="yes" IPADDR="10.0.1.60" PREFIX="24" GATEWAY="10.0.1.220" DNS1="114.114.114.114" DNS2="8.8.8.8" DNS3="223.5.5.5" VLAN=yes VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD VLAN_ID=60
|
centos8物理服务器实际配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| [test@cloud1 network-scripts]$ cat ifcfg-eno4 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static DEFROUTE=no IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=eui64 NAME=eno4 UUID=7ee10950-b9b8-45dd-995d-074cf1695242 DEVICE=eno4 ONBOOT=yes IPADDR=172.56.20.11 PREFIX=24 VLAN=yes VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD VLAN_ID=20
|
验证:
相互ping看内网是否互通
物理服务器验证
网卡变为绿色
交换机对应服务器的端口灯亮
down掉centos7 ens33网卡 在vmware控制台ping centos8 vlan60网卡ens35 ping 10.0.1.61 (成功)
并且此时ping不通centos7 10.0.0.10 说明内外网隔离环境测试成功
将centos2机器vlan修改为其他段如vlan80后使用此机器 ping centos1 vlan60 10.0.1.60看能否ping通
此时两台机器互相无法ping通
成功!
本文参考:
https://blog.csdn.net/zhongbeida_xue/article/details/95355111