2.2-VLAN间路由
第一代LAN间的通信:
不支持VLAN的交换机:由一个路由器和几个交换机组成,每个交换机的所有端口都同属于一个网段/LAN;在路由器上有几个网段就有几个与之相对应的直链链路;在那个时代还没有VLAN这种技术;
缺点:交换机的所有端口都同属于一个LAN,一个LAN就需要一个路由器端口→导致建网成本很髙;
优点:易于理解便于实施。
第二代VLAN间的数据通信:
在这个时代出现了能够支持VLAN的交换机,在路由器和交换机之间的链路,以及交换机的那个端口,都是是完全属于所对应的那个VLAN的;
缺点:路由器还是一个端口对应一个VLAN,成本还是很髙;
优点:将原来的一个LAN对应一个交换机减少到只需要一台交换机(端口数目足够的话)→大大降低成本。
第三代VLAN间的数据通信:
单臂路由(Router On Astick):在这个时代出现了Trunk技术:在一条物理介质上(网线/光纤)传输多个vlan的信息!是目前的主流。
实现:通过在路由器接口中创建子接口如e0.10和e0.20分别对应vlan10与vlan20。
优点:减少了路由和交换机连接的接口,减少了成本。
缺点:在路由器查询路由表;交换机与路由器之间的TRUNK链路,都可能构成网络性能瓶颈。
独臂路由:
step1:在所有的交换机上,传见VLAN10/VLAN20
STEP2: 把相应接口,划入相应的VLAN中。
STEP3:在交换机与路由器间的链路,也要配置TRUNK
3-1:交换机端:
sw2(config)#inter fa 0/5
switchport mode trunk ----2950上做,因为2950不支持802.1q
如果支持802.1q
那么→
switchport trunk encapsulation dot1q
switchport mode trunk
3-2:路由器端:
R5#
IN E 0/0 (主接口)
no ip add
no shut
int e 0/0.10
encap dot1q 10(vlan10)明确指定为VLAN10服务
ip add 192.168.10.100 255.255.255.0
int e 0/0.20
encap dot1q 20(vlan20)
ip add 192.168.20.100 255.255.255.0
step 4:在R5上,检查直连路由:
r5#show ip route
c 192.168.10.0/24 is directly connected, ethernet0/0.10
c 192.168.20.0/24 is directly connected, ethernet0/0.20
如果switch与switch间用isl,路由与switch间用dot1q,那么PC PING路由是可以
通的,因为switch与switch间的ISL只影响switch间通讯,同样的router与switch
之间的dot1q也只影响路由器与交换机的那段通讯。
step5:交换机之间的trunk:
sw1:
int fa 0/11
switchport trunk encap dot1q
switchport mode trunk
int fa 0/1
switchport access vlan 10
int fa 0/3
switchport access vlan 20
sw2:
int fa 0/12
switchport trunk encap dot1q
switchport mode trunk
int fa 0/2
switchport access vlan 10
int fa 0/4
switchport access vlan 20
检查trunk链路:
show interfaces trunk
Port Mode Encapsulation Status Native vlan
Fa0/11 desirable n-802.1q trunking 1
Fa0/12 desirable n-802.1q trunking 1
Fa0/24 on 802.1q trunking 1
step6:
所有VLAN10中的用户,都以E0/0.10为网关:
PC1: ip default-gateway 192.168.10.100
pc2: ip default-gateway 192.168.10.100
pc3: ip default-gateway 192.168.20.100
pc4: ip default-gateway 192.168.20.100
pc1/2#ping 192.168.10.100
pc3/4#ping 192.168.20.100
trunk和vlan间通讯是没有关系的,vlan间通讯是靠路由的,这里只是通过
物理介质走trunk实现。
step7:跨VLAN/IP网段的通信:
第四代VLAN间的数据通信:(process switching)--被淘汰技术
三层交换(Layer 3 Switch):将简化的路由器和交换机合二为一成为带有路由功能的交换机(l3 sw);
多次路由,多次交换
其实路由器做trunk的时候并没有启动路由协议,所以L3交换机不需要做到标准路由器的所有功能,费用能降低。
缺点:受限于内置路由器的CPU查询路由表的能力;每次路由多层交换效率相对低下;
优点:性能更高,不用trunk而用PCB集成的告诉总线。
另外,不再需要外置路由器→大大降低成本。
第四代--使用L3交换机,作VLAN间路由:(内部路由器)
step1:
sw1#ip routing
show ip route 发现里面可以跑很多路由协议,功能非常强大,因为是3560交换机
sh run--发现默认有vlan1,可以通过vlan1 ip 网管。
step2:
vlan 10
ip add 192.168.10.100 255.255.255.0
vlan 20
ip add 192.168.20.100 255.255.255.0
show ip route
无需配置trunk口或者封装协议
step3:所有VLAN10/20的用户,都指定本VLAN接口作为网关:192.168.10(20).100。
网关为虚拟接口,PING的时候后先送到网关,然后查路由表,然后再送到另一个VLAN
的网关,然后再从交换机下来。
pc*#clear arp-cache
ping 192.168.10.* !!!!!
第五代VLAN间的数据通信:(fast switching)--也是被淘汰技术
多层交换(Multilayer switching):一次路由,多次交换;默认的,只查一次路由表,效率高;
流掩码(Netflow mask)记录了源IP/PORT、目标IP/port和协议号。
第一次访问需要查路由表,后续的包不需要查询路由表,而是在二层形成cache,后面的包如果匹配的话就进行直接交换,
所以叫做一次路由,多次交换。
缺点:
1:还是需要查询路由表。
2:cache不能开太多。(IP都是/32的主机路由)
组合是在太多,cache记录不完。
3:基于Traffic/流。
必须之前有流量,否则不会有记录,所以叫基于Traffic。
第六代VLAN间的数据通信:
基于CEF(CISCO私有协议)的多层交换(Cisco Express Forwarding Multilayer switching):没有路由,直接多次交换;
转发信息数据库FIB(转发信息数据库)、邻接关系、流掩码;可以用SW3560(c)#ip cef或者#sh ip cef查看。
无需路由,多次交换。(基于拓扑)
sw3550(config)#ip cef(全局的所有接口启动CEF) 3550不能用,3560不需要用
sw3550(config)#ip cef distributed(全局的所有接口启动分布式CEF)3560用
sw3550(config)#int vlan 10
sw3550(config-if)#ip route-cache cef(接口级别的CEF控制)
show ip cef 查看转发信息库,如:show ip cef 192.168.10.1/32可以查看很多详细信息。
show adjacency 查看邻居表
show ip route 事实上不需要路由表
多层交换机上的接口分类:交换机端口port /路由接口interface --一把这么叫,但不是定论。
交换端口(switch ports):
交换端口是2层的物理端口,一般分为两种:
access port:一般是连接主机/电脑/服务器
sw3(config-if)#switchport mode access
只能属于一个VLAN;在access port传输的数据包是不携带vlan tag标记的标准以太帧;
trunk port:在两个交换机之间一定是trunk!在做单臂路由的链路上路由器和交换机之间也是trunk;trunk可以传输多个VLAN的信息并且依靠tag标识位携带的VLAN-ID来标识数据帧。
ISL header 26 byters:DA-TYPE-USER-SA-LEN-AAAA03-HSA-VLAN-BPDU-INDX-RES
一个数据怎么知道要去什么VLAN就靠ISL包头的“VLAN”信息,15bit,可以支持更多VLAN,但效率也比DOT1Q低,因为每个包除了多增加26个字节的包头还多了4个字节的校验信息。因为这个,ISL会被802.1q淘汰。--注意,是私有的,而DOT1Q是业界标准.
802.1q tag 总共4个字节:ETHERTYPE(0x8100)-PRI-VLAN ID 12bit,默认支持4096个vlan,但是实际上没有交换机能上那么多。
路由接口(routed ports):
分为两类:
真实接口A:路由器接口和L3-SW关闭交换能力的接口(in fa0/1 →no switchport相当于做为路由接口 →ip add ……);
虚拟接口B:子接口、VLAN port和Loopback等;
int vlan10
ip add ....
VTP:(VLAN TRUNK PROTOCOL)
是cisco私有的协议(GVRP)
VTP信息,只能在TRUNK链路上传递。--除了这个,和VLAN没有别的任何关系。
VTP目的:
提高VLAN网络的配置效率,减少网络配置的工作量:
VTP用于通告、同步VLAN的配置信息,简化关于VLAN的配置。
提醒:
VTP不能用于:将端口放入某个VLAN的操作--但可以把所有VLAN信息自动同步到所有交换机上。(IF# SWITCHPORT ACCESS VLAN 10)
(这需要在每个交换机上单独配置)
VTP MODE:
VTP的SERVER/CLIENT的相同点:
都可以转发VTP通告信息,而且都会向最新版本的VTP信息同步。
不同点:
SERVER:默认模式:可以创建/修改/删除VLAN,可以保存这些信息在NVRAN中。(VLAN.DAT)
client:不能创建/修改/删除VLAN,不能保存这些信息在NVRAN中。
VTP信息是触发更新,或者每5分钟周期性通告一次。
LAB:VTP
step0:确认Trunk链路已经成功建立:
show int trunk
step1:确定一个相同的VTP域名:
sw1/2: vtp domain CCNP
step2:确定server/client端:
sw1(config)#vtp mode server
sw2(config)#vtp mode client
show vtp status(查看VTP信息--VTP的信息,是无法通过SHOW RUN查看到的,因为sh run是看config.dat的信息的,而vlan信息存在vlan.dat。)
step3:观察vlan信息的同步:vlan添加,修改,删除。
vlan 100
show vtp status->看到版本号增加。configuration revision +
step4:VTP修剪(pruning)
vtp server:
sw1(config)#vtp pruning
对于没有用户的VLAN信息就不会发送到其他交换机,节省带宽和交换机处理开销。
VLAN信息不传递不代表就没有了这个VLAN,只是不发到别的交换机而已。
step5:VTP安全:
所有交换机:
sw1/2(config)#vtp password 123
sho vtp password才能看到password。
----------------------------------------------------------------------------
LAB1:单臂路由(Router On Astick):
STEP1:确认交换机之间的Trunk链路:
SW3是一个3550交换机;在SW3的fa0/21、f0/9和f0/5上:(c)#in fa0/21 →switchport trunk encapsulation dot1q →switchport mode trunk ;
SW1/SW2是SW2950只支持802.1q!同样配置Trunk;
完成后在SW3用#sh in trunk查看Trunk链路的建立;
STEP2:在R5上为各个VLAN构建子接口并配置Trunk:
in e0/0 →no sh →in e0/0.10 →en dot1q 10 →ip add 192.168.10.100 255.255.255.0 →in e0/0.20 →en dot1q 20 →ip add 192.168.20.100 255.255.255.0 ;然后配置Trunk;
STEP3:在R5上查看直链路由:
在R2610上#sh ip ro会看到两条直连路由;
STEP4:把各个交换机的相应接口放进对应VLAN:
在3个交换机上配置vlan10/20;完成后用#sh ip brief观察VLAN内通信和VLAN间通信;
STEP5:关闭两个子接口的代理ARP功能:
否则自己就通了:in e0/0.10 →no ip proxy-arp →in e0/0.20 →no ip proxy-arp ;
STEP6:在各个PC上指定对应的子接口为网关:
在四个PC上:(c)#ip default-gateway 子接口IP →这样就完成了单臂路由。
----------------------------------------------------------------------------
LAB2:三层交换(Layer 3 Switch):
STEP1:确认交换机之间的Trunk链路:
同上一个实验;
STEP2:在SW3上为各个VLAN构建虚拟接口并配置Trunk:
SW3是一个3550交换机拥有路由功能,因此可以去除R5使用SW3进行VLAN间路由:in v10 →ip add 192.168.10.10 255.255.255.0 →no ip proxy-arp →in v20 →ip add 192.168.20.20 255.255.255.0 →no ip proxy-arp ;然后配置Trunk;
STEP3:把各个交换机的相应接口放进对应VLAN:
在3个交换机上配置vlan10/20;完成后观察VLAN内通信和VLAN间通信;
STEP4:在各个PC上指定对应的子接口为网关:
在四个PC上:(c)#ip default-gateway VL接口IP 然后就实现了VLAN间通信;注意此时需要清下ARP表#clear arp-cache,否则MAC会封装失败;还有需要在SW3上启动路由功能(c)#ip routing才能看到路由表!