溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

CentOS/RHEL系統(tǒng)中如何使用帶VLAN標記的以太網(wǎng)卡

發(fā)布時間:2022-01-25 09:13:03 來源:億速云 閱讀:120 作者:小新 欄目:開發(fā)技術(shù)

這篇文章給大家分享的是有關(guān)CentOS/RHEL系統(tǒng)中如何使用帶VLAN標記的以太網(wǎng)卡的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

有時會因為工作需要使用 VLAN 標記接口將Linux服務(wù)器的一塊網(wǎng)卡分配來自不同VLAN 的多個 IP。但是前提是必須要保證交換機的端口上連接了多個 VLAN。

假設(shè)我們有一個 Linux 服務(wù)器,我們在這里有兩張以太網(wǎng)卡(enp0s3和enp0s8),第一張網(wǎng)卡(enp0s3)會用于數(shù)據(jù)傳輸,而第二張網(wǎng)卡(enp0s8) 會用于控制/流量管理。我會使用多個 VLAN 用于數(shù)據(jù)傳輸(或在數(shù)據(jù)流量網(wǎng)卡上從不同的 VLAN 中分配多個 IP)。

我假設(shè)連接到我服務(wù)器的數(shù)據(jù)網(wǎng)卡的端口,是通過映射多個 VLAN 來配置為聚合端口。

下面是映射到數(shù)據(jù)傳輸網(wǎng)卡(NIC)的 VLAN:

  • VLAN ID (200), VLAN N/W = 172.168.10.0/24

  • VLAN ID (300), VLAN N/W = 172.168.20.0/24

要在 CentOS 7 / RHEL 7 / CentOS 8 / RHEL 8 系統(tǒng)中使用 VLAN 標記接口,必須加載內(nèi)核模塊8021q。

加載內(nèi)核模塊8021q可以使用下面的命令:

1
2
3
4
5
6
7
[root@linuxtechi ~]# lsmod | grep -i 8021q
[root@linuxtechi ~]# modprobe --first-time 8021q
[root@linuxtechi ~]# lsmod | grep -i 8021q
8021q 29022 0
garp 14384 1 8021q
mrp 18542 1 8021q
[root@linuxtechi ~]#

可以使用modinfo命令顯示內(nèi)核模塊8021q的詳細信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@linuxtechi ~]# modinfo 8021q
filename: /lib/modules/3.10.0-327.el7.x86_64/kernel/net/8021q/8021q.ko
version: 1.8
license: GPL
alias: rtnl-link-vlan
rhelversion: 7.2
srcversion: 2E63BD725D9DC11C7DA6190
depends: mrp,garp
intree: Y
vermagic: 3.10.0-327.el7.x86_64 SMP mod_unload modversions
signer: CentOS Linux kernel signing key
sig_key: 79:AD:88:6A:11:3C:A0:22:35:26:33:6C:0F:82:5B:8A:94:29:6A:B3
sig_hashalgo: sha256
[root@linuxtechi ~]#

現(xiàn)在使用ip 命令給enp0s3網(wǎng)卡標記(或映射)上200和300的 VLAN 。

(LCTT 譯注:這是先給enp0s3網(wǎng)卡映射上200的 VLAN 標簽。)

1
[root@linuxtechi ~]# ip link add link enp0s3 name enp0s3.200 type vlan id 200

使用下面的ip命令打開接口:

1
[root@linuxtechi ~]# ip link set dev enp0s3.200 up

同理給enp0s3網(wǎng)卡映射上300的 VLAN 標簽:

1
2
[root@linuxtechi ~]# ip link add link enp0s3 name enp0s3.300 type vlan id 300
[root@linuxtechi ~]# ip link set dev enp0s3.300 up

現(xiàn)在使用ip命令查看標記后的接口狀態(tài):

CentOS/RHEL系統(tǒng)中如何使用帶VLAN標記的以太網(wǎng)卡

現(xiàn)在我們可以使用下面的ip命令從它們各自的 VLAN 為已經(jīng)標記的接口分配 IP 地址:

1
2
[root@linuxtechi ~]# ip addr add 172.168.10.51/24 dev enp0s3.200
[root@linuxtechi ~]# ip addr add 172.168.20.51/24 dev enp0s3.300

使用下面的ip命令查看是否為已標記的接口分配到 IP:

CentOS/RHEL系統(tǒng)中如何使用帶VLAN標記的以太網(wǎng)卡

重啟之后,上面所有通過ip命令的更改都不會保持(LCTT 譯注:修改后可保存至配置文件或數(shù)據(jù)庫中,如果未進行保存處理,則只有當(dāng)前環(huán)境生效,重啟后配置失效)。系統(tǒng)重啟和網(wǎng)絡(luò)服務(wù)重啟(LCTT 譯注:service network restart,或down和up命令)之后這些標記接口將不可用。

因此,要使標記的接口在重啟后保持不變,需要使用接口的ifcfg文件。

編輯接口(enp0s3)文件/etc/sysconfig/network-scripts/ifcfg-enp0s3,并且增加下面的內(nèi)容:

作者提醒:替換為你環(huán)境中的接口名稱。

1
2
3
4
5
[root@linuxtechi ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE=Ethernet
DEVICE=enp0s3
BOOTPROTO=none
ONBOOT=yes
type="_moz">

保存和退出文件。

為 id 是200的 VLAN 創(chuàng)建接口文件/etc/sysconfig/network-scripts/ifcfg-enp0s3.200,且增加下面的內(nèi)容:

1
2
3
4
5
6
7
8
[root@linuxtechi ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3.200
DEVICE=enp0s3.200
BOOTPROTO=none
ONBOOT=yes
IPADDR=172.168.10.51
PREFIX=24
NETWORK=172.168.10.0
VLAN=yes

保存并退出此文件。

同理為 id 是300的 VLAN 創(chuàng)建接口文件/etc/sysconfig/network-scripts/ifcfg-enp0s3.300,且增加下面的內(nèi)容:

1
2
3
4
5
6
7
8
[root@linuxtechi ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3.300
DEVICE=enp0s3.300
BOOTPROTO=none
ONBOOT=yes
IPADDR=172.168.20.51
PREFIX=24
NETWORK=172.168.20.0
VLAN=yes

保存并退出文件,這時候使用下面的命令重啟網(wǎng)絡(luò)服務(wù)

1
[root@linuxtechi ~]# systemctl restart network

現(xiàn)在使用下面的ip命令檢驗標記的接口是否已配置和啟動,并且正在運行中:

CentOS/RHEL系統(tǒng)中如何使用帶VLAN標記的以太網(wǎng)卡

感謝各位的閱讀!關(guān)于“CentOS/RHEL系統(tǒng)中如何使用帶VLAN標記的以太網(wǎng)卡”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI