收藏 分销(赏)

用route-map进行双ISP接入-完美实现负载负载均衡相互备份及策略路由.doc

上传人:仙人****88 文档编号:8943490 上传时间:2025-03-08 格式:DOC 页数:32 大小:255KB 下载积分:10 金币
下载 相关 举报
用route-map进行双ISP接入-完美实现负载负载均衡相互备份及策略路由.doc_第1页
第1页 / 共32页
用route-map进行双ISP接入-完美实现负载负载均衡相互备份及策略路由.doc_第2页
第2页 / 共32页


点击查看更多>>
资源描述
用route-map进行双ISP接入,完美实现负载负载均衡相互备份与策略路由(原创) 在本人上一篇文章用route-map进行双ISP接入,并实现负载负载均衡相互备份与策略路由里,其中有一点点不是非常完美的地方,当网关路由器接口出现问题可以正常切换,但是如果是ISP出现了问题,则会出现不能切换问题,要解决这个问题,我们需要利用思科ip sla工具才解决,ip sla简单工作原理就是利用某种协议测试对方网络设备的连通性,最常见是icmp协议,如果对方设备响应表示线路正常,路由生效,如果对方设备不响应表示线路不正常,路由失效。 为了保证园区或企业内部连接到Internet网络的高可用性,通常我们会使用双线接入(比如:电信,网通两个ISP提供的网络)。并部署相关的策略,在一条线路失效后,能快速切换到另外一条可用线路。而且在双线都正常使用时,实现负载均衡。根据目前来讲,进行策略路由方法大概有几下几种: 一、根据源地址策略路由 二、根据目的地址策略路由 三、根据源端口策略路由 四、根据目的端口策略路由 在实际工作环境中,特别是网吧,一般采用两条光纤接入,一条接电信光纤,一条接网通光纤,如采用方法一进行策略路由,明显有几个不好的弊端,负载不均衡,有可能导致一条光纤负载大,一条负载小,还会导致访问网站(或游戏)的速度不理想,明明网游服务器在网通,可是数据包却从电信光纤出口出去,导致访问速度下降。 方法三与四都有缺陷。只有方法二是工程中常用的方案,我们需要的是当访问电信网站时从电信光纤接口出去,当访问网通网站时从网通光纤接口出去,如果电信光纤接口出现问题,就从网通光纤出口出去,反之溢然,达到一个备份效果。 实验要求: 一、内网1与内网2要访问电信网络时,走电信出口(S1/0口),实现策略路由,提高网速。 二、内网1与内网2要访问网通网络时,走网通出口(S1/1口),实现策略路由,提高网速。 三、当电信光纤出现问题时,内网1与内网2走网通出口,当电信光纤恢复正常时,走电信出口,以达到备份的目的。 四、当网通光纤出现问题时,内网1与内网2走电信出口,当电信光纤恢复正常时,走网通出口,以达到备份的目的。 网络接口以及IP地址配置具体看拓扑图, Isp1路由器是用来模拟电信,环回口用来模拟网段,网段有:20.20.10.0 20.20.20.0 20.20.30.0共三个网段。 Isp2路由器是用来模拟网通,环回口用来模拟网段,网段有:220.220.1.0 220.220.2.0 220.220.3.0共三个网段。 下面开始具体配置。 ISP1(模拟电信路由器)配置: hostname isp1 interface Loopback0 ip address 20.20.10.1 255.255.255.0 ! interface Loopback1 ip address 20.20.20.1 255.255.255.0 !          interface Loopback2 ip address 20.20.30.1 255.255.255.0 ! interface Serial0/0 ip address 100.100.100.2 255.255.255.0 serial restart-delay 0 ! interface Serial0/1 ip address 60.0.0.1 255.255.255.0 serial restart-delay 0 router bgp 1 bgp log-neighbor-changes network 20.20.10.0 mask 255.255.255.0 network 20.20.20.0 mask 255.255.255.0 network 20.20.30.0 mask 255.255.255.0 network 60.0.0.0 mask 255.255.255.0 network 100.100.100.0 mask 255.255.255.0 neighbor 60.0.0.2 remote-as 2 注:两个ISP之间采用BGP路由,电信BGP自治系统号为1,环回口用来模拟电信的各个网段。 ISP2(模拟电信路由器)配置: hostname isp2 interface Loopback0 ip address 220.220.1.1 255.255.255.0 ! interface Loopback1 ip address 220.220.2.1 255.255.255.0 !          interface Loopback2 ip address 220.220.3.1 255.255.255.0 ! interface Serial0/0 ip address 200.200.200.2 255.255.255.0 serial restart-delay 0 ! interface Serial0/1 ip address 60.0.0.2 255.255.255.0 serial restart-delay 0  router bgp 2 bgp log-neighbor-changes network 64.0.0.0 mask 255.255.255.0 network 200.200.200.0 network 220.220.1.0 network 220.220.2.0 network 220.220.3.0 neighbor 60.0.0.1 remote-as 1 注:两个ISP之间采用BGP路由,网通BGP自治系统号为2,环回口用来模拟电信的各个网段。 Lan1(内网1)配置: hostname lan1 interface Ethernet0/0 ip address 192.168.1.2 255.255.255.0 ip route 0.0.0.0 0.0.0.0 192.168.1.1 Lan2(内网2)配置: hostname lan1 interface Ethernet0/0 ip address 192.168.2.2 255.255.255.0 ip route 0.0.0.0 0.0.0.0 192.168.2.1 网关路由器基本配置: hostname nat interface Serial1/0 ip address 100.100.100.1 255.255.255.0 注:连接电信接口 interface Serial1/1 ip address 200.200.200.1 255.255.255.0 注:连接网通接口 interface Ethernet2/0 ip address 192.168.1.1 255.255.255.0 注:连接内网1接口 interface Ethernet2/1 ip address 192.168.2.1 255.255.255.0 注:连接内网2接口 ip route 0.0.0.0 0.0.0.0 100.100.100.2 ip route 0.0.0.0 0.0.0.0 200.200.200.2 下面是关键配置: ip access-list extended isp1 permit ip any 20.20.10.0 0.0.0.255 permit ip any 20.20.20.0 0.0.0.255 permit ip any 20.20.30.0 0.0.0.255 permit ip any 60.0.0.0 0.0.0.255 permit ip any 100.100.100.0 0.0.0.255 permit ip any 200.200.200.0 0.0.0.255 注:名为ISP1的访问列表有两个作用: 一、把去往电信方向的网段挑选出来,等下NAT会调用,去往电信方向NAT就会转换公网地址为100.100.100.1。 二、策略路由时调用,去往电信方向,指出他的下一跳是电信出口。 ip access-list extended isp2 permit ip any 220.220.1.0 0.0.0.255 permit ip any 220.220.2.0 0.0.0.255 permit ip any 220.220.3.0 0.0.0.255 permit ip any 60.0.0.0 0.0.0.255 permit ip any 100.100.100.0 0.0.0.255 permit ip any 200.200.200.0 0.0.0.255 注:名为ISP2的访问列表有两个作用: 一、把去往网通方向的网段挑选出来,等下NAT会调用,去往电信方向NAT就会转换公网地址为200.200.200.1。 二、策略路由时调用,去往网通方向,指出他的下一跳是网通出口。 Ip sla配置部分,ip sla主要用来判断去往电信或网通的线路有没有出现问题,ip sla会每隔秒钟去ping一下网关地址,如果发现ping不通,则判断该线路有问题,数据包就会另外一条线路出去,达到一种自动切换的功能。 ip sla 1 icmp-echo 100.100.100.2 source-ip 100.100.100.1 注:用网关路由器S1/0所在接口(电信接口)IP地址去ping其电信网关IP地址 frequency 5 注:ping的时间间隔为5秒钟一次。 ip sla schedule 1 life forever start-time now 注:计划调度时间为从现在开始的每一天。 ip sla 2 icmp-echo 200.200.200.2 source-ip 200.200.200.1 注:用网关路由器S1/1所在接口(网通接口)IP地址去ping其网通网关IP地址 frequency 5 注:ping的时间间隔为5秒钟一次。 ip sla schedule 2 life forever start-time now 注:计划调度时间为从现在开始的每一天。 track 1 rtr 1 reachability 注:追踪去往电信线路的可达性 track 2 rtr 2 reachability 注:追踪去往网通线路的可达性 route-map load permit 10 match ip address isp1 set ip next-hop verify-availability 100.100.100.2 1 track 1 set ip next-hop verify-availability 200.200.200.2 2 track 2 注:策略路由名为load,track 1 匹配去往电信网段的,设置下一跳为电信网关并追踪其可达性,如果可达,这条语句生效,不可达,则不生效,并执行下一语句。 Track 2设置下一跳为网通网关并追踪其可达性,如果可达,这条语句生效,不可达,则不生效,并执行下一语句。注意编号的顺号。 route-map load permit 20 match ip address isp2 set ip next-hop verify-availability 200.200.200.2 1 track 2 set ip next-hop verify-availability 100.100.100.2 2 track 1 注: track 2 匹配去往网通网段的,设置下一跳为网通网关并追踪其可达性,如果可达,这条语句生效,不可达,则不生效,并执行下一语句。 Track 1设置下一跳为电信网关并追踪其可达性,如果可达,这条语句生效,不可达,则不生效,并执行下一语句。 route-map load permit 30 set ip next-hop verify-availability 100.100.100.2 1 track 1 set ip next-hop verify-availability 200.200.200.2 2 track 2  注:这条语句可以不要,主要意思就是去往非电信与网通的数据包优先从电信接口出去,如果线路有问题,就从网通接口出去。 route-map nat1 permit 10 match ip address isp1 match interface Serial1/0 注:即要匹配去往电信的地址段,也要匹配出口为S1/0口(电信出口)。同时满足这两个条件,就给它做nat转换。 route-map nat11 permit 10 match ip address isp1 match interface Serial1/1 注:即要匹配去往电信的地址段,也要匹配出口为S1/1口(网通出口)。同时满足这两个条件,就给它做nat转换。这条语句主要是做备份用的,当s1/0口DOWN掉时,这里就只有s1/1口可以用。 route-map nat2 permit 10 match ip address isp2 match interface Serial1/1 注:即要匹配去往网通的地址段,也要匹配出口为S1/1口(网通出口)。同时满足这两个条件,就给它做nat转换。 route-map nat22 permit 10 match ip address isp2 match interface Serial1/0 注:即要匹配去往网通的地址段,也要匹配出口为S1/0口(电信出口)。同时满足这两个条件,就给它做nat转换。这条语句主要是做备份用的,当s1/1口DOWN掉时,这里就只有s1/0口可以用。 route-map isp3 permit 10 match ip address 1 match interface Serial1/0 注:如果要是访问即不是网通,也不是电信网段时, nat转换接口为s1/0(电信接口)。主语句,该语句可以不要。 route-map isp33 permit 10 match ip address 1 match interface Serial1/1 注:如果要是访问即不是网通,也不是电信网段时, nat转换接口为s1/1(网通接口),用来备份,默认是从电信出去,如果电信DOWN掉,这里只有从s1/1地址转换。该语句可以不要。 interface Serial1/0 ip nat outside interface Serial1/1 ip nat outside interface Ethernet2/0 ip nat inside ip policy route-map load interface Ethernet2/1 ip nat inside ip policy route-map load 注:在接口上应用策略路由。 ip nat inside source route-map nat1 interface Serial1/0 overload 注:如果是去往电信网段,转换出口为s1/0口(电信接口),正常去往电信时就拿S1/0公网地址进行转换。 ip nat inside source route-map nat11 interface Serial1/1 overload 注:如果是去往电信网段,转换出口为s1/1口(网通接口),作用就是当去往电信网段主接口s1/0 down掉,这时只有拿s1/1接口(网通接口)的公网地址进行转换。 ip nat inside source route-map nat2 interface Serial1/1 overload 注:如果是去往网通网段,转换出口为s1/1口(网通接口), 正常去往网通时就拿S0/1公网地址进行转换。 ip nat inside source route-map nat22 interface Serial1/0 overload 注:如果是去往网通网段,转换出口为s1/0口(电信接口),作用就是当去往网通网段主接口s1/1 down掉,这时只有拿s1/0接口(电信接口)的公网地址进行转换。 ip nat inside source route-map isp3 interface Serial1/0 overload 注:如果访问的网段即不是电信,也不是网通,这时默认拿S1/0电信接口的公网地址进行转换。该语句可以不要。 ip nat inside source route-map ips33 interface Serial1/1 overload 注:如果访问的网段即不是电信,也不是网通,而且S1/0电信接口又DOWN掉时,只有拿S1/1网通接口的公网地址进行转换。该语句可以不要。 打开debug ip nat观看nat转换效果: 先在内网上ping电信的公网地址,可以看到,可以连接。 lan1#ping 20.20.20.1                                                         Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 20.20.20.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 12/40/64 ms lan1#ping 20.20.10.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 20.20.10.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 8/24/44 ms lan1#ping 20.20.30.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 20.20.30.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 8/23/44 m 在网关上看一下nat有没有正确转换: 01:25:47: NAT: s=192.168.1.2->100.100.100.1, d=20.20.20.1 [309] 01:25:47: NAT*: s=20.20.20.1, d=100.100.100.1->192.168.1.2 [309] 01:25:47: NAT: s=192.168.1.2->100.100.100.1, d=20.20.20.1 [310] 01:25:47: NAT*: s=20.20.20.1, d=100.100.100.1->192.168.1.2 [310] 01:25:47: NAT: s=192.168.1.2->100.100.100.1, d=20.20.20.1 [311] 01:25:47: NAT*: s=20.20.20.1, d=100.100.100.1->192.168.1.2 [311] 01:25:47: NAT: s=192.168.1.2->100.100.100.1, d=20.20.20.1 [312] 01:25:47: NAT*: s=20.20.20.1, d=100.100.100.1->192.168.1.2 [312] 01:25:47: NAT: s=192.168.1.2->100.100.100.1, d=20.20.20.1 [313] 01:25:47: NAT*: s=20.20.20.1, d=100.100.100.1->192.168.1.2 [313] nat# 01:25:52: NAT: s=192.168.1.2->100.100.100.1, d=20.20.10.1 [314] 01:25:52: NAT*: s=20.20.10.1, d=100.100.100.1->192.168.1.2 [314] 01:25:52: NAT: s=192.168.1.2->100.100.100.1, d=20.20.10.1 [315] 01:25:52: NAT*: s=20.20.10.1, d=100.100.100.1->192.168.1.2 [315] 01:25:52: NAT: s=192.168.1.2->100.100.100.1, d=20.20.10.1 [316] 01:25:52: NAT*: s=20.20.10.1, d=100.100.100.1->192.168.1.2 [316] 01:25:52: NAT: s=192.168.1.2->100.100.100.1, d=20.20.10.1 [317] 01:25:52: NAT*: s=20.20.10.1, d=100.100.100.1->192.168.1.2 [317] 01:25:52: NAT: s=192.168.1.2->100.100.100.1, d=20.20.10.1 [318] 01:25:52: NAT*: s=20.20.10.1, d=100.100.100.1->192.168.1.2 [318] nat# 01:25:56: NAT: s=192.168.1.2->100.100.100.1, d=20.20.30.1 [319] 01:25:56: NAT*: s=20.20.30.1, d=100.100.100.1->192.168.1.2 [319] 01:25:56: NAT: s=192.168.1.2->100.100.100.1, d=20.20.30.1 [320] 01:25:56: NAT*: s=20.20.30.1, d=100.100.100.1->192.168.1.2 [320] 01:25:56: NAT: s=192.168.1.2->100.100.100.1, d=20.20.30.1 [321] 01:25:56: NAT*: s=20.20.30.1, d=100.100.100.1->192.168.1.2 [321] 01:25:56: NAT: s=192.168.1.2->100.100.100.1, d=20.20.30.1 [322] 01:25:56: NAT*: s=20.20.30.1, d=100.100.100.1->192.168.1.2 [322] 01:25:56: NAT: s=192.168.1.2->100.100.100.1, d=20.20.30.1 [323] 01:25:56: NAT*: s=20.20.30.1, d=100.100.100.1->192.168.1.2 [323] 可以看出,去往电信网段时,NAT拿100.100.100.1这个电信的公网地址来转换,符合我们要求。 下面在内网去ping网通的网段: lan1#ping 220.220.1.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 220.220.1.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 12/28/44 ms lan1#ping 220.220.2.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 220.220.2.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/28/68 ms lan1#ping 220.220.3.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 220.220.3.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 16/46/64 ms 可以连通。 在网关看一下NAT转换情况: 01:29:16: NAT: s=192.168.1.2->200.200.200.1, d=220.220.1.1 [324] 01:29:16: NAT*: s=220.220.1.1, d=200.200.200.1->192.168.1.2 [324] 01:29:16: NAT: s=192.168.1.2->200.200.200.1, d=220.220.1.1 [325] 01:29:16: NAT*: s=220.220.1.1, d=200.200.200.1->192.168.1.2 [325] 01:29:16: NAT: s=192.168.1.2->200.200.200.1, d=220.220.1.1 [326] 01:29:16: NAT*: s=220.220.1.1, d=200.200.200.1->192.168.1.2 [326] 01:29:16: NAT: s=192.168.1.2->200.200.200.1, d=220.220.1.1 [327] 01:29:16: NAT*: s=220.220.1.1, d=200.200.200.1->192.168.1.2 [327] 01:29:16: NAT: s=192.168.1.2->200.200.200.1, d=220.220.1.1 [328] 01:29:16: NAT*: s=220.220.1.1, d=200.200.200.1->192.168.1.2 [328] nat#01:25:56: NAT*: s=20.20.30.1, d=100.100.100.1->192.168.1.2 [323] 01:29:19: NAT: s=192.168.1.2->200.200.200.1, d=220.220.2.1 [329] 01:29:19: NAT*: s=220.220.2.1, d=200.200.200.1->192.168.1.2 [329] 01:29:19: NAT: s=192.168.1.2->200.200.200.1, d=220.220.2.1 [330] 01:29:19: NAT*: s=220.220.2.1, d=200.200.200.1->192.168.1.2 [330] 01:29:19: NAT: s=192.168.1.2->200.200.200.1, d=220.220.2.1 [331] 01:29:19: NAT*: s=220.220.2.1, d=200.200.200.1->192.168.1.2 [331] 01:29:19: NAT: s=192.168.1.2->200.200.200.1, d=220.220.2.1 [332] 01:29:19: NAT*: s=220.220.2.1, d=200.200.200.1->192.168.1.2 [332] 01:29:19: NAT: s=192.168.1.2->200.200.200.1, d=220.220.2.1 [333] 01:29:19: NAT*: s=220.220.2.1, d=200.200.200.1->192.168.1.2 [333] nat#01:25:56: NAT*: s=20.20.30.1, d=100.100.100.1->192.168.1.2 [323] 01:29:21: NAT: s=192.168.1.2->200.200.200.1, d=220.220.3.1 [334] 01:29:21: NAT*: s=220.220.3.1, d=200.200.200.1->192.168.1.2 [334] 01:29:22: NAT: s=192.168.1.2->200.200.200.1, d=220.220.3.1 [335] 01:29:22: NAT*: s=220.220.3.1, d=200.200.200.1->192.168.1.2 [335] 01:29:22: NAT: s=192.168.1.2->200.200.200.1, d=220.220.3.1 [336] 01:29:22: NAT*: s=220.220.3.1, d=200.200.200.1->192.168.1.2 [336] 01:29:22: NAT: s=192.168.1.2->200.200.200.1, d=220.220.3.1 [337] 01:29:22: NAT*: s=220.220.3.1, d=200.200.200.1->192.168.1.2 [337] 01:29:22: NAT: s=192.168.1.2->200.200.200.1, d=220.220.3.1 [338] 01:29:22: NAT*: s=220.220.3.1, d=200.200.200.1->192.168.1.2 [338] 可以看出,网关是拿网通接口的公网地址200.200.200.1拿进行nat转换的,符合我们的要求。 在网关上看一下NAT转换情况: 01:37:10: NAT: s=192.168.1.2->100.100.100.1, d=6.6.6.6 [354] 01:37:10: NAT*: s=6.6.6.6, d=100.100.100.1->192.168.1.2 [354] 01:37:10: NAT: s=192.168.1.2->100.100.100.1, d=6.6.6.6 [355] 01:37:10: NAT: s=200.200.200.2, d=100.100.100.1->192.168.1.2 [339] 01:37:10: NAT: s=192.168.1.2->100.100.100.1, d=6.6.6.6 [356] 01:37:10: NAT*: s=6.6.6.6, d=100.100.100.1->192.168.1.2 [356] 01:37:10: NAT: s=192.168.1.2->100.100.100.1, d=6.6.6.6 [357] 去往非电信网通网段时,拿电信的公网地址进行转换。 下面我们把isp1路由器的S0/0接口关闭。这里通往电信的线路将不可达。 Isp1(config)#int s0/0 Isp1(config-if)#shutdown 回到NAT路由器上PING电信网关: nat#ping 100.100.100.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 100.100.100.2, timeout is 2 seconds: ..... Success rate is 0 percent (0/5) 发现不通,因为isp1把S0/0口DOWN掉了。 回到内网上在去ping电信网段,看一下情况会是怎样。 lan1#ping 20.20.10.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 20.20.10.1, timeout is 2 seconds: !!.!! Success rate is 80 percent (4/5), round-trip min/avg/max = 24/47/92 ms lan1#ping 20.20.20.1  Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 20.20.20.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 16/44/72 ms lan1#ping 20.20.30.1 Typ
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服