随着Internet的日益普及,人们对网络的依赖性也越来越强。这同时对网络的稳定性提出了更高的要求,人们自然想到了基于设备的备份结构,就像在服务器中为提高数据的安全性而采用双硬盘结构一样。在一个路由器完全不能工作的情况下,它的全部功能便被系统中的另一个备份路由器完全接管,直至出现问题的路由器恢复正常,这就是热备份路由协议
上面的拓扑中,应用了HSRP+STP+vlan技术实现了链路的负载均衡以及冗余
首先,划分好vlan,把vlan10可以看作是生产部门 vlan20可以看作是销售部门,两个部门分在不同的局域网中,vlan255作为管理vlan用来远程管理交换设备。
access_SW1 *********************
vlan database
vlan 10
vlan 255
int vlan 255
ip add 192.168.255.1 255.255.255.0
exit
ip default-gateway 192.168.255.254
int range f0/1 -4
switchport mode trunk
no sh
int f0/0
sw mode access
sw access vlan 10
***********************************************
access_SW2 *************************
vlan datebase
vlan 20
vlan 255
int vlan 255
ip add 192.168.255.2 255.255.255.0
ex
ip default-gateway 192.168.255.254
int range f0/2 -3
sw mode trunk
no sh
int f0/0
sw mo access
sw access vlan 20
no sh
spanningtree portfast (配置该端口后 该端口为快速端口 不再使用STP算法 这个端口一般配置在连接终端设备的端口)
*****************************************************
CO__SW1:*********************
vlan datebase
vlan 100
vlan 255
vlan 10
vlan 20
int range f0/14 -15 (配置快速聚合端口绑定 提高链路带宽)
channelgroup 1 mode on
sw mode trunk
no sh
ex
int portchannel 1
sw mode trunk
no sh
int vlan 255
ip add 192.168.255.252 255.255.255.0 (配置HSRP 达到核心交换机的冗余和负载均衡)
stanby 1 ip 192.168.255.254
stanby 1 preemt
stanby 1 pri 120
stanby 1 track f0/0 30 (跟踪f0/0端口 当该端口出现故障 则把优先级减去30 让备份设备快速上线)
no sh
int vlan 100
ip add 192.168.100.254 255.255.255.0
no sh
int vlan 10
ip add 192.168.10.252 255.255.255.0
ip helper-address 192.168.100.1 (DHCP的中继因为当PC终端配置为动态获取地址后,会像网络发送广播 广播包到达三成交换机后被阻挡,变成单播包,这个时候的原目标IP是SVI 10的IP,目标是DHCP服务器IP)
stanby 2 ip 192.168.10.254
stanby 2 pri 120
stanby 2 preemt
stanby 2 track f0/0 30
int vlan 20
ip add 192.168.20.252 255.255.255.0
ip helper-address 192.168.100.1
stanby 3 ip 192.168.20.254
int f0/0
ip add 10.1.2.2 255.255.255.0
no sh
************************************************
CO__SW2*********************************
vlan database
vlan 10
vlan 20
vlan 255
int vlan 255
ip add 192.168.255.253 255.255.255.0
stany 1 ip 192.168.255.254
int vlan 10
ip add 192.168.10.253 255.255.255.0
stany 2 ip 192.168.10.254
int vlan 20
ip add 192.168.20.253 255.255.255.0
stanby 3 ip 192.168.20.254
stanby 3 pri 120
stanby 3 preemt
int f0/0
ip add 10.1.1.2 255.255.255.0
no sh
************************
OR ******************************************************************
int f1/0
ip add 10.1.2.1 255.255.255.0
ip nat inside
no sh
int f2/0
ip add 10.1.1.1 255.255.255.0
ip nat inside
no sh
int s0/0
ip add 202.101.100.1 255.255.255.0
ip nat outside
no sh
access-list 1 premit any
ip nat inside source list 1 int s0/0 overload
*************************************************************
ISP **********************************************************
int s0/0
ip add 202.101.100.2 255.255.255.0
no sh
int lo0
ip add 1.1.1.1 255.255.255.0
no sh
**************************************************************
Web ***********************************************************
int f0/0
ip add 192.168.100.100 255.255.255.0
no sh
ip default-gateway 192.168.100.254
**************************************************************
DHCP_server*****************************************************
sercer dhcp (开启DHCP服务)
ip dhcp pool vlan10 (创建地址池的名称,叫做vlan10)
network 192.168.10.0 /24
default-router 192.168.10.254 (分配给内网的网关)
ip dhcp pool vlan20
network 192.168.20.0 /24
default-rotuer 192.168.20.254
ip dhcp excluded-address 192.168.10.252 192.168.10.254 (除去这几个已经用到了的IP 避免地址冲突)
ip dhcp excluded-address 192.168.20.252 192.168.20.254
PC1*************************
用3640路由器模拟PC
no ip routing
int f0/0
ip add dhcp
no sh
PC2**********************
no ip routing
int f0/0
ip add dhcp (通过dhcp获取地址,这样当PC接入到交换机后就开始发送广播包 查询DHCP服务,到了三层交换机就被隔离成了单播包,这样才能获取IP)
no sh
*********************************************************************
所有交换配置基本配置完成,因为生成树的存在,端口从blocking状态到fowarding状态中间要经过50s的时间进行切换,例如,如果CO_SW1作为根桥下面的f0/1出现故障,vlan10的流量要访问外网就要经过CO_SW2,而F0/4是处于blocking的,要经过50s的时间延迟才能恢复上网,这对于核心网络来说,时间太久,造成的影响也比较大,可以把所有端口配置成backbonefast,这样端口就可以直接进入fowarding状态,而不需要延迟。
现在我们开启三层交换机的路由功能
CO__SW1 **************
ip routing
router ospf 100
network 0.0.0.0 255.255.255.255 a 0
CO__SW2 **************
ip routing
router ospf 100
network 0.0.0.0 255.255.255.255 a 0
OR**********************************
ip route 0.0.0.0 0.0.0.0 202.101.100.2 (通向外网的默认路由)
router ospf 100
network 0.0.0.0 255.255.255.255 a 0
default-information orig always (无论什么时候都向邻居通告一条默认路由)
ip nat inside source static tcp 192.168.100.100 80 202.101.100.1 80 extendable (这是内网WEB服务器映射 当外网想访问内网服务器时,因为我们知道外网是不能访问内网的,这个时候我们进行了端口映射,将WEB的内网80端口映射到出口路由的外网ip的80端口,外网访问只需要输入外网IP即可。例如还有FTP服务器的21端口都是通过把tcp的端口进行映射实现)
以上操作配置完成后,就可以实现外网访问了
个人笔记,如有疏漏,望高手指点,互相进步!谢谢!
技术要点:backbonefast是用于增强生成树的。因为生成树存在,一个端口由blocking到fowarding,其中通过侦听 学习 查询 发BPDU过程需要经过50s,这个时间对于要求高的大型网络来说,延迟时间太长了。思科公司为了解决这个问题,就研究出了backbonefast uplinkfast portfast这三个增强生成树的协议,使用这些协议后,当某天链路出现故障后,冗余链路的blocking端口可以直接进入fowarding来转发数据,这样就节省了时间。但是,对于思科设备来说,思科IOS系统只能将portfast配置在连接终端设备的接口上,而uplinkfast一般是用在接入层交换机的,当去往上行链路出现故障,可以直接切换端口。backbonefast需要配置在所有交换机上。backbonefast可以快速诊断非直连故障,让生成树快速收敛。举个列子,有三台交换机A.B.C进行互联,A作为根桥,当链路正常的时候,生成树的STP算法使得B和C之间链路有个端口是blocking的,当B去往A的链路出现故障,B就和根网桥失去了联系,这个时候B就会开始泛洪发BPDU说自己是根网桥,C收到这个BPDU后,发现与自己端口存储的BPDU不同,也就是说和自己的根网桥不同,C就开始发送 "root link query"的查询,查询以前的根桥是否存在,A收到C发送的查询包后,会回复C说A仍然存在,C就会把这个应答包发送给B,并且打开B---C之间的Blocking端口,以后B就通过C去往根桥。这个过程就省略了blocking到listen的20s。
需要注意的是:当一个接口配置成portfast后,又再一次被迫进入了blocking,随后要回到fowarding仍然需要经过侦听。启用portfast的原因主要是防止周期小于30s的终端需要和交换机从未连接到fowarding,而一些网卡知道MAC层软件驱动被实际加载完成后才会启用链路。这种情况有时候会导致一些故障,比如说DHCP环境下。