基本信息和要求:
一台锐捷EG网关,两条联通光纤宽带(需要网关进行PPPoE拨号);
PPPoE拨号只能获得一个IP地址,两条宽带都需要使用NAT(PAT);
宽带1作为默认线路,所有未指定的用户都使用宽带1上网(10.29.0.0/16);
宽带2仅供公共Wi-Fi用户使用(10.29.16.0/21);
两条宽带互为备份,其中一条断网时,受影响的用户自动使用另一条正常的宽带上网。
关于NAT部分:
锐捷EG网关对NAT转换规则的匹配,是全局性的、由上而下的。一旦匹配成功,就不会继续向下匹配。
换言之,同一个网段,想在两个出口都能用上NAT,就不能出现两条NAT转换规则。
现举例说明
(仅列出部分相关的配置命令)
ip nat pool Di1 prefix-length 24 //地址池1
address interface dialer 1 match interface dialer 1
ip nat pool Di2 prefix-length 24 //地址池2
address interface dialer 2 match interface dialer 2
ip nat inside source list 10 pool Di1 overload //NAT转换规则1
ip nat inside source list 20 pool Di2 overload //NAT转换规则2
ip access-list standard 10 //ACL 10与20相同
100 permit 10.29.16.0 0.0.7.255
ip access-list standard 20
100 permit 10.29.16.0 0.0.7.255
route-map Ag1 permit 0 //策略路由,让10.29.16.0/21走宽带2
match ip address 20
set interface dialer 2
这个配置建立了两个NAT转换规则,但由ACL指定的网段是一致的。尽管策略路由让Wi-Fi用户(10.29.16.0/21)走宽带2, 但对报文进行NAT转换时,按ACL匹配到的却是第一条NAT转换规则(ACL 10和Di1),导致Wi-Fi用户无法正常上网。
如果在ACL 10中将Wi-Fi用户的IP段deny掉,确实可以准确匹配到第二条NAT转换规则了,Wi-Fi用户也可以正常走宽带2上网,但Wi-Fi用户就永远无法正常使用宽带1,双线互为备份也就无法实现。
可将配置修改如下:
ip nat pool nat_pool prefix-length 24 //只建立一个地址池
address interface dialer 1 match interface dialer 1 //地址池内引用两个拨号接口
address interface dialer 2 match interface dialer 2
ip access-list standard 1
10 permit 10.29.0.0 0.0.255.255 //匹配内网的全部地址范围
ip nat inside source list 1 pool nat_pool overload //只有一条NAT转换规则
//策略路由部分配置不变
锐捷EG设备支持在一个NAT地址池内引用多个拨号接口,这样只需建立一个NAT转换规则。与策略路由配合使用也没有任何问题。
关于运营商路由部分:
锐捷EG设备在配置外网接口时,在高级配置中会让你选择外线的网络服务商(如联通、电信等)。这个功能被称为运营商路由(运营商选路)。据官方解释,该功能“实际上是下发静态路由,distance值为2”。
因为没有明示,所以容易将本案中的两条线路都选择为“联通”。但实际上,因为EG设备对报文的处理顺序等原因,如此设置可能会对策略路由产生干扰。
可以通过“show route-db-info cnc”命令查看具体的运营商路由配置(联通的),其中包括路由的明细,以及下一跳目标。
对于本案例这种两条宽带运营商相同的情况,最佳实践是将两个外网接口的“网络服务商”都设置为“其他”,即禁用运营商路由功能。
如果EG上两条宽带属于不同运营商(如一条联通,另一条电信),则可以按实际情况配置。

1447

被折叠的 条评论
为什么被折叠?



