VLAN如何在Internet上工作并跨越多个地理位置?
当帧移至另一台交换机或路由器时,VLAN标头会被删除吗?
如何发生?

#1 楼

通常,VLAN仅在由单个实体控制的站点内或至少在网络内使用。

有可能使用各种隧道协议在IP网络上承载封装的以太网流量(可能包括VLAN报头),并且有时可以这样做。问题是要有效地做到这一点,需要使“底层”网络的MTU高于“底层”网络。

如果底层网络是专门为此目的而构建的网络,这是可以管理的,在大多数现代网络设备上,稍微增加MTU以适应封装开销是没有问题的。以太网没有用于协商MTU的协议,因此,如果要在覆盖网络上使用较低的MTU,则需要重新配置每个单个设备。在底层方面,大多数Internet不会传递大于默认以太网MTU的数据包。隧道解决方案。但是,这有其自身的问题,首先,灵活的碎片化解决方案将导致底层网络承载的数据包数量几乎翻倍。其次,重新组装可能是一个昂贵的过程,尤其是在底层网络对数据包进行重新排序时。

#2 楼

VLAN是第2层构造,因此它们仅存在于本地网络中,并在路由器处终结。互联网没有VLAN的概念。

评论


软件工程的基本定理:我们可以通过引入额外的间接级别来解决任何问题。在这种情况下,封装使您可以创建虚拟VLAN。

– Barmar
20年1月14日在16:40

我认为您在误解OP的问题。我知道我们可以建立隧道等,但是我不认为这是问题。

–罗恩·托恩(Ron Trunk)
20年1月14日在16:42

#3 楼

我们从校园网或企业网络了解到的VLAN中继无法通过Internet或任何其他路由网络“本地”扩展(请参阅Ron Trunk的答案)。

封装/隧道化是可以做到的可能的方式:VXLAN,GRE,GENEVE,L2TP,基于以太网的MPLS ...有很多技术和协议可以支持(请参阅Bobby Voychine的回答)。

还有另一个方面需要关注:冒险将VLAN(或广播域,网桥域或子网)扩展到(公共)Internet并进行封装:数据包大小问题。经典的交换式以太网VLAN为1500字节的有效负载大小提供了有效的支持。 L3协议(最近通常是IP),并且广播域/子网的所有参与者都假定同一VLAN /广播域/子网的任何其他参与者都支持相同的MTU。封装头很容易消耗100bytes甚至更多。同样,L2-帧不会使自己变得碎片化,因此必须丢弃近MTU数据包。随之而来的是多种连接狂潮(例如:Ping有效,DNS查找有效,TCP SNY / ACK有效-但是一旦出现大数据包,事情就开始混乱了。)

简而言之:如果封装“经典以太网”帧是预期的解决方案[2],那么,如果不是强制性要求在底层传输网络中支持大数据包/帧,则是非常可取的。 [3]

这通常会使开放式Internet失去作为传输网络的资格(通常为1500个字节,但更多甚至更少,请参阅PPPoE或IPSec隧道)。可能会有ISP提供比正常MTU选项更大的产品,但是我还没有碰到一个。


[1]路由设备却可以:PathMTUdiscovery(PMTUd)允许路由器向
发出信号最终主机将较小的数据包发送到给定的目的地。然而,PMTUd ist并不是特别可靠,它应该与TCP MSS钳制相辅相成。
但是,在这种情况下,进行L2-in-L3封装的路由器不是可以执行PMTUd或MSS钳位的路由跃点。

[2]如果有一种避免使用L2-in-L3封装的解决方案-最好选择一种解决方案。总是。总是!

[3]替代方法是使用较低的MTU运行整个给定的VLAN /子网/广播域,包括所有涉及的终端主机,路由器和防火墙接口,以便封装的数据包更小比给定的端到端MTU。

#4 楼

如果要通过Internet传输L2流量,可以采用几种方法。

一种方法是使用称为第2层隧道协议版本3或简称为L2TPv3的方法。
<第2层隧道协议版本3是与L2TP相关的IETF标准,可以用作多协议标签交换(MPLS)的替代协议,以封装IP网络上的多协议第2层通信流量。与L2TP一样,L2TPv3提供了伪线服务,但可以扩展以适应运营商的需求。 L2TPv3支持各种L2协议的传输,例如以太网,802.1q(VLAN),帧中继,高级数据链路控制(HDLC)和点对点协议(PPP)。我参考的文档的重点是以太网扩展。

另一个可行的解决方案是使用EVPN-VXLAN。

以太网VPN(EVPN)使您可以连接分散的组使用第2层虚拟网桥和虚拟可扩展LAN(VXLAN)的客户站点,您可以在中间第3层网络上扩展第2层连接,同时提供VLAN等网络分段功能,而不受传统VLAN的扩展限制。可以通过此链接进行更深入的说明并找到实现示例。

评论


VXLAN实际上不适合数据中心以外的任何设备。

–罗恩·托恩(Ron Trunk)
20年1月13日在15:54

@RonTrunk我同意。但是,它仍然启用跨物理L3网络的虚拟L2子网或网段。

– Bobby Voychine
20年1月13日在16:05

L2TPv3看起来是唯一可行的选择。

–桅杆
20年1月14日在10:57

#5 楼

简短的答案:如果使用正确的路由,则不需要任何VLAN。

VLAN用于在每个站点的共享L2网络上隔离不同类型的流量或安全区域。但是,站点之间的转发是在网络层(L3)上完成的。按IP地址。

通常,VLAN和IP子网之间具有1:1映射,每个本地路由器都会验证这些映射。因此,在站点之间路由时,可以将每个源/目标IP子网照原样用于任何安全关联/分区。只需通过同一链接或VPN隧道进出每个站点即可。在路由器上使用防火墙规则或ACL转发所需的流量并丢弃不需要的流量。

但是,如果实际上需要跨站点的L2连接,则需要隧道L2流量(L2VPN,MPLS,VXLAN, ...),包括VLAN标签,其他答案已经指出。跨WAN的L2具有明显的缺点,因此应尽可能避免。