我发现自己处于不久前所处的境地,但我不记得我是如何解决它的 :)
情景
我有一个带有 LAN 接口 (fa0/0) 和 WAN 接口 (fa0/1) 以及第二个 WAN 接口 (fa0/2) 的 Cisco IOS 路由器。
- 假设有两个 LAN 子接口 fa0/0.10 和 fa0/0.20。
- 有一条通过 fa0/1 的默认路由。但是,有一个到特定子网的静态路由,比如说 1.2.3.4/24 通过 fa0/2(fa0/2 更接近这个子网,但是更昂贵的 $$$ WAN 链接)
我所有的 fa0/0.10 用户都在访问 1.2.3.4/24,因此静态路由将他们从 fa0/2 (WAN2) 发送出去。对于所有其他目的地,fa0/0.10 用户通过我在 WAN1 接口 fa0/1 上收到的 DHCP 默认路由。
问题定义;
fa0/0.20 子网中的用户只能访问 Internet。我的 fa0/0.20 子网中没有用户真的需要访问远程 1.2.3.4/24 子网。但是他们很少这样做,在这种情况下,静态路由通过 fa0/2 发送它们。不过我不想要这个,我希望他们通过 fa0/1(默认 WAN 接口)访问 1.2.3.4/24。我相信我可以通过 PBR 实现这一点,但我似乎无法让它发挥作用?
这是我目前正在尝试的配置;
interface FastEthernet0/0.10
description LAN1
encapsulation dot1Q 10
ip address 192.168.10.1 255.255.255.0
ip nat inside
ip virtual-reassembly
interface FastEthernet0/0.20
description LAN2
encapsulation dot1Q 20
ip address 192.168.20.1 255.255.255.0
ip nat inside
ip virtual-reassembly
ip policy route-map FORCE-LAN2-VIA-WAN1
interface FastEthernet0/1
description WAN1
ip address dhcp
ip nat outside
ip virtual-reassembly
interface FastEthernet0/2
description WAN2 - Used for 1.2.3.4/24
ip address 5.5.5.5 255.255.255.0
! Static route to route to a remote subnet via 2nd WAN link
ip route 1.2.3.4 0.0.0.255 5.5.5.6
! A default route is received on fa0/1 (WAN1) via DHCP from ISP
! for all other traffic
!
! NAT fa0/0.10 users when accessing the Internet via WAN1
ip nat inside source route-map ROUTE-WAN1 interface FastEthernet0/1 overload
!
! NAT fa0/0.20 users out via WAN1
ip nat inside source route-map FORCE-LAN2-VIA-WAN1 interface FastEthernet0/1 overload
route-map ROUTE-WAN1 permit 10
match interface FastEthernet0/1
route-map FORCE-LAN2-VIA-WAN1 permit 10
match interface FastEthernet0/0.20
set default interface FastEthernet0/1
我正在尝试将基于策略的路由直接应用于 fa0/0.20 子接口,以强制所有流量通过 WAN1、fa0/1。我的理解是,因为有一条比 DHCP 在 FIB 中的 fa0/1 上接收到的默认路由更具体的路由,它会覆盖 PBR 并且从 fa0/0.20 到 1.2.3.4/24 的流量仍在使用 WAN2,fa0/ 2. 或者至少,我相信在使用“设置默认界面...”时就是这种情况。例如,如果我要使用“set ip next-hop”,这将强制 PBR 优先,但 WAN1、fa0/1 通过 DHCP 接收 IP,因此正在改变:)
作为旁注;实际上有很多通过 WAN2 的静态路由,所以我不想通过 WAN2 为特定子网扭转情况和策略路由 fa0/0.10。那里的配置比我说的要复杂,但无论是长还是短,改变它都是不可行的。此外,如果除了 PBR 之外还有更好的方法来解决这个问题,我也很听话。我正在与这种方法作斗争,因为它是我所知道的最佳解决方案。
更新添加了一个壮观绘制的拓扑图