VLAN 标记、路由和一般问题

网络工程 路由 转变 VLAN 子网 dhcp
2021-07-19 12:28:28

感谢所有花时间阅读以下内容的人,非常感谢。

我想从一个非常普遍的问题开始,然后给出我的确切情况。在设置 VLAN 时,我真的不理解术语“标记出口数据包”与“取消标记出口数据包”。就我一直关注的而言,标记意味着交换机在进入该端口的每个数据包上手动实施 VLAN 标记(将标记放在自身上),而取消标记则意味着它不是。这可以追溯到我的第一个老板,他告诉我每个端口只能有一个标记的 VLAN。我现在很确定这是错误的,但我不介意弄清楚它到底指的是什么。我目前的假设是标记意味着它接受该 VLAN 的标记数据包,而未标记意味着它接受未标记的数据包并将其放入该 VLAN(可能是主 VLAN ID)。

我的情况/问题

网络基础设施目前正在运行所有 NetGear Prosafe 交换机(不是我的选择,但在我们本月晚些时候进行升级之前,我开始使用它们)以及一台 NetGear 路由器。我们正在使用 Aerohive 接入点来创建校园无线网络。

我基本上正在经历,撕掉 Aerohives 上现有的 SSID,并希望用更好的选择替换它们。Aerohive 不是问题,我可以闭上眼睛配置它们。

我所拥有的是我想要创建的三个 VLAN,以将三种不同类别的用户划分到三个不同的子网中。Aerohives 将根据使用的用户和 SSID 分配 2220、1135 和 2135。目前,我专注于 2220 作为测试用例。我在 DHCP 服务器 (192.168.5.0/24) 上配置了一个新的 DHCP 作用域,并使用新 VLAN 的标记出口数据包选项配置了路径上的每个端口。我还添加了一个特殊的路由端口(尽管我非常怀疑它是否需要)。

问题

我在网络上没有收到 DHCP,当我对 2220 进行 VLAN 探测时,它显示为没有子网。我真的只是不太了解 VLAN 路由,尤其是这些 NetGears,以了解为什么 DHCP 请求没有到达 DHCP 服务器。

澄清

目前,DHCP 服务器和接入点之间只有两个交换机。位于不同子网上的 DHCP 服务器可能不会直接联系,但我可能希望发生以下情况。

AP > 交换机 1 > 路由器 > 交换机 2 > DHCP 服务器

是的,我为新 VLAN 设置的路由器端口与 AP 连接到同一台交换机。理想情况下,对于这个测试用例,我认为我只需要配置大约 3-5 个端口。

编辑

阅读以下答案后,我尝试了以下内容,并希望添加更多说明。

交换机 1 - 端口 03 VLAN 3030 未标记,VLAN 2220 标记,主 VLAN 3030 3030 是管理接口 VLAN,AP 需要进行通信,因此我无法真正更改主 VLAN。

交换机 1 - 端口 09 VLAN 2220 未标记,主 VLAN 2220 这将前往路由器。我觉得我应该能够最终在这个端口上标记所有三个 VLAN,并让路由器以中继模式处理它们。

路由器 - 端口 05 VLAN 2220 未标记,主 VLAN 2220。VLAN 路由接口 192.168.5.1、255.255.255.0。DHCP 助手中继是为 DHCP 服务器设置的。作为参考,DHCP 服务器位于 192.168.1.0/24 子网上。注意:这个型号的网件不让我为物理端口配置IP,只是为你创建的路由端口配置。

交换机 2 - 端口 05这是 Hyper V 主机端口,我开始感到困惑。我们有另一个完全相同的子网设置(不是我创建的)。端口本身只有 VLAN 1 未标记和主要的。所以,我认为我不需要在端口上配置任何东西。我只是不知道我是否遗漏了什么。

DHCP 似乎仍然不起作用。

2个回答

基本

当您在端口上标记 VLAN 时,它将使用 VLAN 标记发送该端口上的流量,当端口接收流量时,它会查找标记并将流量放入该 VLAN 中。您可以在一个端口(有时称为中继)上拥有多个标记的 VLAN。

当您在端口上发送未标记的 VLAN 时,它不会将 VLAN 标记添加到数据包中,当接收没有 VLAN 标记的数据包时,它将被放入该 VLAN(在 Netgear 和其他人上,您必须设置 PVID(主 VLAN ID) )

你的问题

我想你离你不远了... - 连接到 Switch1 的路由器端口应该有 VLAN 2220 内的 IP。 - DHCP 服务器应该有来自不同子网的不同 IP!- 连接到 Switch2 的路由器端口应该在 DHCP 服务器的子网中具有 IP - 您应该在连接到 Switch1 的路由器端口上定义一个 DHCP 助手,以便 DHCP 请求被转发到 DHCP 服务器。在这里描述了如何做到这一点:http : //kb.netgear.com/app/answers/detail/a_id/21990/~/how-do-i-configure-a-dhcp-l3-relay-using-the- web-interface-on-my-managed-switch%3F

希望这能帮助你更进一步。如果没有,请发布包含 VLAN ID 和 IP 的更详细的网络图。

是的,您可以在同一端口上为不同的 VLAN 标记数据包(更常见的是在将两台交换机连接在一起的上行链路端口上)。这通常被称为“中继”模式(尽管 netgear 交换机上没有这样的术语,而“中继”在 HP procurve 上的含义完全不同)。

要理解 vlan 标记,您必须区分当交换机收到数据包时会发生什么,以及交换机将决定何时在目标端口上发送数据包。

基本设置是在交换机 A 的端口 7 上连接一台 PC,例如在 VLAN 10 中,将路由器连接在交换机 B 的端口 1 上,该路由器将为所有 VLAN 执行路由。交换机 A 和 B 通过两个端口 48 上的上行链路连接在一起。

为了实现这一点,你有以下配置

  • 交换机A端口7配置PVID 10;此端口的 VLAN 10 未标记

接口 1/0/10

vlan pvid 10

VLAN参与包括10

  • 交换机 A 端口 48,交换机 B 端口 48 & 1,VLAN 10 标记

接口 1/0/48

vlan pvid 10

VLAN参与包括10

VLAN 标记 10

当然,路由器必须配置了接口 vlan 10。

现在当 PC 向路由器发送数据包时会发生什么:

  1. PC 发送一个未标记的数据包。交换机在其端口 7 接收数据包。由于数据包没有标记并且端口配置了 PVID 10,交换机现在这个数据包属于 vlan 10
  2. 查看它的 mac 表和数据包中的目标 mac,交换机决定通过端口 48 发送数据包。这是一个属于 vlan 10 的数据包,并且该端口为该 vlan 配置了“标记”。所以交换机A发送头部带有vlan 10标签的数据包
  3. 交换机 B 收到标记为 vlan 10 的数据包。由于它在此端口上配置了 vlan10(参与 vlan 包括 vlan 10),它接受数据包并且知道它属于 vlan 10。
  4. 交换机 B 将数据包发送到端口 1 上的路由器,再次标记。
  5. 路由器收到标记为 vlan 10 的数据包,因为它在这个 vlan 上有一个接口,它路由数据包。

现在是回应。它从路由器出发,在交换机 B 的端口 1 上发送标记,然后旅行,始终标记,直到通过交换机 A 端口 7 发送到 PC。

当交换机即将通过端口 7 发送数据包时,在配置中它有“vlan参与包括 10”所以没问题,但它没有“vlan tagging 10”所以数据包被发送为无标签。 PC 接收没有 vlan tag 的数据包并进行处理。

所以 :

PVID 仅适用于端口接收的数据包

VLAN 标记适用于:

  1. 在端口上收到标记的数据包
  2. 通过端口发送的数据包来决定是否必须发送标记。

如果交换机收到标记为特定 vlan 的数据包,但该 vlan 未在端口上配置,则交换机将丢弃该数据包。