Я знаходжу себе в ситуації, в якій я був не надто давно, але не можу пригадати, як я це вирішив :)
Сценарій
У мене є маршрутизатор Cisco IOS з інтерфейсом LAN (fa0 / 0) та інтерфейсом WAN (fa0 / 1), а також другим інтерфейсом WAN (fa0 / 2).
- Існує два підінтерфейси локальної мережі: 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 переходять через маршрут за замовчуванням DHCP, який я отримую через інтерфейс WAN1 fa0 / 1.
Визначення проблеми;
Користувачі в підмережі fa0 / 0.20 просто отримують доступ до Інтернету. Жоден користувач у моїй підмережі fa0 / 0.20 не має дійсного доступу до віддаленої підмережі 1.2.3.4/24. Вони рідко роблять, хоча в цьому випадку статичний маршрут надсилає їх через fa0 / 2. Я цього не хочу, хочу, щоб вони отримували доступ до 1.2.3.4/24 через fa0 / 1, інтерфейс WAN за замовчуванням. Я вважаю, що я можу досягти цього за допомогою 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 на fa0 / 1 у FIB, він перекриває PBR, а трафік від fa0 / 0.20 до 1.2.3.4/24 все ще використовує WAN2, fa0 / 2. Або, принаймні, я вважаю, що це саме так, коли використовується "встановити інтерфейс за замовчуванням ...". Якби я використовував, наприклад, "set ip next-hop", це змусило б PBR мати перевагу, але WAN1, fa0 / 1, отримує IP через DHCP і, таким чином, змінюється :)
Як бічна записка; Насправді існує багато статичних маршрутів через WAN2, тому я не хочу змінювати ситуацію та політику маршруту fa0 / 0.10 через WAN2 для конкретних підмереж. Конфігурація там є більш складною, ніж я напустив, довга і коротка, хоча це змінити неможливо. Крім того, якщо є кращий спосіб вирішити цю проблему, крім PBR, я все вухо. Я борюся з цим методом, тому що це найкраще рішення, про яке я знаю.
Оновлення Додано ефектно намальовану діаграму топології