![如何使用一根网线将网络与 VLAN 分开](https://linux22.com/image/1633582/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E4%B8%80%E6%A0%B9%E7%BD%91%E7%BA%BF%E5%B0%86%E7%BD%91%E7%BB%9C%E4%B8%8E%20VLAN%20%E5%88%86%E5%BC%80.png)
请帮助我设置分离式家庭网络。我的前提是:
- 一条外部线路(这将是连接到我的 ISP 访问互联网的 WAN 电缆)
- 一个路由器(ISP 的或我自己的;外部线路插入 WAN 端口)
- 具有 VLAN 管理功能的交换机
- 路由器和交换机之间的链接(显然:))
- 设置 VLAN 此步骤旨在将我的网络分成两部分:一个是我的“受信任”网络(我的笔记本电脑、手机等),另一个是“不受信任”的网络(访客、智能设备等)
- “输出”电缆(我将在下面简要解释)
这就是前提,下面是我的要求。正如我所说,我想要有 2 个 Intranet。VLAN0 将是受信任的,VLAN1 将是“不受信任的”。我的公寓里有几个房间,每个房间都有一根以太网电缆(因此有“一根输出电缆”的前提)。
显然,在每个房间里我都会有两组设备,例如智能电视或访客(链接到不受信任的接入点)和我自己的笔记本电脑/平板电脑/手机(链接到受信任的接入点)。
我的问题(让我们简化并仅针对一个房间来解决这个问题):有没有办法使用一根以太网电缆(比如在客厅)连接 2 个接入点?(一个 AP 具有不受信任的 SSID,另一个具有受信任的 SSID)
我以为电缆会进入一个集线器,然后分成 2 个 AP/扩展器/小型路由器。我认为这里的问题是,由于交换机只接出一条电缆,而且交换机设置了 VLAN,因此它接出的接口(假设是 VLAN0 - 受信任)可能会将电缆与该 VLAN 匹配,并且无法向另一个 VLAN(VLAN1 - 不受信任)提供 DHCP 或其他信息。
所以基本上我的问题是:有没有办法用一根电缆“连接” 2 个接入点,每个接入点都属于自己的 VLAN?如果可以,怎么做?(我还没有决定是路由器还是交换机执行 DHCP - 我原本考虑的是路由器,但由于我将网络分为 2 个内部网,也许交换机应该执行这个逻辑?)
我想到的另一种方法可能更简单(但更昂贵),就是不要在顶层使用 2 个 VLAN,而是使用每个房间的单线并将其插入交换机(然后将其分成 VLAN)。但我不确定这样会如何分割,因为这个想法是,如果我在一个房间里有一台空调,在另一个房间里有一台电视,在第三个房间里有暖气,它们都会和集线器一起看到彼此,但与其他设备(如我的笔记本电脑或手机)是分开的。这里需要确认。
还有一个问题:如果最顶层通向路由器(通向互联网),这是否也意味着路由器将桥接 VLAN,因为它是 L3 设备?
提前致谢 :)
答案1
设置 VLAN 此步骤旨在将我的网络分成两部分:一个是我的“受信任”网络(我的笔记本电脑、手机等),另一个是“不受信任”的网络(访客、智能设备等)
尽管后两类人是“不受信任的”,你的从这个角度来看,他们也是“不被信任的”每个人观点。您的访客是否应该无限制地访问您的空调/暖气/物联网设备?如果不是,那么至少需要 3 个 VLAN。
这就是前提,下面是我的要求。正如我所说,我想要有 2 个 Intranet。VLAN0 将是受信任的,VLAN1 将是“不受信任的”。我的公寓里有几个房间,每个房间都有一根以太网电缆(因此有“一根输出电缆”的前提)。
使用 802.1Q 标记在同一电缆上分隔多个 VLAN 很容易实现这一点。(实际上所有“具有 VLAN 功能”的交换机都支持 802.1Q。)但是,接收端的设备需要理解标记,因此理想情况下,您应该使用支持 802.1Q VLAN 的交换机在每个房间里。
非托管的非 VLAN 交换机只能起到一定的作用——它们会全部同一默认 VLAN (PVID) 中的设备。只有能够自行进行 802.1Q 标记的设备才能使用其他 VLAN,但电视、游戏机、打印机以及其他 IoT 设备则不能。
另外,不要使用 VLAN 0。在 802.1Q 标记中,不允许将零作为 VLAN ID – 有效范围是 1-4095,“默认”VLAN 通常为 1。
(ID 为 0 的 802.1Q 标签被认为根本没有任何 VLAN ID - 此类标签仅用于指定 QoS 数据包优先级。)
所以基本上我的问题是:有没有办法用一根电缆“连接” 2 个接入点,每个接入点都属于自己的 VLAN?如果可以,怎么做?
是的,只要某物两端均支持 VLAN 标记(802.1Q 标记)。在客厅端,它可以是交换机或高级 AP。
所以如果你有一个第二具有 VLAN 功能的交换机,然后将其放在客厅,并将每个 AP 连接到具有其所需 VLAN 的“访问”端口。房间之间的电缆(两个 VLAN 交换机之间)然后连接到“中继”端口,这些端口可同时承载多个标记的 VLAN。
如果你只有一个非托管的非 VLAN 交换机,那么它可能是可能的,但这完全取决于 AP 所运行的固件。您越倾向于使用“商业级”AP,它们就越有可能支持数据的 VLAN 标记。OpenWRT 也应该能够做到这一点。
大多数商业/企业 AP 甚至支持不同 VLAN 上的多个 SSID相同的AP。(基本上与家用路由器上的“Guest SSID”技术相同,但更灵活,因为您可以选择哪个 VLAN 对应哪个 SSID。)
(我还没有决定是路由器还是交换机来实现 DHCP——我本来是考虑路由器,但是因为我将网络分为两个内部网,所以也许交换机应该实现这个逻辑?)
许多交换机实际上只是 L2 交换机,不处理 DHCP 也不处理 VLAN 之间的路由。如果您不想使用单独的路由器,则需要“L3 交换机”(即具有 L3 路由功能的高级 L2 交换机)。
但是 DHCP 并不比实际拥有一个在这些 VLAN 和 Internet 之间执行路由的设备更重要。(从技术上讲,重要的不是哪个设备生成 DHCP 响应,而是在这些响应中指定了哪个“网关”IP 地址,因此如果设备 A 发出 DHCP 租约但指向设备 B 进行实际路由/网关等,那就没问题了。)
还有一个问题:如果最顶层通向路由器(通向互联网),这是否也意味着路由器将桥接 VLAN,因为它是 L3 设备?
一般情况下不会。(桥接是 L2 操作。)路由器应该路线VLAN 之间。
但是,为了使用单根电缆实现此功能,路由器本身必须支持 VLAN 标记。(它将每个 VLAN 视为一个虚拟以太网端口,具有自己的 IP 地址和所有内容。)
如果路由器不支持 VLAN 标记,则需要能够在 L2 上完全分离其 LAN 端口。也就是说,如果您有一个常见的 4 端口家用路由器(带有内置 LAN 交换机的那种),它必须能够关闭其所有 LAN 端口之间的内置交换,以便您可以将一些端口分配给“LAN 1”,将其他端口分配给“LAN 2”。
如果路由器不支持以上任何一项(即,它严格来说是一个所有 LAN 端口都永久桥接的单个 LAN 设备)……那么是的,最好的情况是它根本无法工作,最坏的情况是它会意外地将您的所有 VLAN 桥接在一起,最终您将无法拥有两个独立的网络。
我想到另一件可能更简单(但更昂贵)的事情是不要在顶层使用 2 个 VLAN,而是使用每个房间的单条线路并将它们插入交换机(然后将其分成 VLAN)。
这不是一个替代方案——这是你已经应该这样做才能正确使用 VLAN。如果房间需要多个 VLAN,则应该有一个支持 VLAN 的交换机。
不过,我不确定这样它们会如何分割,因为这个想法是,如果我在一个房间里有一台空调,在另一个房间里有一台电视,在第三个房间里有暖气,它们都会和集线器一起看到彼此,但与其他设备(如我的笔记本电脑或手机)是分开的。这里需要确认。
嗯,没错,但是如果你的路由器没有这些 VLAN,那么它们将还完全与互联网隔绝。(除非您的交换机还具有 L3 路由功能。)
答案2
正如其他人指出的那样,以太网网络需要将一个 IP 与一个 MAC 关联,因此您需要其中两个。
我认为 WiFi 是您可能想要考虑的用于访客网络的更好解决方案。大多数家用路由器都内置了一项名为“访客网络”的功能,可以完全满足您的需求。然后,您的整个网络就只是受信任的以太网和 WiFi 加上 WiFi 访客网络。
另一个未提及的选项是,您可以使用软件设置虚拟 LAN。最简单的方法是使用大多数虚拟机软件附带的虚拟网络功能。使用这些功能,您可以创建虚拟以太网卡。
尝试https://www.vmware.com/或者https://www.virtualbox.org/有关该软件的示例。
此外,您还可以使用软件在任何网络之间建立隧道。了解 SSH 隧道。
https://putty.org/ 或者 https://www.microsoft.com/en-us/p/ssh-tunnel/9nr7p38pklt4
这些软件解决方案都无法避免这样一个事实:在某些时候,如果您在另一个网络上有实际硬件,那么您就需要实际的以太网端口,以便该硬件能够物理连接到网关。