您的位置:首页 > 其它

一个经典二层VLAN互通问题

2010-07-14 01:54 176 查看
一个经典二层VLAN互通问题
在同一VLAN,两个不同网段的地址能不能互通,为什么?不同VLAN,相同网段的地址能不能互通,如不能,需要怎么做?
个人观点:
同一VLAN的不同网段,不能通信;不同VLAN,相同网段也不能通信。只有同网段同VLAN才能通信(在不起路由的情况下)
原理:
1、使用IP的设备A------------------------三层交换机------------------------使用IP的设备B   比如A要给B发送数据,已知目的IP,那么A就用子网掩码取得网络地址,判断目的IP是否与自己在同一网段。  
 如果在同一网段,但不知道转发数据所需的MAC地址,A就发送一个ARP请求,B返回其MAC地址,A用此MAC封装数据包并发送给交换机,交换机起用二层交换模块,查找MAC地址表,将数据包转发到相应的端口。  
 如果目的IP地址显示不是同一网段的,那么A要实现和B的通讯,在流缓存条目中没有对应MAC地址条目,就将第一个正常数据包发送向一个缺省网关,这个缺省网关一般在操作系统中已经设好,对应第三层路由模块,所以可见对于不是同一子网的数据,最先在MAC表中放的是缺省网关的MAC地址;然后就由三层模块接收到此数据包,查询路由表以确定到达B的路由,将构造一个新的帧头,其中以缺省网关的MAC地址为源MAC地址,以主机B的MAC地址为目的MAC地址。通过一定的识别触发机制,确立主机A与B的MAC地址及转发端口的对应关系,并记录进流缓存条目表,以后的A到B的数据,就直接交由二层交换模块完成。

2、不同VLAN,相同网段的地址不能互通,因为VLAN隔离了广播域。用华为的super Vlan可以实现互通。
Super VLAN 其原理是一个Super VLAN包含多个Sub VLAN,Super VLAN 可配置虚接口的IP 地址。每个Sub VLAN 是一个广播域,不同Sub VLAN 之间二层相互隔离,Sub VLAN 不能配置虚接口IP 地址。当Sub VLAN 内的用户需要进行三层通信时,将使用Super VLAN 的虚接口的IP 地址作为网关地址,这样多个VLAN 共享一个IP 地址,从而节省了IP 地址资源。同时,为了实现不同Sub VLAN 间的三层互通及Sub VLAN 与其他网络的互通,需要利用ARP 代理功能。通过ARP 代理可以进行ARP 请求和响应报文的转发与处理,从而实现了二层隔离端口间的三层互通。本文出自 “炎岩龙” 博客,请务必保留此出处http://yanyl.blog.51cto.com/180272/349098
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: