思科模拟器实验01-交换机VLAN&TRUNK
交换机的工作原理
1、交换机首先学习帧中的源MAC地址来形成MAC地址表。
2、然后检查帧中的目标MAC地址,并匹配MAC地址表:
- 如表总有匹配项,则单播转发;
- 如表中无匹配项,则交换机除接受端口外广播转发。
3、MAC地址表得老化时间默认是300秒(可修改)。
实验拓扑图
连线规则:交换机之间应该使用交叉线(一端采用T568A标准,另一端采用T568B标准),交换机与主机之间应该使用直通线(两端采用T568B或T568A的标准)。
网线类型 | 常见应用 |
---|---|
直通网线 | 交换机和路由器连接;交换机和服务器连接;集线器和服务器连接 |
交叉网线 | 交换机和交换机连接;交换机和集线器连接;集线器和集线器连接;路由器和路由器连接;路由器和个人电脑连接 |
实验目的
- 学会配置VLAN,实现端到端VLAN通信
- 配置Trunk流量控制
- 熟悉交换机配置
关于VLAN
为实现交换机以太网的广播隔离,一种理想的解决方案就是采用虚拟局域网技术。这种对连接到第2层交换机端口的网络用户的逻辑分段技术实现非常灵活,它可以不受用户物理位置限制,根据用户需求进行VLAN划分;可在一个交换机上实现,也可跨交换机实现;可以根据网络用户的位置、作用、部门或根据使用的应用程序、上层协议或者以太网连接端口硬件地址来进行划分。
一个VLAN相当于OSI模型第2层的广播域,它能将广播控制在一个VLAN内部。而不同VLAN之间或VLAN与LAN / WAN的数据通信必须通过第3层(网络层)完成。否则,即便是同一交换机上的连接端口,假如它们不处于同一个VLAN,正常情况下也无法进行数据通信,特例是由于思科生产的交换机带有VLAN穿越漏洞,外来分组以广播进到该交换机时,它仍然会流入所有连至交换机上的电脑,而导致信息可能外泄的潜藏风险。
VLAN的作用
- 广播控制
- 宽带利用
- 降低延迟
- 安全性(非设计作用,本身功能所附加出的)
VLAN的运作原理与实现方式
- 物理层(physical layer)
直接以交换机上的端口做为划分VLAN的基础。
这个方式的优点是简单与直观,因此,运用这种设置VLAN的情况十分普遍。但因为是物理层的设置,所以比较适合在规模不大的组织。
- 数据链路层(data link layer)
以每台主机的MAC地址做为划分VLAN的基础。方法是先创建一个比较复杂的数据库,通常为某网络设备的MAC地址与VLAN的映射关系数据库。当该网络设备连接到端口后,交换机会向VMPS(VLAN管理策略服务器)来请求这个数据库。找到相应映射关系,完成端口到VLAN的分配。
这个方式的优点是即使电脑在实体上的位置不同,也不影响VLAN的运作。但缺点是网管人员必须在交换机中设置组织内每一台设备MAC地址与VLAN间的映射关系数据库。因此,这种设置策略的管理复杂度会随着越来越多的设备、与实体位置的群落、和不同工作任务需要而增加。
- 网络层(network layer)
以每台设备的IP地址做为划分VLAN的基础,以子网视为VLAN设置的依据。
这个方式的优点是当网管人员已经将内部网段做好规划与分配的情况下,将可大辐降低网管人员规划并设置VLANs架构的复杂度。但缺点是原本传统交换机不需要对帧作任何处理,但在这个机制下,交换机不但必须剖析帧(Frame),还必须进一步取出Source IP与Destination IP进行比对,连带降低交换机接收与分派分组的效率。
注:信息来源维基百科
实验配置
PC ip地址配置
其它:略
SW0配置
Switch>enable Switch#conf t Enter configuration commands, one per line. End with CNTL/Z. Switch(config)#vlan 2 //如果不存在,则创建VLAN2 Switch(config-vlan)#name fd //将VLAN2命名为fd Switch(config-vlan)#exit Switch(config)#vlan 3 //创建VLAN3 Switch(config-vlan)#name IT //将VLAN3命名为IT Switch(config-vlan)#exit Switch(config)#int f0/2 //端口2 Switch(config-if)#switchport access vlan 2 //将端口2加入vlan2 Switch(config-if)#int f0/3 //端口3 Switch(config-if)#switchport access vlan 2 //将端口3加入vlan2 Switch(config)#int f0/4 //端口4 Switch(config-if)#switchport access vlan 3 //将端口4加入vlan3 Switch(config)#int f0/24 Switch(config-if)#switchport mode trunk //24端口设置为trunk Switch(config-if)#end Switch#show vlan //查看vlan接口信息 VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Fa0/1, Fa0/5, Fa0/6, Fa0/7 Fa0/8, Fa0/9, Fa0/10, Fa0/11 Fa0/12, Fa0/13, Fa0/14, Fa0/15 Fa0/16, Fa0/17, Fa0/18, Fa0/19 Fa0/20, Fa0/21, Fa0/22, Fa0/23 Fa0/24, Gig0/1, Gig0/2 2 fd active Fa0/2, Fa0/3 3 IT active Fa0/4 4 VLAN0004 active 1002 fddi-default active 1003 token-ring-default active 1004 fddinet-default active 1005 trnet-default active VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2 ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------ 1 enet 100001 1500 - - - - - 0 0 2 enet 100002 1500 - - - - - 0 0 3 enet 100003 1500 - - - - - 0 0 4 enet 100004 1500 - - - - - 0 0 1002 fddi 101002 1500 - - - - - 0 0 1003 tr 101003 1500 - - - - - 0 0 1004 fdnet 101004 1500 - - - ieee - 0 0 1005 trnet 101005 1500 - - - ibm - 0 0 VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2 ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------ Remote SPAN VLANs ------------------------------------------------------------------------------ Primary Secondary Type Ports ------- --------- ----------------- ------------------------------------------
SW1配置
Switch>enable Switch#conf t Enter configuration commands, one per line. End with CNTL/Z. Switch(config)#vlan 2 //创建VLAN2 Switch(config-vlan)#name fd //VLAN命名为fd Switch(config-vlan)#vlan 3 //创建VLAN3 Switch(config-vlan)#name IT //VLAN命名为IT Switch(config-vlan)#exit Switch(config)#int f0/2 //端口2 Switch(config-if)#switchport access vlan 2 //将端口2加入vlan2 Switch(config-if)#int f0/3 Switch(config-if)#switchport access vlan 2 //将端口3加入vlan2 Switch(config-if)#int f0/4 Switch(config-if)#switchport access vlan 3 //将端口4加入vlan3 Switch(config)#int f0/24 Switch(config-if)#switchport mode trunk //24端口设置为trunk Switch(config-if)#end Switch#show vlan //查看vlan接口信息 %SYS-5-CONFIG_I: Configured from console by console Switch#show vlan VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Fa0/1, Fa0/5, Fa0/6, Fa0/7 Fa0/8, Fa0/9, Fa0/10, Fa0/11 Fa0/12, Fa0/13, Fa0/14, Fa0/15 Fa0/16, Fa0/17, Fa0/18, Fa0/19 Fa0/20, Fa0/21, Fa0/22, Fa0/23 Fa0/24, Gig0/1, Gig0/2 2 fd active Fa0/2, Fa0/3 3 IT active Fa0/4 1002 fddi-default active 1003 token-ring-default active 1004 fddinet-default active 1005 trnet-default active VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2 ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------ 1 enet 100001 1500 - - - - - 0 0 2 enet 100002 1500 - - - - - 0 0 3 enet 100003 1500 - - - - - 0 0 1002 fddi 101002 1500 - - - - - 0 0 1003 tr 101003 1500 - - - - - 0 0 1004 fdnet 101004 1500 - - - ieee - 0 0 1005 trnet 101005 1500 - - - ibm - 0 0 VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2 ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------ Remote SPAN VLANs ------------------------------------------------------------------------------ Primary Secondary Type Ports ------- --------- ----------------- ------------------------------------------
实验验证
1.PC0 ping通 PC1
2.PC1 ping通 PC2 、PC5
3.PC3 ping通 PC7
在trunk上移除VLAN3的流量,使得SW0和SW1之间的VLAN3不能通信
注:在sw0和sw1同样操作命令 Switch# conf t Switch(config)#int f0/24 Switch(config-if)#switchport trunk allowed vlan remove 3 Switch(config-if)#end Switch#show interfaces trunk Port Mode Encapsulation Status Native vlan Fa0/24 on 802.1q trunking 1 Port Vlans allowed on trunk Fa0/24 1-2,4-1005 Port Vlans allowed and active in management domain Fa0/24 1,2 //valn3已不再trunk的allowed列表 Port Vlans in spanning tree forwarding state and not pruned Fa0/24 none
实验验证
1.PC3 ping不通 PC7
疑惑点
1、在还未建立sw0和sw1的trunk前,sw0和sw1默认的vlan1之间的pc可以ping通?
原因是 f0/24接口在默认的vlan1中。