虚拟路由冗余协议(Virtual Router Redundancy Protocol,VRRP)
设计采用主备模式,将VRRP组内多个路由设备都映射为一个虚拟路由设备。
一个VRRP组中只能由一台处于主控角色的路由器,可以有一个或多个备份角色的路由器。
VRRP 使用选择策略从路由器组中选出一台作为主控,负责 ARP 响应和 IP 数据包转发,组中的其他路由器作为备份的角色处于待命状态。
当主控空路由发生故障时,备份路由器能在几秒的时间延后升级的主路由器。VRRP使得局域网内的主机看上去只使用了一个设备。
设置抢占模式
bash
R1(config)# interface vlan 10
R1(config-if)# ip address 172.16.10.2 255.255.255.0
R1(config-if)# standby 1 ip 172.16.10.1 # 设置网关
R1(config-if)# standby 1 preempt # 设置为抢占模式
抢占模式的意义, 当 R1 路由器中断又恢复后,则恢复 R1 的主导地位。
设置优先级
bash
R2(config)# interface vlan 10
R2(config-if)# ip address 172.16.10.3 255.255.255.0
R2(config-if)# standby 1 ip 172.16.10.1 #设置网关
R2(config-if)# standby 1 preempt # 设置为抢占模式
R2(config)# interface vlan 20
R2(config-if)# ip address 172.16.20.2 255.255.255.0
R2(config-if)# standby 1 ip 172.16.20.1 #设置网关
R2(config-if)# standby 1 preempt # 设置为抢占模式
R2(config-if)# standby 1 priority 254 # vlan20的standby优先级设为254
配置完成后,交换机的上行数据可实现负载均衡,下行数据依靠上级路由表进行转发。
bash
# 设置优先级
R2(config)# interface vlan 10
R2(config-if)# ip ospf cost 65535 # 开销值设置为 65535
R1(config)# interface vlan 20
R1(config-if)# ip ospf cost 65535 # 开销值设置为 65535
开销值越低,表示该链路的传输速度越快,路由器会优先选择这些链路进行数据传输。
当IP OSPF Cost的值被设置得很大时,该链路在OSPF计算最佳路径时基本上会被排除在外。
MSTP
MSTP priority的值越小,则越优先
实现了多设备的集成化
bash
R1(config)# spanning-tree mst 1 priority 4096 #实例在R1的优先级为4096
R1(config)# spanning-tree mst 2 priority 8192 #实例在R2的优先级为8192
R2(config)# spanning-tree mst 1 priority 4096 #实例在R1的优先级为8192
R2(config)# spanning-tree mst 2 priority 8192 #实例在R2的优先级为4096
汇聚与接入交换机(配置MSTP)
MSTP是实现了一种链路聚合。
bash
S1(config)# spanning-tree #开启
S1(config)# spanning-tree mode mstp
S1(config)# spanning-tree mst configuration
S1(config-mst)# instance 1 vlan 10,30
S1(config-mst)# revision 1 # 配置多生成树的版本号
S1(config-mst)# instance 2 vlan 20,40 # 将 vlan20、vlan40 放入实例2中
S1(config-mst)# revision 1
S1(config-mst)# exit
依次对 S2、S3。。。进行配置
检查 VRRP 状态
show vrrp
路由策略
策略路由不仅能够根据 目标地址 来选择数据包转发路径,而且能够根据源 IP 地址 、数据包大小 、协议类型 及应用来选择数据包转发路径。
路由器执行策略路由是通过 "路由映射图" 对数据包按照约定的规则进行路由与转发。
路由映射图 (Route Map)决定了一个数据包的吓一跳转发路由设备的端口地址。应用策略路由,必须要制定策略路由使用的 Route Map。
如果 Route Map 不存在,则要创建 Route Map 。
一个 Route Map 由许多策略组成,策略 按 序列号大小排列,每个策略都定义了一个或多个匹配规则和对应操作。
路由设备的接口应用策略路由后,将对该接口收到的所有数据包进行检查,不符合 Route Map 任何策略的数据包,将按照基于目标地址的路由进行转发处理。符合 Route Map 中某个策略的数据包,将按照该策略中定义的操作进行处理。
Route Map 命令
match 用来匹配, 常用的匹配条件包括 IP 地址、接口、度量值、数据包长度等。
set 用来设置
常用的策略路由命令
命令 | 描述 |
---|---|
set ip next-hop | 定义策略路由下一跳 |
set ip default next-hop | 定义策略路由默认下一跳,用于路由表中没有到数据包目的地址路由条目时 |
set interface | 定义策略路由出口 |
set default interface | 定义策略路由默认出口 |
set tos | 设置报文IP头中的tos |
set preference | 设置报文IP头中的优先级 |
match ip address | 设置过滤规则 |
match length | 匹配报文长度 |
route-map | 定义路由映射图 |
建立访问控制列表
bash
access-list <id> {deny|permit} {src src-wildcard|host src |any |interface idx}
# 命令建立一个访问控制列表(ACL),用于过滤 IP 数据包。命令中的 id 表示 ACL的序列号,deny 表示拒绝数据包通过,permit表示允许数据包通过,src 表示源地址,src-wildcard 表示源地址通配符,host src 表示主机 IP,any 表示任意地址,interface idx 表示输入匹配接口。
1.配置路由器R1
bash
R1(config)#access-list 1 permit 176.16.1.11 # 设置主机A允许访问列表
R1(config)#access-list 2 permit 176.16.1.12 # 设置主机B允许访问列表
R1(config)#route-map RULE1 permit 10 # 设置主机A的策略路由序号为 10
R1(config-route-map)#match ip address 1 # 设置匹配地址的 access-list 1
R1(config-route-map)#set ip next-hop 176.16.12.1 # 设置数据包的下一跳地址
R1(config)#route-map RULE1 permit 20 # 设置主机B的策略路由序号为20
R1(config-route-map)#match ip address 2
R1(config-route-map)#set ip next-hop 176.16.21.1
# 主机访问侧,连接到主机内网集线器或交换机
R1(config)#interface fe0/0
R1(config-if)#ip address 176.16.1.1 255.255.255.0
R1(config-if)#ip policy route-map RULE1 # 在 fe0/0接口启用策略路由
R1(config)#interface s0/0
R1(config-if)#ip address 176.16.12.2 255.255.255.0
R1(config)#interface s1/0
R1(config-if)#ip address 176.16.21.2 255.255.255.0
R1(config)# router ospf 100
R1(config-router)# network 176.16.1.0 255.255.255.0
R1(config-router)# network 176.16.12.0 255.255.255.0
R1(config-router)# network 176.16.21.0 255.255.255.0
2.配置路由器R2和R3的OSPF
bash
R2(config)# interface s0/0
R2(config-if)# ip address 176.16.12.1 255.255.255.0
R2(config)# router ospf 100
R2(config-router)# network 176.16.12.0 255.255.255.0
R3(config)# interface s0/0
R3(config-if)# ip address 176.16.21.1 255.255.255.0
R3(config)# router ospf 100
R2(config-router)# network 176.16.21.0 255.255.255.0
3.策略路由测试。
show ip policy