背景:
公司总部通过PPPOE拨号与专线与运营商连接能够访问互联网
需求:
- 配置ISP的两台设备使之能够提供PPPOE拨号与专线服务
- ISP的PPPOE采用动态地址池向公司提供专线服务
- ISP的专线通过PPP的链路绑定向公司提供专线服务,并通过地址协商向公司分配固定地址
- ISP的PPPOE采用PAP认证,专线使用CHAP认证
- ISP不能配置路由协议(静态与动态都不行)
- 公司内部运行OSPF协议,主链路为专线,备份链路为PPPOE,主链路断开,能实现备份链路的切换
- 地址自拟
测试:
主线路正常/断开时PC1 ping/tracert PC2
实验拓扑如下:
配置思路为以下这几步:
- PPPOE与专线链路
- 公司内部的OSPF
- NAT
- 优化(主备、链路故障的切换)
一、PPPOE与专线链路
配置PPPOE链路
客户端
1. 创建Dialer(拨号口),PPP封装
2.dialer 规则
3.在以太网接口绑定dialer
服务器端(ISP)
-
配置地址池,创建用户
2.定义虚模板,remote协商(利用池给用户分配IP地址)
3.将虚模板绑定到以太网口上
查看客户端的地址情况,可见获得了地址
ISP的虚模板
测试连通性,检验PAP的成功与否
至此完成了运营商的PPPOE采用动态地址池向公司提供地址,且PPPOE采用了PAP认证
配置PPP链路
首先为了增加接口带宽,将R2、 R4间的所有互联PPP接口采用MP—Group进行MP绑定
主认证方(公司)
1.创建Mp-Group接口,创建用户
2.进入到PPP接口上,将其划分至Mp-Group中,做出chap认证
服务器端(被认证方)
1.创建Mp-Group接口
2. 进入到PPP接口上,将其划分至Mp-Group中,接口认证chap
3.通过地址协商向公司分配固定地址
a)首先将公司手动配置的MP-Group地址去掉,即让服务器(ISP)为自己分配固定的地址
b)ISP端
检查:
可见,R2(公司)获取到了ISP端分配的固定地址
测试连通性,检验chap的成功与否
至此,完成了ISP的专线绑定(MP-Group),固定分配地址,专线的chap认证
二、接下来配置公司内部的OSPF
1.SW1创建两个三层接口,利用VALN技术
邻居建立成功,路由学习正确
2.实验要求主链路为专线,备份链路为pppoe,则将R1的默认路由的cost加大
查看SW1的路由表,可见默认路由的下一跳是PPP专线
在SW1上配置VLAN2 的网关(VRRP),并宣告在OSPF的区域2,这样R1 R2就可以学到三类的LSA
查看R1 R2 的OSPF的LSDB表,可见学习到了交换机的接入层设备
三、接下来配置NAT
接口调用
Internet:意思是将公网映射到本地的私网上
注意全局的地址与本地的地址不要用接口上的(这里我本来用的是nat server但是有问题,后来改成nat outbound)
注意:
R5要对两个外联接口都要配置nat outbound
配置静态缺省路由
查看路由表
为了实现主链路为PPP,则将去往R3的缺省静态改的大一些
此时可见,路由表选的是R5—R4网段
小测试:
PC2是否能ping通R1-R3 、R2-R4间的链路
PC1pingR4 R5间的链路
PC2不能ping通10.1.13.1是因为这条链路是用于备份的,只有主链路出现故障,才会启用
此时SW1的路由表上就有了去往R1的cost大的默认路由
此时即可以ping通
实验测试:
不能ping通35网段是因为其链路是用于备份的,只有主线路出现故障时才会启用(主线路分为SW1-R2 R2-R4 R4-R5)
四、优化
要求:
主线路:SW1-R2 R2-R4 R4-R5
这三段主线路任意一个出现故障就能实现切换到备份
解决:
1、SW1-R2这段链路的切换依靠的是cost值
主链路(专线mp)出现故障,SW1会学习到cost为200的,由R1下发的默认
测试:
原始的路由
此时将这主链路down掉
查看路由表,可见实现了切换
可见切换正常,但是此时还是ping不通,那是因为互联网的回包还是主链路,没有实现切换,提前剧透,用的是nqa追踪技术
2、R2-R4这段链路的切换依靠的是VRRP的上行链路追踪
为实现R2的上行链路追踪,利用VRRP,将R2设置成DNS主服务器,一旦上行链路出现故障,则DNS服务器切换到R1上
新问题:
由于直连检测的存在,那么切换的链路要与出故障的链路属于同一个网段,目前来看,SW1分了两个VLAN,明显是不在的
解决:
将SW1连接上层路由器的接口划入进一个VLAN中
R1 R2上将接口地址分别改成100.1.112.2 100.1.112.3
OSPF也要重新宣告
查看邻居建立情况,可见正常
接下来配置DNS服务器,用于对100.1.45.1 100.1.35.1这个IP地址进行转换的模拟
R1 R2作为DNS解析服务器,用于对PC1这个主机的IP进行域名解析
接下来配置VRRP,实现上行链路的追踪
这个设计的巧妙之处就在于,你要访问的是pc1.com 那么你必然要到我这里(DNS解析服务器)来进行域名的解析,而主DNS配置了VRRP,一旦上行链路出现故障则就会实现切换,切换到备DNS上,而备DNS也有域名的解析,这样就成了~
此时,为了实现主备结构,则在R1 R2上配置VRRP,R2作为主DNS解析服务器,R1作为备份的DNS解析服务器
在R1 R2上配置VRRP
对PC2的DNS服务器栏配置相对应的地址
新问题:
R5回包时,由于主链路的缺省的权重小则会优选,则无论主链路如何出现故障,这条回成路由都不会进行切换
解决:
NAT技术由内向外转换是先路由后转换,则可以在R5上写两条指向公司中心的缺省(其实企业其实是希望运营商把他的骨干给到自己,优点有 不需要写静态,选路更好)
查看R5的路由表
测试1:
Down掉SW1与R2的链路
PC2 tracert PC1
测试2:
若断开PPP链路(主线),则R2上的VRRP上行链路追踪会把DNS的网关切换到R1上,默认路由也是由R1来下放的
查看SW1的路由表
PC2 tracert PC1
若故障恢复,那么走的就是主链路
测试3:
若R4与R5的链路出现故障,由于DNS的网关与默认路由并没切换,则ping不通
解决:
NQA
配置者起名字 测试用例的名字(nqa的名字)
测试类型:ICMP
测试目的者的地址:100.1.45.1
测试周期:3s
持续时间 20h
发测试包的间隔:2s
回包超时:1s
每次发包的数量 1个
开始时间 现在
要求:
每次发包的个数*发包间隔 不能大于周期
Interval 一个周期内的时间间隔
Interval>timeout(肯定是先判断有没有超时,然后再决定要不要继续发送数据包)
接口启用,再VRRP上监控这个测试,如果测试成功,即测试的链路出现故障,那么VRRP会对DNS服务器进行切换
配置下面这条命令后,R5上就不用写指向运行商的静态了,因为R4 R5间的链路出现故障后,网关会切换,回城的缺省也会切换(现实环境中不会配置指向运营商的明细缺省的,这条缺省跟踪更加保险与高效)
检查:
PC2 ping PC1
Ping不通的原因是,就算R4 R5间的链路出现故障,DNS网关也切换了,但是由R1 R2下发的默认路由没有发生变化(优选的是R2下发的默认路由{优先级小})
注意 R2的上行链路出现故障时,默认会切换是因为,静态写的就是上行链路的,那么上行链路出现故障后,即静态消失了,自然就不会下发了
解决:
在R2上对静态进行nqa追踪,如果追踪失败,即R4-R5间的链路出现故障就会追踪失败,那么此时R2的静态就会失效,那么也就不会下发给SW1,这个时候,SW1去往互联网只能乖乖的走备份路径
终极测试:(因为所有问题都解决了,所以是终极测试)
断开R4-R5间的链路
查看SW1的路由表,可见完成了切换
结果与预期相符
当R4 R5链路回复正常时
查看SW1的路由表,可见切换到了主链路,与预期相符
测试:
nqa小结:
Nqa这个追踪工具十分的强大,此实验中用的是,利用nqa来追踪一段链路的正常与否,并在两个静态缺省中写了nqa追踪,意思是追踪的那段链路如果出现故障,那么这两个静态缺省就应该失效,还在VRRP中添加了nqa追踪,即追踪的那段链路如果出现故障,那么应该实现DNS网关的切换。