<MLS(MultiLayer Switch)>
·CAM(Content Addressable Memory)内容可寻址存储器
SW使用CAM表来存储2层的交换表。查找时是完全匹配,如果找不到,就从其他所有端口转发。
对于需要精确查找的表最有用。CAM表包括了vlan号,mac地址,port号。
·TCAM(Ternary CAM)只存在于三层交换机中
TCAM以线速处理ACL查找。
完全匹配区域/最长匹配区域/第一个匹配区域
对于需要最长匹配查找的表最有用。
·软件交换:通过CPU实现传统帧的交换。
·硬件交换:通过专门的ASIC(Application-Specific Integrated Circuit)硬件组件处理数据包。通常能够达到线速的吞吐量。
·MLS:指的是SW能够通过硬件来交换和路由选择数据包,并可能通过硬件支持4-7层的交换。
·SW要执行硬件交换,路由处理器(第3层引擎)必须将有关路由选择、交换、ACL和QOS等信息下载以硬件中。
Vlan 的 ACL (可以基于mac与ip)
基于IP的:
Config#access-list 1 permit 192.168.1.0 0.0.0.255
Config#vlan access-map wolf (10) 不打就默认为10
Config-access-map#match ip address 1
默认是转发的 show run 可以看到有 action forword
调用:vlan filter wolf vlan-list 100 全局模式下调用,要指明用在哪个VLAN中,也可对所有ALL
----------------------------------------------------------------------------------
基于mac地址的(MAC地址列表):
1、先写MAC地址列表
Mac access-list extended A
Permit aaaa.bbbb.cccc any
Deny host 0030.80d3.7240 any
源mac地址 目标mac地址
2、再写access-map
Vlan access-map wolf 20
Match mac address A
action [forward|drop] 默认会drop
3、调用:config#vlan filter wolf vlan-list 100
Access-map的名字 vlan号
R1(config)#vlan filter wolf vlan-list all 对所有VLAN
--------------------------------------------------------------------------------------
·过程交换:
最传统的转发方式,基于包的负载均衡
R1(config-if)#no ip route-cache 在每个接口下关闭cache就启用了进程交换
·基于NetFlow的MLS:路由器的默认方式
基于网流的负载均衡
让ASIC能够对被路由的数据包执行2层重写(S/D MAC、CRC)。
·Centralized Forwarding(集中式转发)
在一个专用ASIC上做出转发决策,是所有接口的枢纽。
Series:4000/6500
·Distributed Forwarding(分布式转发)
在SW的接口和模块上独立地做出转发决策。
Series:3550/6500(带有分布卡)
·基于CEF的MLS:(Cisco Express Forwarding)
控制平面:路由处理器(第3层引擎)
数据平面:用来进行硬件转发的硬件组件
CEF是一种基于拓扑的转发模型,它预先将所有路由信息加入FIB(Forwarding Information Base),使SW能快速查找路由信息。
·FIB:类似于路由表,包含了路由转发信息。
·Adjacency:存储2层编址信息。
第3层引擎和硬件交换组件维护一个FIB/Adjacency。
解决了递归问题,并且可以使用ASIC来转发,所以速度快
·ARP Throttling(ARP抑制)必须开启CEF才能开启这一功能
SW1(config)#ip routing 要开启CEF,首先要开启路由功能
SW1(config)#ip cef
SW1(config-if)#no ip router-cache cef 在接口下关闭CEF
show ip cef
show cef interface s0
show adjacency [detail]
是基于CEF交换机的一项重要特性。当SW没有目标地址的ARP条目时,SW会发送一个ARP请求,而抑制其他ARP请求。
ARP Throttling(抑制)--如果交换机向主机发出一个ARP请求(广播包),一直没得到回应,那么就不再发后续的ARP包,被抑制掉了。
默认情况下CEF是基于流的负载均衡,但可以修改为基于包的负载均衡:
ip load-sharing per-packet 打开基于包的负载均衡
<VLAN间路由>
·支持VLAN间路由的设备:
1.任意的3层SW
2.支持以太口起子接口的路由器(2600以上)
·路由接口:类似于路由器上的3层接口。
interface FastEthernet0/1 将接口改为三层接口
no switchport
ip address 8.8.9.7 255.255.255.0
·SVI(Switch Virtual Interface):
也属于3层接口,为完成VLAN间路由而配置的接口。
interface Vlan20
ip address 6.6.26.7 255.255.255.0
·如果让SW有路由功能,必须ip routing
<单臂路由(Router on a Stick)>
1)将R1/R2模拟成PC1/PC2,配IP,网关,no ip routing
2)在SW2上将PC1(r3)划入VLAN3,PC2(r5)划入VLAN5。
3)在SW1/2间做trunking:
Sw1/2(config-if)#switchport mode trunk
4)在SW1上起vlan3与vlan4
5)SW1的连接r6的端口上打 switch mode trunk
6)在R6上的F0/0起2个子接口:
注意:先把接口no shut再进入子接口
interface FastEthernet0/0
no shut
no ip address
interface FastEthernet0/0.1
encapsulation [dot1Q | isl ] 3 这个3是VLAN-ID
ip address 192.168.1.6 255.255.255.0
interface FastEthernet0/0.2
encapsulation [dot1Q | isl ] 5
ip address 192.168.2.6 255.255.255.0
spanning-tree portfast trunk 在交换机与路由器相连的端口上用,这样才能快速收敛,这一命令主要用在单臂路由上
clear arp-cache 清ARP表,因为在路由器中,ARP表的老化时间是4个小时,如果不手工清,会等很久。
做实验时会出现P不通的现象
起SVI的测试是一个常用的好办法
<端口安全>
·SW端口安全是2层特性,提供3种保护:
1.基于主机MAC来允许流量
·可定义2个参数:授权的MAC地址/允许学习多少个MAC地址(默认=1)
·违背端口安全,采取的行为:
1.shutdown:将永久性或特定周期内Err-Disable端口(默认行为)
2.restrict:将未授权主机的帧丢弃drop,并发送log
3.protect :当超过所允许学习的最大MAC数时,将未授权主机的帧丢弃drop
Sw1(config-if)#switchport mode access
Sw1(config-if)#switchport port-security 这个命令必须先打上,才能打后续命令
Sw1(config-if)#switchport port-security mac-address aaaa.bbbb.cccc
switchport port-security violation [protect|restrict|shutdown]指定行为
switchport port-security maximun 5 指定最大允许学多少个地址
Sw1#show port-security
Sw1#show port-security address
Sw1#show port-security interface f0/1
Sw1#show interfaces fastEthernet 0/1
FastEthernet0/1 is down, line protocol is down (err-disabled)
通常做接口安全,要先把接口shut down,这样它就不会自动学习
让err-disable接口自动恢复
errdisable recovery cause psecure-violation
show errdisable
2.基于主机MAC来限制流量 (3500上才可以做)
列表中定义的MAC将被限制流量
Sw1(config)#mac-address-table static 0010.7b80.7b9b vlan 1 drop
3.阻塞未知单(组)播扩散 (3500上才可以做)
对未知MAC地址,SW将从本VLAN的其他端口转发出去,通常结合端口安全来做
但对于某些端口(端口安全只需要一个MAC/已到最大MAC)没必要再转发这些单(组)播。
Rack08Sw1(config-if)#switchport block [unicast | multicast]
Rack08Sw1#show int f0/1 switchport
...Unknown unicast blocked: enabled
...Unknown multicast blocked: disabled
<NTP(Network Time Protocol)>
·在设备的监控和排错过程中,准确的时钟设置是必要的。
NTP主要用来同步系统时钟。是基于UDP的协议。
Sw1#show clock
Sw1(config)#clock timezone GMT -8 (设置时区)
R2#clock set 13:28:38 20 Feb 2006 (设置年/月/日/时间)
1)跟Master端同步:
R2(config)#ntp master
R2#show ntp status
....Clock is synchronized, stratum 1, reference is .LOCL.
R1/R3(config)#ntp server 12.1.1.1(指定NTP Server)
...Clock is synchronized, stratum 2, reference is 12.1.1.1
R3#show ntp associations
2)跟次级时钟源同步:
R3(config)#ntp peer 13.1.1.1
Clock is synchronized, stratum 3, reference is 13.1.1.1
3)NTP认证:
R2:(NTP Master)
ntp authentication-key 1 md5 wolf
ntp authenticate
ntp trusted-key 1
ntp master 6
R1:
ntp authentication-key 1 md5 wolf
ntp authenticate
ntp trusted-key 1
ntp server 12.1.1.2 key 1
<NTP Source>
R2设loopback0(2.2.2.2/24),通过路由协议,让R1学习到
R2(config)#ntp source loopback 0
R1(config)#ntp server 2.2.2.2 key 1