跨交换机相同VLAN间通讯
一、实验目的
1、了解IEEE802.1q的实现方法,掌握跨二层交换机相同VLAN间通信的调试方法;
2、了解交换机接口的trunk模式和access模式;
3、了解交换机的tagged端口和untagged端口的区别。
二、应用环境
教学楼有两层,分别是一年级、二年级,每个楼层都有一台交换机满足老师上网需求;每个年级都有语文教研组和数学教研组;两个年级的语文教研组的计算机可以互相访问;两个年级的数学教研组的计算机可以互相访问;语文教研组和数学教研组之间不可以自由访问;
通过划分VLAN使得语文教研组和数学教研组之间不可以自由访问;使用802.1Q进行跨交换机的VLAN。
三、实验设备
1、DCS-3926S交换机2台
2、PC机2台
3、Console线1根
4、直通网线2根
四、实验拓扑
五、实验要求
在交换机A和交换机B上分别划分两个基于端口的VLAN:VLAN100,VLAN200。
VLAN |
端口成员 |
100 |
1~8 |
200 |
9~16 |
Trunk口 |
24 |
使得交换机之间VLAN100的成员能够互相访问,VLAN200的成员能够互相访问;VLAN100和VLAN200成员之间不能互相访问。
PC1和PC2的网络设置为:
设备 |
IP地址 |
Mask |
交换机A |
192.168.1.11 |
255.255.255.0 |
交换机B |
192.168.1.12 |
255.255.255.0 |
PC1 |
192.168.1.101 |
255.255.255.0 |
PC2 |
192.168.1.102 |
255.255.255.0 |
PC1、PC2分别接在不同交换机VLAN100的成员端口1~8上,两台PC互相可以ping通;PC1、PC2分别接在不同交换机VLAN的成员端口9~16上,两台PC互相可以ping通;PC1和PC2接在不同VLAN的成员端口上则互相ping不通。
若实验结果和理论相符,则本实验完成。
六、实验步骤
第一步:交换机恢复出厂设置
switch#set default
switch#write
switch#reload
第二步:给交换机设置标示符和管理IP。
交换机A:
switch(Config)#hostname switchA
switchA(Config)#interface vlan 1
switchA(Config-If-Vlan1)#ip address 192.168.1.11 255.255.255.0
switchA(Config-If-Vlan1)#no shutdown
switchA(Config-If-Vlan1)#exit
switchA(Config)#
交换机B:
switch(Config)#hostname switchB
switchB(Config)#interface vlan 1
switchB(Config-If-Vlan1)#ip address 192.168.1.12 255.255.255.0
switchB(Config-If-Vlan1)#no shutdown
switchB(Config-If-Vlan1)#exit
switchB(Config)#
第三步:在交换机中创建vlan100和vlan200,并添加端口。
交换机A:
switchA(Config)#vlan 100
switchA(Config-Vlan100)#
switchA(Config-Vlan100)#switchport interface ethernet 0/0/1-8
switchA(Config-Vlan100)#exit
switchA(Config)#vlan 200
switchA(Config-Vlan200)#switchport interface ethernet 0/0/9-16
switchA(Config-Vlan200)#exit
switchA(Config)#
验证配置:
switchA#show vlan
VLAN NameTypeMediaPorts
---- ------------ ---------- --------- ----------------------------------------
1defaultStaticENETEthernet0/0/17Ethernet0/0/18
Ethernet0/0/19Ethernet0/0/20
Ethernet0/0/21Ethernet0/0/22
Ethernet0/0/23Ethernet0/0/24
100VLAN0100StaticENETEthernet0/0/1Ethernet0/0/2
Ethernet0/0/3Ethernet0/0/4
Ethernet0/0/5Ethernet0/0/6
Ethernet0/0/7Ethernet0/0/8
200VLAN0200StaticENETEthernet0/0/9Ethernet0/0/10
Ethernet0/0/11Ethernet0/0/12
Ethernet0/0/13Ethernet0/0/14
Ethernet0/0/15Ethernet0/0/16
switchA#
交换机B:
配置与交换机A一样。
第四步:设置交换机trunk端口
交换机A:
switchA(Config)#interface ethernet 0/0/24
switchA(Config-Ethernet0/0/24)#switchport mode trunk
Set the port Ethernet0/0/24 mode TRUNK successfully
switchA(Config-Ethernet0/0/24)#switchport trunk allowed vlan all
set the port Ethernet0/0/24 allowed vlan successfully
switchA(Config-Ethernet0/0/24)#exit
switchA(Config)#
验证配置:
switchA#show vlan
VLAN NameTypeMediaPorts
---- ------------ ---------- --------- ----------------------------------------
1defaultStaticENETEthernet0/0/17Ethernet0/0/18
Ethernet0/0/19Ethernet0/0/20
Ethernet0/0/21Ethernet0/0/22
Ethernet0/0/23
Ethernet0/0/24(T)
100VLAN0100StaticENETEthernet0/0/1Ethernet0/0/2
Ethernet0/0/3Ethernet0/0/4
Ethernet0/0/5Ethernet0/0/6
Ethernet0/0/7Ethernet0/0/8
Ethernet0/0/24(T)
200VLAN0200StaticENETEthernet0/0/9Ethernet0/0/10
Ethernet0/0/11Ethernet0/0/12
Ethernet0/0/13Ethernet0/0/14
Ethernet0/0/15Ethernet0/0/16
Ethernet0/0/24(T)
switchA#
24口已经出现在vlan1、vlan100和vlan200中,并且24口不是一个普通端口,是tagged端口。
交换机B:
配置同交换机A
第五步:验证实验。
交换机Aping交换机B:
switchA#ping 192.168.1.12
Type ^c to abort.
Sending 5 56-byte ICMP Echos to 192.168.1.12, timeout is 2 seconds.
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max =1/1/1ms
switchA#
表明交换机之前的trunk链路已经成功建立。
按下表验证,PC1插在交换机A上,PC2插在交换机B上:
PC1位置 |
PC2位置 |
动作 |
结果 |
1-8端口 |
PC1 ping交换机B |
不通 |
|
9-16端口 |
PC1 ping交换机B |
不通 |
|
17-24端口 |
PC1 ping交换机B |
通 |
|
1-8端口 |
1-8端口 |
PC1 ping PC2 |
通 |
1-8端口 |
9-16端口 |
PC1 ping PC2 |
不通 |
七、注意事项和排错
1、取消一个vlan可以使用“no vlan”。
2、取消vlan的某个端口可以在vlan模式下使用“no switchport interface ethernet 0/0/x”。
3、当使用“switchport trunk allowed vlan all”命令后,所有以后创建的vlan,中都会自动添加trunk口为成员端口;
八、配置序列
switchA#show run
Current configuration:
!
hostname switchA
!
Vlan 1
vlan 1
!
Vlan 100
vlan 100
!
Vlan 200
vlan 200
!
!
Interface Ethernet0/0/1
switchport access vlan 100
!
Interface Ethernet0/0/2
switchport access vlan 100
!
Interface Ethernet0/0/3
switchport access vlan 100
!
Interface Ethernet0/0/4
switchport access vlan 100
!
Interface Ethernet0/0/5
switchport access vlan 100
!
Interface Ethernet0/0/6
switchport access vlan 100
!
Interface Ethernet0/0/7
switchport access vlan 100
!
Interface Ethernet0/0/8
switchport access vlan 100
!
Interface Ethernet0/0/9
switchport access vlan 200
!
Interface Ethernet0/0/10
switchport access vlan 200
!
Interface Ethernet0/0/11
switchport access vlan 200
!
Interface Ethernet0/0/12
switchport access vlan 200
!
Interface Ethernet0/0/13
switchport access vlan 200
!
Interface Ethernet0/0/14
switchport access vlan 200
!
Interface Ethernet0/0/15
switchport access vlan 200
!
Interface Ethernet0/0/16
switchport access vlan 200
!
Interface Ethernet0/0/17
!
Interface Ethernet0/0/18
!
Interface Ethernet0/0/19
!
Interface Ethernet0/0/20
!
Interface Ethernet0/0/21
!
Interface Ethernet0/0/22
!
Interface Ethernet0/0/23
!
Interface Ethernet0/0/24
switchport mode trunk
!
interface Vlan1
interface vlan 1
ip address 192.168.1.11 255.255.255.0
!
switchA#
九、共同思考
Trunk、access、tagged、untagged这几个专业术语的关联与区别是什么?
十、课后练习
请给交换机A和B分别划分三个vlan,验证vlan实验
VLAN |
端口成员 |
10 |
5~8 |
20 |
9~12 |
30 |
13~16 |
Trunk |
1~4 |
十一、相关配置命令详解
switchport access vlan
命令:switchport access vlan <vlan-id>
noswitchport access vlan
功能:将当前Access端口加入到指定VLAN;本命令no操作为将当前端口从VLAN里删除。
参数:<vlan-id>为当前端口要加入的vlan VID,取值范围为1~4094。
命令模式:端口配置模式
缺省情况:所有端口默认属于VLAN1。
使用指南:只有属于Access mode的端口才能加入到指定的VLAN中,并且Access端口同时只能加入到一个VLAN里去。
举例:设置某Access端口加入VLAN100。
Switch(Config)#interface ethernet 0/0/8
Switch(Config-ethernet0/0/8)#switchport mode access
Switch(Config-ethernet0/0/8)#switchport access vlan 100
Switch(Config-ethernet0/0/8)#exit
switchport mode
命令:switchport mode {trunk|access}
功能:设置交换机的端口为access模式或者trunk模式。
参数:trunk表示端口允许通过多个VLAN的流量;access为端口只能属于一个VLAN。
命令模式:端口配置模式
缺省情况:端口缺省为Access模式。
使用指南:工作在trunk mode下的端口称为Trunk端口,Trunk端口可以通过多个VLAN的流量,通过Trunk端口之间的互联,可以实现不同交换机上的相同VLAN的互通;工作在access mode下的端口称为Access端口,Access端口可以分配给一个VLAN,并且同时只能分配给一个VLAN。
注意在Trunk端口不允许802.1X认证。
举例:将端口5设置为trunk模式,端口8设置为access模式。
Switch(Config)#interface ethernet 0/0/5
Switch(Config-ethernet0/0/5)#switchport mode trunk
Switch(Config-ethernet0/0/5)#exit
Switch(Config)#interface ethernet 0/0/8
Switch(Config-ethernet0/0/8)#switchport mode access
Switch(Config-ethernet0/0/8)#exit
switchport trunk allowed vlan
命令:switchport trunk allowed vlan {<vlan-list>|all}
noswitchport trunk allowed vlan
功能:设置Trunk端口允许通过VLAN;本命令的no操作为恢复缺省情况。
参数:<vlan-list>为允许在该Trunk端口上通过的VLAN列表;all关键字表示允许该Trunk端口通过所有VLAN的流量。
命令模式:端口配置模式
缺省情况:Trunk端口缺省允许通过所有VLAN。
使用指南:用户可以通过本命令设置哪些VLAN的流量通过Trunk端口,没有包含的VLAN流量则被禁止。
举例:设置Trunk端口允许通过VLAN1,3,5-20的流量。
Switch(Config)#interface ethernet 0/0/5
Switch(Config-ethernet0/0/5)#switchport mode trunk
Switch(Config-ethernet0/0/5)#switchport trunk allowed vlan 1;3;5-20
Switch(Config-ethernet0/0/5)#exit
switchport trunk native vlan
命令:switchport trunk native vlan <vlan-id>
noswitchport trunk native vlan
功能:设置Trunk端口的PVID;本命令的no操作为恢复缺省值。
参数:<vlan-id>为Trunk端口的PVID。
命令模式:端口配置模式
缺省情况:Trunk端口默认的PVID为1。
使用指南:在802.1Q中定义了PVID这个概念。Trunk端口的PVID的作用是当一个untagged的帧进入Trunk端口,端口会对这个untagged帧打上带有本命令设置的native PVID的tag标记,用于VLAN的转发。
举例:设置某Trunk端口的native vlan为100。
Switch(Config)#interface ethernet 0/0/5
Switch(Config-ethernet0/0/5)#switchport mode trunk
Switch(Config-ethernet0/0/5)#switchport trunk native vlan 100
Switch(Config-ethernet0/0/5)#exit