
我正在努力找出如何使一個 VLAN(我們將其命名為 A)看到另一個 VLAN(將其命名為 B),並且我希望 B VLAN 無法看到 A VLAN。
我提到是因為我想要 Windows 伺服器的這種配置。
答案1
VLAN 的工作方式與兩個普通的獨立網路相同:它們不要預設會彼此“看到”,並且只能透過路由器進行通訊(該路由器配置了兩個 VLAN,可能作為“標記”介面)。因此,如果您想阻止某些類型的通信,您可以在路由器的防火牆規則中執行此操作。
而且,一般來說,你做需要一個支援VLAN配置的交換器。 (Windows 本身也只有在充當Hyper-V 虛擬機的交換機時才能做到這一點。)直接在終端主機上配置VLAN 可能不是一個好主意- 如果沒有任何東西來強制執行它們,那麼它就不是很安全。
(此外,不包括 Hyper-V「虛擬交換器」模式,Windows 本身實際上並沒有本機 VLAN 配置。有些驅動程式提供;有些驅動程式不提供;有些驅動程式接受全部封包忽略任何 VLAN 標記...Linux 和 BSD 在這方面更加靈活。
例如(不確定這是否真的很好,但技術上可行):
轉變:
- 連接埠 1(標記為 VLAN 10、20)→ 路由器
- 連接埠 2(未標記的 VLAN 10)→ 伺服器
- 連接埠 3(未標記的 VLAN 20)→ 桌上型 PC
路由器(Linux 範例):
- 介面「eth0」(未標記)-什麼都沒有(也許是管理 IP?不知道)
- 介面“eth0.10”(VLAN 10) – 位址
192.168.10.1/24
- 介面“eth0.20”(VLAN 20) – 位址
192.168.20.1/24
- 防火牆配置為允許來自 的新連接
192.168.10.0/24
,但僅允許來自其他所有設備的預期回應。 (在 Linux 上,這將是帶有“FORWARD”鏈和“-m state”的 iptables。)
伺服器:
- 介面「乙太網路」 – 位址
192.168.10.3/24
- 介面「乙太網路」 – 位址
桌上型電腦:
- 介面「乙太網路」 – 位址
192.168.20.7/24
- 介面「乙太網路」 – 位址