
我正在透過套接字捕獲資料包。在閱讀這些捕獲的資料包時,我意識到 VLAN 標籤以某種方式被刪除了。在網路上衝浪後,我讀到了一些關於 Linux 發行版本身剝離 VLAN 標籤的內容。有人想在這裡透露一些資訊嗎?
答案1
通常網路用戶端不需要 802.1q 標記,只需要交換器和交換器/路由器/防火牆間配置,因此這不是 Linux 世界中預設啟用的功能。但是,當然,您可以將 Linux 伺服器設定為防火牆或進行路由,因此在這些情況下您希望保留標記的資料包,以便交換器知道將來自 Linux 伺服器的流量傳送到哪裡。
Ubuntu 需要支援 vlan、802.1q 的裝置和驅動程式。您需要安裝使用者空間工具 vlan 才能啟用您的介面的設定。
sudo apt-get install vlan
然後您需要加載該模組:
sudo modprobe 8021q
然後,您需要將實體介面新增至 VLAN 介面(這將為該 VLAN 建立一個新的子介面):
sudo vconfig add eth1 10
最後為子介面建立一個ip位址:
sudo ip addr add 10.0.0.1/24 dev eth1.10
如果您想使其永久化:
在啟動時將模組新增至核心:
sudo su -c 'echo "8021q" >> /etc/modules'
然後在 /etc/networking/interfaces 中建立一個節:
auto eth1.10
iface eth1.10 inet static
address 10.0.0.1
netmask 255.255.255.0
vlan-raw-device eth1