TP-Link TL-SG108E - 用于将一台设备与所有其他设备分开的 VLAN

Tro*_*ing 8 networking switch ethernet vlan

我有一个典型的家庭网络,由运行 DD-WRT 的华硕 RT-N16 路由器以及一些有线和无线客户端组成。该网络的新功能是 Raspberry Pi,我正在开展的一个学校项目将使用它。

Pi 被设置为运行一个到面向互联网的服务器的反向 SSH 隧道,以便更广泛的互联网上的任何人都可以通过 SSH 访问我的家庭网络上的设备。

由于 Pi 可在互联网上以及我的家庭网络上使用,因此我希望将其与网络上的所有其他设备隔离。实际上,我希望 Pi 位于栅栏的一侧,而其他所有东西位于另一侧。所有设备都需要访问互联网。

起初,我尝试在我的 DD-WRT 路由器上设置两个 VLAN,但没有成功,但经过一天的闲逛和论坛冲浪后,似乎很多人都遇到了固件错误的问题。为了让我的生活更轻松,或者我是这么想的,我买了一台 TP-Link TL-SG108E“简易智能交换机”,它宣传 VLAN 支持。但在我的一生中,我无法让它像我期望的那样工作!

在TP-Link交换机上:

  • 端口 1 - 转至路由器的内置交换机
  • 端口 2-7 - 我的各种客户
  • 端口 8 - Raspberry Pi 需要隔离

首先,我尝试设置基于端口的 VLAN。我似乎无法同时将端口 1(路由器)分配给两个 VLAN。

基于端口的 VLAN 设置:

在此输入图像描述

如果我选择 VLAN 2 也包含端口 1,那么它就会从 VLAN 1 中删除。

我继续尝试设置基于 802.1Q 标记的 VLAN。

802.1Q VLAN

i.stack.imgur.com/79fQP.png

使用 PVID

PVID

i.stack.imgur.com/5ItpX.png

当端口 8 的 PVID 与端口 1 到 7 不同时,此设置似乎确实有效,从我的 LAN 无法访问 Pi,但从 Internet 也无法访问 Pi!如果我将路由器设置为 PVID 1,将客户端设置为 PVID 2,将 Pi 设置为 PVID 3,则根本无法与路由器进行通信。

此刻,我很困惑,准备承认自己的无知。我究竟做错了什么?

Mul*_*ync 5

您想要的设置绝对可以在此设备上实现。“基于端口的 VLAN”是不够的,因为它不允许一个端口成为多个 VLAN 的成员。使用“802.1Q”这是可能的。我的设置(我在该设备上运行)或多或少与您想要实现的效果相同。

我的设置:

Portnum   Device     Member of VLAN   VLAN-ID INCOMING FRAMES GET ASSIGNED (PVID)
--------|----------|----------------|-----------------------------------------
Port 1     Router        1,2,3                        1                 
Port 6    Device A        1,2                         2
Port 7    Device B        1,3                         3
Run Code Online (Sandbox Code Playgroud)

通过此配置,端口 6 和 7 彼此分离。两者都可以与端口 1 通信,但不能相互通信。

解释:进入端口 6 的以太网帧被推送到 VLAN 2 上。由于端口 1 是 VLAN 2 的成员,因此它们可以通过此端口离开,从而到达其后面的设备(路由器)。它们无法通过端口 7 离开,因为它不是 VLAN 2 的成员。当路由器想要回复时,通过端口 1 进入的以太网帧将被推送到 VLAN 1。端口 6 是 VLAN 1 的一部分,因此它们可以通过这个口岸离开。它们可以通过端口 7 离开,但由于帧不携带其后面设备的 MAC 地址,因此交换机没有理由让它们这样做。

请在下面找到我的工作设置的屏幕截图。

802.1Q VLAN 页面 在此输入图像描述


kas*_*erd 3

您所要求的隔离正是多租户单元 VLAN所擅长的。引用交换机配置中的帮助文本:

MTU VLAN(多租户单元 VLAN)定义了一个上行链路端口,它将与其他每个端口建立多个 VLAN。每个 VLAN 包含两个端口,即上行端口和交换机中的其他端口之一,因此上行端口可以与任何其他端口通信,但其他端口不能相互通信。

因此您可以使用它并将端口 1 配置为上行链路端口。不幸的是,这也意味着端口 2 到 7 无法相互通信。


如果您需要端口 2 到 7 进行通信,则需要考虑其他选项,因为多租户单元 VLAN 功能似乎不够灵活,无法实现这一点。

正如您所注意到的,基于端口的 VLAN 也不能满足您的要求。

这使得标记的 VLAN 成为您最后的选择。但是,让一个端口成为多个 VLAN 的未标记成员是有问题的,因为发送到交换机的未标记帧可能用于这些 VLAN 中的任何一个,而交换机无法知道。

相反,您应该做的是使路由器的上行链路端口成为不超过一个 VLAN 的未标记成员和其余 VLAN 的标记成员。

在路由器本身上,您还需要配置相同的 VLAN 标记,以便路由器知道数据包源自哪个 VLAN,并且路由器可以告诉交换机该数据包属于哪个 VLAN。

在路由器上,这看起来像连接到两个不同 VLAN 的两个虚拟网络接口。推荐的配置是让路由器为两个 VLAN 使用不同的 IP 前缀。