如何在Linux中配置VLAN標記[逐步指南]
在此詳細的教程中,我們將了解VLAN標籤是什麼,其優點和用例以及如何在Linux操作系統中配置VLAN標記。
在Linux中配置VLAN標記涉及創建虛擬LAN,分配VLAN ID並根據需要配置IP地址。我們將在即將到來的部分中看到如何以三種不同的方式做到這一點。但是在此之前,讓我們了解什麼是VLAN標記,其優勢和模式。
目錄
什麼是VLAN標籤?
虛擬LAN(VLAN)標記是一種網絡技術,可讓您從邏輯上將物理網絡分為多個虛擬網絡或VLAN。
VLAN標籤在數據鏈路層(第2層)的以太網幀中添加了一個特殊的標籤,以識別特定框架所屬的VLAN。此標籤使您能夠隔離網絡流量並提高網絡安全性,效率和可管理性。
用外行的話說這一點,請想像您有一個有很多房間的大房子,您想將房子分為不同的部分出於不同的目的。
例如,您可能有一個客廳供每個人閒逛,一個廚房烹飪,睡覺的臥室和洗澡的浴室。
以類似的方式,VLAN標記就像將大型計算機網絡分為較小,更易於管理的部分。這就像在您的房屋內創建虛擬房間一樣。
每個VLAN都像一個單獨的房間,同一VLAN中的設備可以輕鬆地進行通信,但是不同VLAN的設備無法直接通信。
VLAN標記是一種強大的網絡技術,可以幫助提高網絡安全性,性能和靈活性。從小型企業到大型企業,這是一項廣泛使用的技術。
VLAN標記優勢
你為什麼要這樣做?有幾個原因:
- 網絡分割:VLAN用於從邏輯上將物理網絡分割為較小的孤立網絡。例如,您可以將人力資源部門的流量與銷售部門的流量分開,以提高安全性和可管理性。
- 廣播控制:通過將網絡分為VLAN,每個VLAN中都包含廣播流量,從而降低了整個廣播域的大小和網絡擁塞。
- 服務質量(QoS) :VLAN可通過為每個VLAN分配不同的QoS策略來確定某些類型的流量(例如語音或視頻)的優先級。
- 來賓網絡:在公司環境中,您可以為訪客設備創建一個單獨的VLAN,以將它們與內部網絡隔離開來。
- 隔離:VLAN可用於隔離特定的設備或服務,例如IP攝像機,IoT設備或網絡服務器。
我們在哪裡配置VLAN標記?
以下是現實網絡中如何使用VLAN的一些示例:
- 在學校或大學中,VLAN可以用來將網絡分開,以分離學生,老師和管理人員。這可能有助於保護學生數據並防止未經授權訪問管理系統。
- 在醫院,VLAN可以用來將網絡分開以獲取患者記錄,醫療設備和行政人員。這可能有助於保護患者隱私,並確保關鍵醫療設備不受網絡流量的影響。
- 在公司辦公室中,VLAN可以用來將網絡分開,以分開不同部門的網絡,例如銷售,營銷和金融。這可能有助於提高網絡安全性並防止未經授權訪問敏感數據。
VLAN標籤VS。將多個IP地址分配給一個NIC
VLAN標記與將多個IP地址分配給單個網絡接口並不完全相同。
VLAN標記是將單個網絡分為多個虛擬網絡的一種方式,每個網絡都有自己的廣播域。這是通過在每個以太網框架中添加VLAN標籤來完成的,該標籤標識了框架所屬的VLAN。 VLAN標記是2層技術,這意味著它與以太網協議的水平相同。
另一方面,將多個IP地址分配給單個網絡接口是第3層技術。這是通過使用多個IP地址配置網絡接口來完成的,每個IP地址屬於其他子網。這允許接口與多個網絡上的設備通信。
這兩種技術通常被一起使用以創建安全且靈活的網絡環境。例如,公司可能會使用VLAN將其網絡分為不同的部門,然後將多個IP地址分配給每個網絡接口,以允許設備與多個部門進行通信。
這是一個表,總結了VLAN標記和將多個IP地址分配給單個網絡接口之間的關鍵差異:
完成這些步驟後,應加載VLAN模塊,並用於在Linux系統上配置VLAN。您可以繼續創建VLAN子界面並根據需要配置VLAN標記。
步驟2-編輯NetPlan配置文件
NetPlan配置文件通常位於/etc/netplan/Directory中,並以.YAML擴展名結尾。
您可能已經有一個配置文件。如果沒有,您可以創建一個。使用文本編輯器(例如Nano或vim)編輯配置文件:
$ sudo nano /etc/netplan/01-netcfg.yaml
用自己的配置文件替換01-netcfg.yaml。
步驟3-定義VLAN配置
在NetPlan配置文件中,通過指定其名稱,parent界面(VLAN將與之關聯的物理接口)和VLAN ID來定義VLAN接口。
這是一個示例yaml配置:
網絡: 版本:2 渲染器:NetworkD 以太網: ENS18: DHCP4:不 地址: -192.168.1.40/24 路線: - to:默認 Via:192.168.1.101 名稱服務器: 地址:[8.8.8.8,8.8.4.4] Vlans: VLAN10: ID:10 鏈接:ENS18 地址:[192.168.10.2/24]
在上面的配置文件中,替換與您自己的配置匹配的網絡設置。
- ENS18:替換為物理網絡接口的名稱。
- VLAN10:替換為VLAN的名稱。
- ID:10:用所需的VLAN ID替換。
- 鏈接:ENS18:指定將VLAN關聯的物理接口。
- 地址:為VLAN設置IP地址和子網掩碼。
您還可以定義多個VLAN,如以下配置所示。只需確保您對每個VLAN都使用了一個唯一的名稱和IP地址。
重要的:
NetPlan YAML配置文件中的適當行凹痕對於可讀性和正確性至關重要。 YAML使用空間來表示數據結構,因此一致和清晰的凹痕至關重要。
- 使用空間(不是選項卡)進行凹痕。
- 在整個配置中保持一致的間距。
- 在結腸後離開一個空間,將鍵與值或塊分開。
- 正確的凹痕可增強可讀性,最小化錯誤並使網絡配置文件更易於管理。
步驟4-應用配置
將更改保存到NetPlan配置文件中,然後退出文本編輯器。然後,使用NetPlan命令應用配置:
$ sudo Netplan申請
此命令將應用新的網絡配置,包括VLAN設置。
步驟5-驗證配置
您可以驗證是否已創建了VLAN界面,並使用IP命令正常運行:
$ ip addr show vlan10 $ ip鏈接顯示VLAN10
將“ VLAN10”替換為VLAN接口名稱。這些命令應顯示有關VLAN接口及其IP配置的信息。
就是這樣!您已經使用NetPlan配置了VLAN標記。確保根據需要將配置調整為特定的網絡設置,包括VLAN ID,IP地址和物理接口名稱。
步驟6-刪除VLAN
要刪除VLAN接口,只需刪除NetPlan配置文件中VLAN的相應部分即可。
在更改之前,最好備份Netplan配置文件。這樣,如果出現任何問題,您可以輕鬆地恢復為原始配置。
$ sudo cp /etc/netplan/01-netcfg.yaml /etc/netplan/01-netcfg.yaml.backup
現在,使用文本編輯器打開NetPlan配置文件:
$ sudo nano /etc/netplan/01-netcfg.yaml
找到要刪除的VLAN的部分。這將是VLANS下的小節:看起來像這樣:
Vlans: VLAN10: ID:10 鏈接:ETH0 地址:[192.168.10.2/24]
卸下VLAN的整個部分。保存並關閉文件。
通過運行應用更改:
$ sudo Netplan申請
確保通過檢查網絡接口成功刪除了VLAN:
$ ip a
VLAN接口(例如VLAN10)不再列出。
2。使用NMCLI命令配置VLAN標記
要在Linux系統上使用NMCLI(NetworkManager命令行接口)配置VLAN標記,請按照以下步驟:
步驟1-檢查VLAN模塊是否已加載
要驗證是否在Linux中加載了VLAN模塊(8021Q),您可以使用LSMOD命令,該命令列出了已加載的內核模塊。這是檢查VLAN模塊是否已加載的方法:
打開終端並運行以下命令:
$ LSMOD | GREP 8021Q
如果加載了VLAN模塊,您將看到包括“ 8021Q”的輸出。如果您沒有看到任何輸出,則意味著該模塊未加載。
如果發現未加載VLAN模塊,則可以使用ModProbe命令手動加載它:
$ SUDO MODPROBE 8021Q
運行此命令後,您可以使用LSMOD再次檢查其狀態| GREP 8021Q。如果已加載,您將看到輸出中列出的模塊。
要使在Linux系統上的系統啟動期間持續使VLAN模塊(8021Q)加載,您可以按照以下步驟操作:
確定在系統引導過程中使用哪個配置文件指定用於自動加載的模塊。該文件的位置可以根據您的Linux分發而有所不同。
對於紅帽子/Centos :
該文件通常是/etc/modules-load.d/modules.conf。
對於Ubuntu/Debian :
在/etc/modules-load.d/ Directory中創建一個自定義.conf文件。
使用具有管理特權的文本編輯器(例如Sudo Nano或Sudo VI)打開配置文件。
在配置文件中,添加一個行以指定要在啟動時加載的VLAN模塊(8021Q)。例如:
8021q
添加此條目後保存文件。
應用配置:
編輯配置文件後,您可能需要應用更改。在某些系統上,這是在引導過程中自動完成的。但是,您可以使用SystemCtl命令手動應用更改:
對於紅帽子/Centos :
$ sudo systemctl restart systemd-modules-load
對於Ubuntu/Debian :
$ sudo systemctl restart systemd-modules-load.service
驗證模塊加載:
為了確保在引導處加載VLAN模塊,您可以使用LSMOD命令檢查其狀態,也可以驗證系統日誌中的任何相關消息。
$ LSMOD | GREP 8021Q
如果模塊在輸出中列出,則意味著它在引導過程中成功加載。
通過遵循這些步驟並配置VLAN模塊以持久加載,您可以確保每次啟動系統時都會自動加載模塊,並且您無需手動加載它。
步驟2-檢查NetworkManager服務
確保在系統上安裝並運行NetworkManager。您可以使用以下命令檢查NetworkManager的狀態:
$ systemctl狀態網絡管理員
如果未安裝或運行,您可以使用Distributs的軟件包管理器(例如,在Debian/Ubuntu上的APT或Centos/Rhel上的百勝)安裝並啟動它。
步驟3-標識父界面
確定您將用作VLAN的基礎的物理網絡接口。您可以使用以下命令列出所有可用的網絡接口:
$ NMCLI設備狀態
樣本輸出:
設備類型狀態連接 ENS18以太網連接的有線連接1 LO循環背包 - 不受管理 -
查找您要使用的接口,例如ENS18 。
步驟4-創建VLAN連接
接下來,您創建一個VLAN接口。在此示例中,假設您要在ETH0上創建具有ID 10的VLAN。
$ sudo nmcli con添加類型vlan con-name vlan10 ifname vlan10 dev ens18 ID 10
- con-name vlan10是您給此連接的名稱。
- IFNAME VLAN10是VLAN接口的名稱。
- dev ens18指定父界面。
- ID 10是VLAN ID。
步驟5-將IP配置分配到VLAN接口
現在,將IP地址,網關和DNS分配到VLAN接口。
例如:
$ sudo nmcli連接修改VLAN10 ipv4.addresses 192.168.10.2/24 $ sudo nmcli連接修改VLAN10 ipv4.gateway 192.168.10.1 $ sudo nmcli連接修改VLAN10 ipv4.dns 8.8.8.8 $ sudo nmcli連接修改VLAN10 IPV4
在上述命令中,用自己的網絡設置替換網絡設置。
- 用所需的IP地址和子網替換192.168.10.2/24。
- 用您的網關IP替換192.168.10.1。
- 8.8.8.8是示例DNS服務器(Google的公共DNS)。
步驟6-激活連接
使用以下命令激活VLAN連接:
$ sudo nmcli連接up vlan10
用VLAN連接的名稱替換VLAN10。
步驟7-驗證配置
您可以使用NMCLI驗證配置:
$ NMCLI連接顯示VLAN10
此命令將顯示有關VLAN連接的詳細信息,包括其狀態和配置的屬性。
步驟8-修改/刪除VLAN
您可以使用NMCLI CON修改命令修改設置。刪除VLAN。例如,vlan10,命令將是:
$ sudo nmcli con delete vlan10
就是這樣!您已經在Linux系統上使用NMCLI配置了VLAN標記。確保將配置調整為您的特定網絡設置和需求,包括IP地址,網關和DNS設置。
3。使用Linux中的IP命令配置VLAN標記
步驟1-檢查VLAN模塊是否已加載
為了確保在Linux系統上加載VLAN模塊(802.1Q),您可以按照以下步驟操作:
要檢查是否已經加載了VLAN模塊,您可以使用LSMOD命令,該命令列出了已加載的內核模塊。打開終端並運行:
$ LSMOD | GREP 8021Q
樣本輸出:
8021Q 45056 0 GARP 20480 1 8021Q MRP 20480 1 8021Q
如果您看到包含“ 8021Q”的輸出,則意味著VLAN模塊已被加載。
如果LSMOD命令未顯示802.1Q模塊,則可以使用ModProbe命令手動加載它。打開終端並運行:
$ SUDO MODPROBE 8021Q
此命令將將VLAN模塊加載到內核中。如果您沒有看到任何錯誤消息,則應成功加載該模塊。
為了確保在啟動時自動加載VLAN模塊,您可以將其添加到/etc/模塊文件中,或在/etc/modules-load.d/ directory中創建配置文件。例如,要將其添加到 /etc /模塊中,請運行:
$ ECHO'8021Q'| sudo Tee -A /etc /模塊
這將在系統啟動期間自動加載的模塊列表中添加“ 8021Q”。
步驟2-檢查網絡接口名稱
在配置VLAN標記之前,您應該找到網絡接口的名稱。
您可以使用IP鏈接顯示或IFConfig命令列出可用的網絡接口。通常,這些接口具有ENP0SX或ENSX或ETHX之類的名稱。
$ IP鏈接顯示
樣本輸出:
1:lo:<loopback> mtu 65536 qdisc noqueue狀態未知模式默認組默認組默認qlen 1000 鏈接/循環00:00:00:00:00:00 BRD 00:00:00:00:00:00:00:00 2:<strong><mark> ENS18</mark> : mtu 1500 qdisc fq_codel state up模式默認組默認qlen 1000 Link/Ether 6E:26:0B:8E:33:8C BRD FF:FF:FF:FF:FF:FF:FF:FF:FF AltName ENP0S18</strong></loopback>
正如您在上面的輸出中看到的那樣,有一個名為ENS18的網絡接口。
步驟3-創建VLAN子接口
使用IP命令為您的物理網絡接口創建VLAN子界面。替換為物理接口的名稱(例如,ENS18)和所需的VLAN ID。
$ sudo ip鏈接添加鏈接ENS18名稱VLAN10類型VLAN ID 10
$ sudo ip鏈接添加鏈接ENS18名稱VLAN20類型VLAN ID 20
步驟4-配置IP地址
將IP地址分配給VLAN子界面。
$ sudo ip addr添加192.168.10.2/24 dev vlan10
$ sudo ip addr添加192.168.20.2/24 dev vlan20
步驟5-啟用VLAN接口
$ sudo ip鏈接集dev vlan10 up
$ sudo ip鏈接集開發vlan20 up
同樣,您可以配置與設置所需的VLAN一樣多。
步驟6-驗證VLAN IP地址
使用IP命令驗證VLAN的IP地址是否正確配置。
$ ip a 1:lo:<loopback> mtu 65536 qdisc noqueue狀態未知組默認qlen 1000 鏈接/循環00:00:00:00:00:00 BRD 00:00:00:00:00:00:00:00 INET 127.0.0.1/8示波器主機lo 有效_lft永遠preferred_lft永遠 inet6 :: 1/128範圍主機 有效_lft永遠preferred_lft永遠 2:ens18: mtu 1500 qdisc fq_codel state up組默認qlen 1000 Link/Ether 6E:26:0B:8E:33:8C BRD FF:FF:FF:FF:FF:FF:FF:FF:FF AltName ENP0S18 INET 192.168.1.40/24 BRD 192.168.1.255範圍全球noprefixroute ens18 有效_lft永遠preferred_lft永遠 Inet6 Fe80 :: bfcf:b9d3:60de:af1b/64範圍鏈接noprefixroute 有效_lft永遠preferred_lft永遠 3:<strong><mark> VLAN10@ENS18</mark> : mtu 1500 qdisc noqueue state up up組默認qlen 1000 Link/Ether 6E:26:0B:8E:33:8C BRD FF:FF:FF:FF:FF:FF:FF:FF:FF inet<strong><mark> 192.168.10.2/24</mark> 範圍全球ENS18.10 有效_lft永遠preferred_lft永遠 Inet6 Fe80 :: 6C26:BFF:FE8E:338C/64範圍鏈接 有效_lft永遠preferred_lft永遠 4:<strong><mark> VLAN20@ENS18</mark> : mtu 1500 qdisc noqueue state up up組默認qlen 1000 Link/Ether 6E:26:0B:8E:33:8C BRD FF:FF:FF:FF:FF:FF:FF:FF:FF inet<strong><mark> 192.168.20.2/24</mark> 範圍全球ENS18.20 有效_lft永遠preferred_lft永遠 Inet6 Fe80 :: 6C26:BFF:FE8E:338C/64範圍鏈接 有效_lft永遠preferred_lft永遠</strong></strong></strong></strong></loopback>
如您在上面的輸出中看到的那樣,我創建了兩個VLANS,即VLAN10和VLAN20,IP地址分別為192.168.10.24和192.168.20.24。
您還可以使用IP Addr Show命令僅查看特定的VLAN的IP地址。例如,要顯示VLAN10的IP地址,請運行:
$ ip addr show vlan10 3:vlan10@ens18: mtu 1500 qdisc noqueue state up up組默認qlen qlen 1000 Link/Ether 6E:26:0B:8E:33:8C BRD FF:FF:FF:FF:FF:FF:FF:FF:FF inet<strong><mark> 192.168.10.2/24</mark> BRD 192.168.10.255範圍全球noprefixroute ens18.10 有效_lft永遠preferred_lft永遠 Inet6 Fe80 :: 6C26:BFF:FE8E:338C/64範圍鏈接 有效_lft永遠preferred_lft永遠</strong>
常見問題
這是關於VLAN標籤的常見問題解答(常見問題):
問:什麼是VLAN標記?答:VLAN標記是一種網絡技術,可讓您從邏輯上將物理網絡分為多個虛擬網絡或VLAN。它在以太網框架中添加了特殊標籤,以識別特定框架所屬的VLAN。
問:VLAN標記的目的是什麼?答:VLAN標記可實現多種目的,包括網絡細分,流量隔離,廣播控制,服務質量(QOS)優先級和改進的網絡安全性。
問:VLAN標記如何工作?答:VLAN標籤在數據鏈路層(第2層)處的以太網幀添加了一個4字節標籤,以指示VLAN ID。網絡設備使用此標籤來確定框架所屬的VLAN。
問:我可以將IP地址類(例如,A類和C類)混合在VLAN中嗎?答:是的,您可以從同一VLAN中的不同類中分配IP地址。 VLAN不取決於IP地址類,您可以使用任何IP地址範圍,並帶有適當的子網掩碼。
問:默認情況下,不同VLAN中的設備是否相互通信?答:不,默認情況下,不同VLAN中的設備不會相互通信。 VLAN是彼此隔離的,通信需要路由器或第3層設備才能在它們之間路由流量。
問:如何在Linux中配置VLAN標記?答:要在Linux中配置VLAN標記,您可以使用IP命令或NetPlan等配置文件之類的工具。您將在物理接口,分配VLAN ID和根據需要配置IP地址上創建VLAN子接口。
問:我可以在託管開關上配置VLAN標記嗎?答:是的,大多數託管開關支持VLAN標記。您可以配置VLAN,將端口分配給VLAN,並在託管開關上設置VLAN中繼,以促進VLAN通信。
問:單個接口上的VLAN標記與多個IP地址之間有什麼區別?答:VLAN標記創建具有不同VLAN ID的單獨的虛擬網絡,而單個接口上的多個IP地址涉及在同一網絡或子網中分配多個IP地址。 VLAN標記提供了更好的流量隔離和安全性。
問:如何檢查VLAN模塊是否已加載在Linux系統上?答:您可以使用LSMOD |檢查VLAN模塊是否加載了VLAN模塊。 GREP 8021Q命令。如果在輸出中看到“ 8021q”,則加載模塊;否則,您可能需要手動加載它。
問:如何確保在啟動時自動加載VLAN模塊?答:要確保在引導時自動加載VLAN模塊,請將其添加到適當的配置文件中以進行Linux分發。例如,在Ubuntu中,您可以將其添加到/ETC/Modules-load.d/。
結論
在本綜合指南中,我們討論了在Linux操作系統中配置VLAN標記的三種方法。
在Linux網絡中,VLAN標記是一種有用的技術,可讓您在單個物理網絡中創建孤立的虛擬網絡。這種隔離可提高安全性,簡化網絡管理並提高整體網絡效率。
無論您是管理家庭網絡還是複雜的企業環境,了解和實現Linux中的VLAN標記都可以自定義網絡以滿足您的特定需求,從而增強功能和安全性。
以上是如何在Linux中配置VLAN標記[逐步指南]的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Linux的五個基本組件是:1.內核,管理硬件資源;2.系統庫,提供函數和服務;3.Shell,用戶與系統交互的接口;4.文件系統,存儲和組織數據;5.應用程序,利用系統資源實現功能。

