跳转至

VLAN

VLAN,即Vitrual LAN,也就是虚拟局域网。

原理与背景

名词

冲突域:所谓冲突域,指的是这个域中只能有一个主机在发送报文,于此同时,其他所有主机都会接收到报文。若超过一台主机在发送报文,则会引起错误。

广播域:广播域是对于某个特定主机而言的,当这个主机发送一个广播报文时,所有能收到这个广播报文的主机构成一个广播域。

图片无法加载,请检查网络连接
简单网络拓扑结构

在上面这个网络拓扑结构中,共有一个广播域。这个网络拓扑中没有冲突域或者有四个冲突域,因为交换机的存在,单就每台主机自身而言,都只能在同一时间发送或接受,单每台主机之间互不影响,故每台主机本身就是一个冲突域。

为什么会有冲突域这个概念,因为早期网络结构是使用总线式,即所有主机使用一根网线。

图片无法加载,请检查网络连接
早期网络拓扑结构

在上图中,所有主机组成了一个冲突域。且由于总线式网络,每台主机发送的报文都会被其他所有主机收到,这个网络也存在隐私泄露风险。

广播域和冲突域的划分

一般来说,在没有配置VLAN技术的时候,一台路由器下所有设备组成一个广播域。

一台交换机下的一个端口组成一个冲突域,也就是说,如果交换机的某个端口上使用hub连接了多台主机,这些主机就是一个冲突域。

路由器与交换机

对于现代网络,使用交换机或者路由器能解决冲突域的问题。

路由器(Router),是一种网络转发设备,其中保存有“路由表”。路由器的作用就好比路标,能将流量正确转发到其目的地址。路由器一般有多个物理接口,每个接口都有一个mac地址。对于家用狭义路由器来说,只有两个接口,且人为将其分为WAN和LAN端口。路由器通过接收到的报文,判断其目的ip,根据自身记录的ip域与接口MAC的映射,将流量转发到正确的位置。

路由器仅关心IP。

交换机(switcher),即开关,类似电路中的单刀多掷概念。交换机的职能也是转发,与路由器不同,交换机仅关心MAC地址,根据报文的MAC地址,将报文转发到正确的地方。

Note

如果交换机下的某台主机想要访问互联网或者WAN,那么报文的目的MAC就是路由器,而目的ip还是提供服务的WAN主机ip。

使用交换机时,如果源MAC和目的MAC都在这个交换机下,那么流量将不会上报的路由器,但是需要注意,交换机下主机相互通信时,需要在同一网段,如果不在同一网段,交换机并不会阻止通信(因为交换机只关心MAC)。但是,在主机端,发送报文的时候主机发现不在统一网段,就会尝试将报文发送给默认网关,如果默认网关未配置,就会丢弃报文。

现在大多数家用路由器都是路由器+交换机。

VLAN的作用

将同一个广播域划分为多个逻辑广播域。虽然名称是Virtual Local Area Network,但是他和基于ip的路由划分网段不同,VLAN使用交换机设备实现,且与交换机端口MAC绑定。

要使用VLAN,必须使用管控式交换机。交换机上可以配置各端口使用的VLAN ID,当数据从端口输入或输出时,交换机就会按照设置的相应VLAN ID处理。如果源MAC和目标MAC的端口VLAN ID相同,则可以通信,相反,不能通信。

目前交换机的VLAN端口设置通常有两种模式,Trunk和Access类型,其中Trunk类型可以在一个端口传递多个VLAN,而Access只能传递一个VLAN。

即使在同一网段,VLAN不同,两台主机也无法通信,这样很好地保证了网络设备安全性。

当使用vlan功能时,即使不划分,也会默认有一个vlan id。在某些情况下,我们需要某些设备能被所有或不同vlan下的主机访问,这时只能依靠路由器的inter-vlan技术,不过由于vlan是更底层的分隔,所以需要将路由连接到需要inter-vlan的各vlan通道。也就是路由充当了多个虚拟网之间的网关。

VLAN技术的实现

在报文的TCL字节中,存在着VLAN ID,交换机通过报文中的VLAN ID来实现相应功能。

VLAN ID的可用范围:1~4094