交换机可以进行VLAN路由吗?[关闭]


10

我一直在学习有关VLAN的信息,我想知道交换机是否可以用于两个VLAN之间的通信。

由于交换机支持中继链路,并且已经知道帧的目的地/源(VID),它们可以用于将帧从一个VLAN发送到另一个VLAN吗?

VLAN网络示例

例如,在上图中,我想知道为什么如果此交换机已经接收到每个VLAN的VID,则需要路由器。为什么不能将帧转发到目标VLAN,却需要路由器来完成,从而延长了帧到路由器以及从路由器回传的时间?


4
注意:带标签的帧没有目标/源VID-通常只有一个VID-因此,纯在L2上运行的交换机无法知道该帧是否打算基于该VLAN。
psmears '17

2
如果要像这样将两个VLAN“连接”在一起,它们实际上就是同一VLAN。这样就没有必要使用两个单独的VLAN ID。
user253751'3

即使他们可以,我也无法想象这是没有用的。例如,IP无法使用,因为ARP无法使用。在这种情况下可能会有一些协议可以使用,但是您知道其中哪些协议被广泛使用吗?
David Schwartz

@DavidSchwartz每个基于以太网的协议都可以解决此问题。如果交换机有效地连接到VLAN,为什么ARP不起作用?
安德烈亚斯·凯瑞

1
@KostaS。就像我之前说过的-如果您可以使用一台交换机来做到这一点,那么它将只是一个具有两个ID的VLAN,那有什么意义呢?
user253751'3

Answers:


18

L2交换机无法执行VLAN间路由,因为它们仅处理L2网络事务,即链路之间的转发帧。如果是L3交换机,则可以在VLAN之间进行IP协议路由。


5
“ L3开关”不是开关!它是路由器。
伊恩·林格罗斯

4
@Ian虽然您在技术上是正确的,但大多数被列为路由器的产品均具有有限的端口数量,并且通常也充当调制解调器的角色。如果您搜索L3 Switch,则将找到所需的设备。
Roshan Bhumbra

2
@IanRingrose从技术上讲,“ L3交换机”是网桥网关的组合。
克莱里斯

2
VLAN 层2
亮度种族在轨道

10

VLAN用于创建不同的子网,这意味着不同的广播域。您需要具有路由器或第3层交换机,才能在不同的VLAN(不同的子网)之间转发流量。


2
VLAN和子网是两个不同的事物

@LightnessRacesinOrbit从技术上讲,您是正确的。但是,许多人并没有那样对待他们。我见过很多人(包括在线VLAN文章)都把这个主题当作子网到VLAN的映射是1对1的映射,而且我认为许多人可能以这种方式配置它们。你是正确的。他们是分开的,不需要排队。
Loduwijk

@Aaron:因此,我不理解此答案的至少10个投票。(FWIW,在我为其开发设备的特定电信网络中,没有任何实际的或假定的子网到VLAN的映射。)
Lightness Races in Orbit

这些“子网”通常称为“虚拟网络” ... VLAN。但是,单个VLAN不一定在其使用的每个链接上都具有相同的ID。
安德烈亚斯·克雷

10

路由是第3层功能,而VLAN仅涉及第2层。

当计算机A要使用IP协议将数据发送到另一台主机B时,它将首先检查B是否与其本机位于同一网络中(比较其自身地址的网络部分和目标IP地址)。

  • 如果B IP地址在同一网络中,则A将执行ARP请求以查找
    B 的MAC地址。如果B不在运行中或不在同一VLAN中,则ARP请求将没有应答,并且A将不发送其他(通信失败)。

  • 如果B IP地址属于另一个IP网络,则A将在其路由表中查找,找到路由器C(通常是其默认网关)的IP地址,并将数据包发送到C(再次执行ARP请求以查找C) MAC地址)。

因此,如果两个网络中都没有带有接口的路由器,则无法在两个单独的IP网络中的两个主机之间进行通信。

即使两个VLAN之间存在某种桥接(不常见,但可能),或者两个主机位于同一VLAN中,但IP地址位于不同的IP网络中,但没有路由器也无法进行通信,因为A不会尝试发送到B的帧(因为它的IP配置告诉它需要路由器)。

现在,正如其他答案所指出的那样,如果您的交换机是第3层交换机,则意味着您在一个盒子里既有交换机又有路由器。如果配置正确,则交换机的路由器功能将在不同的VLAN之间路由。
第3层交换机(与单独的路由器相对)的主要优点是,您可以以全线速(即与交换过程一样快)在不同VLAN之间进行路由。


2