Linux基礎學習從零開始的方法包括:1.了解文件系統和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.學習文件操作,如創建和編輯文件,4.探索高級用法如管道和grep命令,5.掌握調試技巧和性能優化,6.通過實踐和探索不斷提陞技能。

Linux在服務器、嵌入式系統和桌面環境中的應用廣泛。 1)在服務器領域,Linux因其穩定性和安全性成為託管網站、數據庫和應用的理想選擇。 2)在嵌入式系統中,Linux因其高度定制性和高效性而受歡迎。 3)在桌面環境中,Linux提供了多種桌面環境,滿足不同用戶需求。

Linux設備是運行Linux操作系統的硬件設備,包括服務器、個人電腦、智能手機和嵌入式系統。它們利用Linux的強大功能執行各種任務,如網站託管和大數據分析。

互聯網運行不依賴單一操作系統,但Linux在其中扮演重要角色。 Linux廣泛應用於服務器和網絡設備,因其穩定性、安全性和可擴展性受歡迎。

Linux操作系統的核心是其命令行界面,通過命令行可以執行各種操作。 1.文件和目錄操作使用ls、cd、mkdir、rm等命令管理文件和目錄。 2.用戶和權限管理通過useradd、passwd、chmod等命令確保系統安全和資源分配。 3.進程管理使用ps、kill等命令監控和控制系統進程。 4.網絡操作包括ping、ifconfig、ssh等命令配置和管理網絡連接。 5.系統監控和維護通過top、df、du等命令了解系統運行狀態和資源使用情況。

Linux的缺點包括用戶體驗、軟件兼容性、硬件支持和學習曲線。 1.用戶體驗不如Windows或macOS友好,依賴命令行界面。 2.軟件兼容性不如其他系統,缺乏許多商業軟件的原生版本。 3.硬件支持不如Windows全面,可能需要手動編譯驅動程序。 4.學習曲線較陡峭,掌握命令行操作需要時間和耐心。

Linux管理員的平均年薪在美國為75,000至95,000美元,歐洲為40,000至60,000歐元。提升薪資可以通過:1.持續學習新技術,如雲計算和容器技術;2.積累項目經驗並建立Portfolio;3.建立職業網絡,拓展人脈。
