大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
相关名词:Virtual Local Area Network—VLAN、 Virtual Private Network—VPN、Virtual Redundancy Protocol—VRRP等。
一。VLAN 的作用
把一个广播帧所能到达的整个范围称为二层广播域,简称广播域。显然,一个交换网络其实就是一个广播域。
在该网络中,假定PC 0向PC 10发送一个单播帧Y。假定此时的S1、S3、S7的MAC地址表中存在关于PC 10的MAC地址的表项,但S2和S5的MAC地址表中不存在关于PC 10的MAC地址的表项。所以,S1和S3会对Y帧进行点到点的转发操作,S7将对Y帧进行丢弃操作S2和S5将对Y帧执行泛洪操作。
最后的结果:目的主机PC 10接收到应该接收的Y帧,但是同时,PC3、PC4、PC5、PC6、PC7、PC8这几个主机都接收到了这个本不该接收的Y帧。
这便产生了一些问题:1.网络安全问题(接收到本不该接收的数据帧,就可能存在安全隐患);2.垃圾流量问题(会浪费网络的带宽资源以及计算机的处理资源)。
而且,广播域越大,上面存在的安全问题和垃圾流量问题就会越严重。
1.VLAN技术:通过在交换机上部署VLAN机制,可以将一个规模较大的广播域在逻辑上划分成若干个不同的、规模较小的广播域,可以有效的提高网络的安全性,减少垃圾流量的产生。
通常将划分前的、规模较大的广播域称为LAN,把划分后、规模较小的每一个广播域称为一个Virtual LAN或VLAN 。例如:把一个规模较大的广播域划分成4个规模较小的广播域时,可以说成把一个LAN划分成了4个VLAN。
特别强调:在一个广播域内,任何两台终端计算机之间都可以进行二层(数据链路层)通信。二层通信:是指通信的双方是以直接交换帧的形式来传递信息的。所以,目的计算机所接收到的帧与源计算机发出的帧是一模一样的,帧的目的MAC地址、源MAC地址、类型值、载荷数据、CRC等内容都没有发生变化。二层通信中,信息源发送的帧可能会通过交换机进行二层转发,但一定不会经过路由器(或具有三层转发功能的交换机)进行三层转发。
因为,源计算机在向目的计算机传递信息时,如果源计算机发出的帧经过路由器(或具有三层转发功能的交换机)的转发,那目的计算机接收到的帧一定不是源计算机发出的那个帧。至少,目的计算机接受到的帧的目的MAC地址和源MAC地址一定不同源计算机发出的帧的目的MAC地址和源MAC地址。在这样的情况下,源计算机与目的计算机之间的通信不再是二层通信,而是三层通信。
一个VLAN就是一个广播域,所以在同一个VLAN内部,计算机之间的通信就是二层通信。如果计算机与目的计算机处在不同的VLAN中,那么它们之间是无法进行二层通信的,只能进行三层通信来传递信息。
二。VLAN基本原理
原理一:
该图显示的是:一台交换机连接了6台PC机,原本这属于一个广播域,现在因为VLAN技术,划分成了两个较小的广播域。由于在交换机上进行了相关的VLAN配置,所以交换机知道自己的每个端口属于哪个VLAN。
注意:计算机本身是不能感知VLAN的,在计算机的“头脑”中是没有VLAN这个概念的,在计算机上也不会进行任何有关VLAN的配置。
原理二:
该图显示的是:PC-1发送了一个广播帧X。这个X帧是从属于VLAN 2 进入交换机的,所以交换机会判定这个X帧是属于VLAN 2的,于是交换机只会想属于VLAN 2的端口进行对X帧的泛洪操作。所以最后,只有PC-2和PC-6能收到这个帧,其他的VLAN收不到该X帧。
原理三:
该图显示的是:PC-1向PC-6发送一个单播帧Y,而且交换机的VLAN 2的MAC地址表中存在关于PC-6的MAC地址的表项。在Y帧从属于VLAN 2的端口Port 1进入交换机时,交换机会认为Y帧是属于VLAN 2的。所以,交换机会查询VLAN 2的MAC地址表后,会将Y帧点到点的向同属于VLAN 2的Port 6进行转发。(如果交换机的VLAN 2的MAC地址表中不存在关于PC-6的MAC地址的表项,则交换机会向Port 2和Port 6对Y帧执行泛洪的操作。而PC-2收到Y帧后,将其丢弃;PC-6收到后,进行后续处理)。
原理四:
该图显示的是:PC-1向PC-3发送了一个单播帧Z。而这个Z帧是从属于VLAN 2的Port 1端口进入交换机的,交换机会认为Z帧是属于VLAN 2 的。交换机的VLAN 2的MAC地址表项中在正常情况下是不存在关于PC-3的MAC地址的表项的,所以,交换机会向PC-2和PC-6的端口泛洪Z帧。最后的结果是:PC-2和PC-6会收到Z帧,并将其丢弃;而PC-3无法收到Z帧,因为交换机阻断了PC-1和PC-3之间的二层通信。
原理五:
该图显示的是:一个交换网络中被分成了两个VLAN,分别是VLAN 2 和VLAN 3。由于在每台交换机上都配置了VLAN,所以交换机知道自己的哪些端口属于VLAN 2,哪些端口属于VLAN 3;而哪些端口既属于VLAN 2又属于VLAN 3。
原理六:
该图显示的是:PC-1发送一个广播帧X。在交换机判定出X帧是属于VLAN 2的,于是向Port 2和Port 4执行泛洪的转发操作。交换机3收到该帧后,判断出其属于VLAN 2,接着向Port 2泛洪X帧。而交换机2在收到X帧后,判断出其属于VLAN 2的,于是向Port 1泛洪X帧。最后是:PC-2和PC-4都会接收到X帧。
原理七:
该图显示的是:PC-1向PC-4发送一个单播帧Y,而且所有的交换机的VLAN 2的MAC地址表中都存在关于PC-4的MAC地址的表项。在交换机1判定Y帧属于VLAN 2后,会查询自己的VLAN 2的MAC地址表后,将Y帧点到点的向Port 4转发。而交换机3在Port 1 端口接收到Y帧,会通过某种方法识别出该帧是属于VLAN 2的。进而查询自己的VLAN 2 的MAC地址表后,将Y帧点对点的想Port 2端口转发。交换机2收到Y帧,判断出其属于VLAN 2,查询自己的MAC地址表,向Port 1 端口转发。最后是PC-4收到该Y帧。
原理八:
该图显示的是:PC-1向PC-6发送一个单播帧Z。而所有的交换机的VLAN 2的MAC地址表中在正常的情况下是不存在关于PC-6的MAC地址的表项的。在转发过程中,交换机1会判定Z帧是属于VLAN 2。但是,交换机1在自己的MAC地址表中是查不到关于PC-6的MAC地址的表项的。那么,交换机1会向Port 2和Port 4泛洪Z帧。经过交换机3的转发,交换机2收到Z帧后,进行判断,然后查找自己的MAC地址表,最后向Port1泛洪。结果:PC-2和PC-4都会接收到Z帧,但是PC-6无法收到Z帧,这是因为交换机阻断了PC-1和PC-6之间的二层交换。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/169366.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...