您的位置:首页 > 其它

通过子接口实现不同vlan间的互通(也称为:单臂路由)

2016-12-18 12:56 411 查看
以太网子接口常用于vlan间的三层互通和局域网与广域网间的互联。因传统的三层网接口不支持vlan,当收到vlan报文时会当做非法报文而丢弃,通过在子接口上部署终结子接口功能将vlan报文中的vlan标签去掉,从而实现vlan间的三层互通(终结子接口不仅能剥离vlan,也能添加vlan)

不同Vlan间互通可以通过vlanif接口来实现,也可以通过路由器的子接口来实现。下面的例子通过子接口来实现vlan20和vlan 30之间互通,交换机的GE0/0/1接口允许通过vlan30,vlan 20,在路由器AR1的GE0/0/0上做子接口来实现不同vlan间的互通,拓扑图如下:



AR1配置如下:

interface GigabitEthernet0/0/0
#
interface GigabitEthernet0/0/0.10
 dot1q termination vid 30
 ip address 192.168.10.1 255.255.255.0 
 arp broadcast enable
#
interface GigabitEthernet0/0/0.20
 dot1q termination vid 20
 ip address 192.168.20.1 255.255.255.0 
 arp broadcast enable 
#

交换机配置如下:

#
interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 20 30// 注意没有配置 端口的pvid ,也不能配置为20或30中的一个,否则不通(因终结子接口处理收到的报文必须是带标签的)

#
interface GigabitEthernet0/0/2
 port hybrid pvid vlan 30
 port hybrid untagged vlan 30
#
interface GigabitEthernet0/0/3
 port hybrid pvid vlan 20 //必须有,不然默认pvid为1,PC发送的报文进入时都会打上pvid为1的标签。所有的端口默认都允许vlan1的报文通过。
 port hybrid untagged vlan 20
#

--------------------------------------------------------------------------------------------------------------------------------

上述配置,试验可以实现PC1与PC2互通;

PC2 PING PC1过程中,GE0/0/1口抓包结果展示:



应为192.168.10.2 与 PC2 不在同一个网段,需要先找到网关的地址;上图可以看出,共有4个ICMP包,第一个包的vlan tag 是20 ,是LSW1 至AR1的0/0/0.20子接口;查询路由表,路由器找到目的地址的下一跳,将数据包从G0/0/0.10子接口转发出去,第二个包
vlan tag是 30。第三个包是应答包,从PC1途经LSW1至AR1的G0/0/0.10接口,所以第三个包的vlan tag 是30 ;第四个包也是应答包,从路由器的G0/0/0.20子接口途经LSW1至PC2,所以,此包的vlan tag 为 20.

注意:因为路由器的子接口配置了dot1q terminal vlan ,所以从交换机G0/0/1口发出的帧必须是带vlan tag ,否则,PC1与PC2不通。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: