设计错误引来的思考

       
   今天工作不忙,闲来无事,正好同事问我一个vlan的问题:局域网里面有VLAN,然后一台2960做接入交换机,每个口接一台PC,比如F0/1,属于vlan2,接PC1,现在,问题来了,办公室多来了一个人,要用PC2和网络,也属于vlan2,问我,能不能在F0/1下挂一个傻瓜交换机,PC1PC2连接这个傻瓜交换机,都用vlan2段的地址。这显然是可以的,之前也碰到过这个问题,他一试,确实可以。
我忽然有一个想法:假如把这个傻瓜交换机换成一台2960,然后2960什么配置也不做,可不可以?
之前我并没有考虑过傻瓜交换机的通信原理,以为是很简单的事情。现在换成是2960了,确实值得去考虑一下。
为什么换成2960了要考虑一下?我是这么想的:默认cisco交换机端口全部是access,且属于vlan1,而上面是一个access vlan2的接口,vlan信息根本不同步,那么就不能通信,不能用2960
可是一个傻瓜交换机都能做到的事情,cisco就不能做到了?这是什么道理??
我决定做实验去研究一下,先用模拟器再用真机,模拟器就用ciscoPacket Tracert 5.2
第一个实验:请看附件图片1
图片1.JPG (20.88 KB)
3PC网关均为192.168.1.1,然后都去ping 192.168.1.1,发现,是能ping通的
这就说明,我的猜测是错误的,用2960代替傻瓜交换机是可以的
至于原因,下面再来研究
三层交换在这里没什么用嘛,换成2层的来看看
第二个实验:请看附件图片2

 
图片2.JPG (20.61 KB)
这里3PC的网关仍然为192.168.1.1,然后去ping 192.168.1.1,也是能通的,这跟预想的情况是一样的。
下面的交换机全部接口为vlan1,那我改成其他的vlan,比如vlan3,那结果如何?
第三个实验:请看附件图片3

图片3.JPG (25.28 KB)

 

这里3PC的网关仍然为192.168.1.1,所改变的是下面交换机的端口全部access vlan 3,还有个vlan 3的地址
那么,现在在pcping 192.168.1.10这肯定是通的
那在pcping 192.168.1.1通不通呢?
有点小兴奋,居然通了!!!
百思不得其解啊百思不得其解
为什么?为什么?如果我在两个交换机上划不同的vlan,能不能通?对,2层交换,不是3
请看最后一个实验
第四个实验:请看附件图片4

图片4.JPG (22.1 KB)

 
图中4PC均未设置网关,掩码为24
我们用4PC互相去ping,看看会是什么结果
结果如何?
交换机0上的主机0  192.168.1.2(属于vlan10)能够ping通交换机1上的主机3  192.168.1.5(属于vlan20
其他的均ping不通
哈哈,是不是很神奇,2层交换,不同vlan间能互通
可是为什么?为什么会这样?这好像跟我所学的冲突啊,本来不应该是这样的,这。。这。。太不可思议了
难道是模拟器出了问题?用真机去试试
事实上,用真机是一样的效果
这,就是vlan的秘密
 
 
  这样的情况,如果你是的经验十足的工程师的话,可能你就不会这样设计网络,因为这样的网络设计是没有什么意思的,在实际环境中。因为我们会选择两个交换机间使用TRUNK来传递不同VLAN之间的信息。为什么我在这里会将此博文提一下呢,因为它说明了一个VLAN之间的小知识点哦。
   不知道你想透了没有。呵呵……是什么原因会出现上面的那种情况,主机0只能与主机3通信。其它都不可以?
  
   它们之间就在于一个tag与untag。
   对于ACCESS接口,个人PC上的数据到达交换机之后,交换机就会给它打上一个VLAN TAG,然而在离开交换机的时候交换机又会将这个VLAN TAG 剥掉,所以出现上面4的情况。
   如主机0发一个报文到交换机0的时候,交换机0将它打上VLAN 10的TAG,但是当它从接口FA0/0出来的时候,这个VLAN TAG就被剥掉了,然而数据到达交换机1的时候,接口又给它打上的VLAN 20的TAG,所以到达对端之后就只能与VLAN 20网段的PC进行通信了。
 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章