一、vlan的作用
隔离广播域
二、vlan接口划分
进 | 出 | |
access | 无tag:打上pvid的tag 有tag:只接受pvid的tag | 去掉tag;转发 |
trunk | 无tag:接收报文+pvid 有tag: ==检查allow-pass vlan== 符合:接受 不符合:丢弃 | ==检查allow-pass vlan== 不符合:不发 符合:检查pvid是否匹配 否:转发 是:去tag;转发 |
hybrid | 无tag:接收报文+pvid 有tag: ==检查allow-pass vlan== 符合:接受 不符合:丢弃 | ==检查allow-pass vlan== 不符合:不发 符合:检查pvid是否匹配 否:转发 是:去tag;转发 |
trunk 与 hybrid 区别
当报文的VLAN ID是端口允许通过的VLAN ID时,发送该报文,并可以配置端口在发送该VLAN的报文时是否携带Tag |
hybrid意义:
1、统一配置:代替access和trunk
2、实现二层不同vlan间互访
三、vlan 实验
拓扑
sw1
#
vlan 10
// 启用vlan10
#
interface Vlanif10
ip address 1.1.1.100 255.255.255.0
// vlanif添加地址
#
interface GigabitEthernet0/0/1
port hybrid pvid vlan 10
undo port hybrid vlan 1
port hybrid untagged vlan 10
// 连接终端接口用hybrid接口,打上vlan 10的pvid标签
#
interface GigabitEthernet0/0/24
port link-type trunk
port trunk pvid vlan 10
port trunk allow-pass vlan 2 to 4094
// 与交换机互联接口用trunk,放通所有vlan,pvid使用vlan10
#
sw2
#
vlan 10
// 启用vlan10
#
interface Vlanif10
ip address 1.1.1.200 255.255.255.0
// vlanif添加地址
#
interface GigabitEthernet0/0/1
port hybrid pvid vlan 10
undo port hybrid vlan 1
port hybrid untagged vlan 10
// 连接终端接口用hybrid接口,打上vlan 10的pvid标签
#
interface GigabitEthernet0/0/24
port link-type trunk
port trunk allow-pass vlan 2 to 4094
// 与交换机互联接口用trunk,放通所有vlan,pvid使用默认vlan1
#
配置完之后 在pc2上ping测试与pc3的连通性;发现不通
解释:
1、pc2发送广播包 sw1接受广播包,打上pvid并建立对应mac表象,
2、数据包被打上vlan10的标签后,在sw1中泛洪所有放通vlan10的接口;24口放通vlan10;由24口转发出去,由于24口的pvid是vlan10,数据包被去掉标签转发出去;
3、sw2的24接口接收数据包,并打上默认的pvid vlan1 在默认的vlan1内进行泛洪;发现没有端口能转发vlan1;故把该数据包丢弃
通过上述分析发现问题出现在了 SW2上;那要如何解决呢。
解决方案
1.我们首选的方法是将sw2的24口的默认pvid进行修改,修改成pvid vlan10,这样就能达到数据包进入sw2后在vlan10内的接口泛洪,就能在1口广播让pc3接收到数据包。
2.也可以将sw2的1口的pvid删除,改成默认的pvid vlan 1,这样也能达到数据包从24口接收后打上vlan1的标签,然后在vlan1接口泛洪,pc3也能接收到数据包。
两种方案只取其一;即可达到需求pc2ping通pc3
四、super vlan与sub vlan
目的:节省IP网段
实验:
sw1
#
vlan batch 10 20 100
//启用vlan
#
#
vlan 100
aggregate-vlan
access-vlan 10 20
// 设置vlan 100 为super-vlan vlan10 20 为 sub-vlan
#
#
interface Vlanif100
ip address 1.1.1.100 255.255.255.0
arp-proxy inter-sub-vlan-proxy enable
// super-vlan内添加地址;开启VLAN间的Proxy ARP功能
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 20
#
pc1能ping通pc2
原理
1、pc1发送arp-request广播包到sw1、数据包是没有标签的,进入到1口被打上pvid vlan 10 的标签;
2、arp-request向vlan10泛洪;由于vlan10 是sub-vlan聚合在了super-vlan100中;接收广播数据包的super-vlan100;
3、因为super-vlan开启了vlan间的proxy arp功能,查询路由表中是否存在target ip 路由;路由表中存在本路由并指向vlanif 100;又因为vlanif 100 配置了arp代理,就会向super-vlan对应的sub-vlan接口发送arp-request;target ip 1.1.1.2;pc2回复arp-reply。
4、sw1收到pc2回复的arp-reply;形成arp表项;sw1用自己vlanif100 的mac地址回复 arp(arp代理作用)
5、pc1收到回复的arp-reply,建立新的arp表项,将sw1vlanif100的mac地址加入的arp表中。