这里的其他答案涉及网络理论,因此我不会对此发表评论。对于与网络理论相关但又与网络理论不同的现实世界中的实际网络硬件,答案是肯定的。您可以购买可以处理VLAN流量的网络交换机。

网络交换机曾经被视为第2层设备,但是如今,许多交换机的功能已超出此范围。有时,路由器被标记为“第3层交换机”。不仅具有第2层功能的交换机有时也称为“ 2.5层交换机”


1
VLAN是第2层功能。

@LightnessRacesinOrbit我不记得了,因为距离我进行任何VLAN配置已经有好几年了。如果是这种情况,也许您应该在其他答案上留下该评论,因为评分最高的答案都与您在此处的评论相矛盾。实际上,请稍等... VLAN的全部要点是它是一个独立的网络,因此位于第3层。您确定这是第2层吗?无论哪种方式,您的评论最好留给评分较高的答案。
Loduwijk

@AAaaron:我确实在其他答案上留下了评论; 您甚至回答了其中之一!而且,是的,我确定。VLAN标签插入到以太网帧中。
Lightness Races in Orbit

@LightnessRacesinOrbit我仅看到您对其他答案之一的评论,即我答复的评论,那是另一种评论。“ VLAN = L2”和“ VLAN!=子网”是不同的注释。我同意“ VLAN!=子网”。我不太确定您的“ VLAN = L2”。我想这取决于您对“是...功能”的定义,尽管特别是针对手头的原始问题,但问题是关于第3层功能。至少,这就是我读到的问题的方式:网络之间的路由(从逻辑上讲,VLAN在逻辑上就是另一个LAN)。没有?
Loduwijk

“'VLAN = L2'和'VLAN!=子网'是不同的注释”我要说明的基本点是完全相同的-讨论第3层技术的答案完全没有把握。不确定为什么我在什么地方和什么时候这么挂念,tbqh。
Lightness Races in Orbit

1

有趣的是,VLAN交换机不支持此功能-无法将它们配置为将端口A上的VLAN3连接到端口B上的VLAN5。

您可以通过使用两个端口来破解该端口,将一个端口配置为不带VLAN3标记,另一个配置为不带VLAN5,然后用电缆连接它们。(没有尝试过,但是不明白为什么它不起作用。)


@Andreas_Krey嗯...你确定吗?您不能在两个网络之间路由?VLAN只是虚拟网络(因此而得名),您可以像在其他两个网络中一样在它们之间进行路由。也许我们迷上了语义,正如网络理论和现实世界网络硬件之间的差异所证明的那样,就像其他人在此线程中一样。
Loduwijk

@Aaron路由是不同的东西,我(也可能是Q)谈论的是在不同端口上为同一VLAN使用不同的VLAN ID(并可能有多个)。
安德烈亚斯·克雷

@Andreas_Krey也许。我只是重新阅读了《 Q》,所以我可以看到您如何理解它。我看到的是“它们(交换机)是否可以用于将帧从一个VLAN发送到另一个VLAN”。我认为这是一个问题,询问者只是在逻辑上不将VLAN视为“只是另一个LAN”,而是询问他是否可以使用交换机在它们之间路由。我可能是错的。
Loduwijk

当且仅当您禁用STP或拥有执行VLAN感知STP的设备时,您的hack才会起作用。朴素的STP类型实现将会“ omg,网络循环,必须在杀死我之前将其杀死”。在进行涉及Cisco路由器,网桥和VLAN的工作时,我发现了这一难题。
凯萨尔

1

如果我正确地解释了这一点,则您希望一台接收具有VLAN 5的帧的交换机(例如)将其转发至VLAN 6。

这将毫无意义。无需执行此操作,您只需将使用VLAN 6的所有设备移到VLAN 5中即可。

因为它没有意义,所以交换机供应商没有添加任何方法来做到这一点。


-1

VLAN内流量在VLAN网络的mac地址之间转发。为了使“框架”离开该网络,必须将其转发到具有路由功能的设备的mac地址。这可以是交换机,防火墙或路由器。因此,如果来自VLAN A的帧要到达VLAN B,则VLAN A会将帧发送到默认网关的mac地址,VLAN B也会这样做。如果这些网关在交换机上,则该交换机正在vlan之间路由数据包,这与路由器相同。但是,如果需要控制VLAN之间的来回访问,则可能要使用防火墙。

在现代世界中:将交换机视为具有许多端口的路由器。将路由器视为具有较少端口但具有更高可用性的交换机。将防火墙视为可以支持更高层服务的路由器,例如入侵检测,防病毒,SSL代理,应用程序服务,NAT等。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.