前不久广州一个项目所上图所示,本拓朴分别从电信、联通申请了外网链路,分别连至不同的路由器。路由器是Cisco 3925,switch是Cisco 3560V2
需求:从外网主动发起访问进局域里的,要求原路来原路回,即如果从电信的链路请求进行,回复时也从电信的链路回去。
分析:
本项目的路由选择核心节点在switch上。
有两种方法可实现上述需求。
1、使用BGP。在两台路由器上配置BGP,分别接收电信、联通的BGP路由条目,不仅可实现从外网发起访问时原路来原路回,也在内网主动访问外网时择优选择,即访问电信IP的从电信链路出去、访问联通IP的从联通链路出去。缺点是设备要求高,路由器Cisco3925应该可支持,但cisco 3560V2肯定不行。
2、使用NAT。将从外网主动访问的源IP地址通过NAT功能转换成特定的IP地址,在switch配置特定的IP地址路由便可实现。
在本次项目中将10.0.0.0/8划分成两个网段10.127.0.0/255.128.0.0和10.128.0.0/255.128.0.0,划分后的两个网段均有830多万个IP地址。
从外网主动发起访问,无法使用PAT,只能使用NAT映射。从外网发起访问的每一个会话数对应一个特定IP,即可有830多万个会话数。一个外网用户可能有多个会话数,从而会占有多个特定IP地址。在本次项目中,830多万个会话数已经足够满足客户要求。
联通 Route_L 配置:
router ospf 1
log-adjacency-changes
redistribute connected subnets
network 192.168.35.0 0.0.0.255 area 0
default-information originate always route-map a
!
ip nat pool 10 10.0.0.1 10.127.255.254 netmask 255.128.0.0 \\外网访问源IP转换池,共800万多。
ip nat inside source list 2 interface FastEthernet0/0 overload
ip nat outside source list 2 pool 10 \\外网访问nat
access-list 2 permit any
!
route-map a permit 10
set metric 2
电信 Route_D 配置:
router ospf 100
log-adjacency-changes
redistribute connected subnets
network 192.168.45.0 0.0.0.255 area 0
default-information originate always
!
ip nat pool 10 10.128.0.1 10.128.255.254 netmask 255.128.0.0 \\外网访问源IP转换池,共800万多。
ip nat inside source list 2 interface FastEthernet0/0 overload
ip nat outside source list 2 pool 10 \\外网访问nat
!
access-list 2 permit any
switch配置
router ospf 100
log-adjacency-changes
network 192.168.35.0 0.0.0.255 area 0
network 192.168.45.0 0.0.0.255 area 0
!
ip route 10.127.0.0 255.128.0.0 192.168.35.3 关于特定地址池的静态路由
ip route 10.128.0.0 255.128.0.0 192.168.45.3 关于特定地址池的静态路由