Подключение к портам внутреннего сервера. Два провайдера.

Предоставление сервисов из внутренней сети. Доступ от двух провайдеров.
Топология сети:

Предоставление сервисов из внутренней сети. Доступ от двух провайдеров. Топология сети

R2 — Cisco 2651xm (IOS c2600-ipbasek9-mz.124-17.bin)
R1 — H3C SecPath U200-S UTM
R3 — Cisco 3750x (IOS /c3750e-universalk9-mz.122-55.SE3.bin)
R4 — ISA server 2006 (LAN)

На сервере 1.1.1.2 предоставляется доступ к порту RDP из внешних и внутренних сетей.

Примеры конфигураций:

Сервер:
1.1.1.2/24 gw 1.1.1.254, порт для подключения 3389

ISA (R4):
NIC2 — 10.255.252.6/30 — P2P to R3
NIC1 — 192.168.0.1 — LAN

route add -p 1.1.1.0 mask 255.255.255.0 10.255.252.5

Конфигурация R3:
1.1.1.254 — Vlan11
Gi1/0/24 10.255.252.1/30 — P2P на R1
Gi1/0/23 10.255.252.5/30 — P2P на R4
Gi1/0/22 10.255.252.9/30 — P2P на R2

Разрешить SDM routing в Cisco 3750x для полноценного маршрутизирования:

config# sdm pref routing
core# wr
core# reload

Конфигурация необходимых портов и функций:

interface GigabitEthernet1/0/22
 description P2P-to-CISCO2600-RDP-fe0/0-10.255.252.10-(R2)
 no switchport
 ip address 10.255.252.9 255.255.255.252
!
interface GigabitEthernet1/0/23
 description P2P-to-ISA-(R4)
 no switchport
 ip address 10.255.252.5 255.255.255.252
!
interface GigabitEthernet1/0/24
 description P2P-to-UTM-(R1)
 no switchport
 ip address 10.255.252.1 255.255.255.252
!
interface Vlan10
 description LAN-Server
 ip address 1.1.1.254 255.255.255.0

ip default-gateway 10.255.252.2

ip classless
ip routing
ip subnet-zero

ip route 0.0.0.0 0.0.0.0 10.255.252.2
ip route 1.1.1.0 255.255.255.0 Vlan10
ip route 192.168.0.0 255.255.255.0 10.255.252.6

Конфигурация UTM (R1):

interface GigabitEthernet0/1  (P2P to R3)
 port link-mode route
 ip address 10.255.252.2 255.255.255.252

interface GigabitEthernet0/4 (WAN)
 port link-mode route
 nat outbound 2000
 nat server 1 protocol tcp global current-interface 3389 inside 1.1.1.2 3389
 ip address 100.255.255.100 255.255.255.248

 ip route-static 0.0.0.0 0.0.0.0 100.255.255.99 (GW WAN 1)
 ip route-static 1.1.1.0 255.255.255.0 10.255.252.1
 ip route-static 192.168.0.0 255.255.255.0 10.255.252.1

acl number 2000
 rule 1 permit

Конфигурация R2:
Вот в этом месте начинается самое интересное :)
При подключении через первого провайдера на маршрутизаторе R1 все проходит без проблем, порт внутреннего сервера доступен, RDP сессии работают.
При обычной конфигурации статического NAT-а (ip nat inside — ip nat outside) доступа нет.
Выяснение причин показало, что запрос от внешнего пользователя через второго провайдера (R2) доходит до сервера, но соединение не устанавливается.
Почему? В случае двух провайдеров только один из них может быть дефолтным маршрутом. Запрос сервер получает от «белого» адреса из Интернет. Поэтому ответные пакеты идут через маршрут по умолчанию, R1, который их не ждет, а не через R2, через который пришел запрос. Танцы с бубном с различными вариантами NAT/PAT и великий Гугл с Хабром в лице Подкопаева Ильи, подсказали решение — Cisco NVI NAT. Проверить имеется ли возможность в вашей версии IOS его включить — посмотреть возможность на интерфейсе

 ip nat enable

В моем случае этого не было. Пришлось искать другой IOS для C2651xm. После установки другой версии все заработало. Если все сделаете внимательно, со своими портами и адресами, то и у вас заработает :)

Непосредственно конфигурация, точнее важные фрагменты R2:

boot-start-marker
boot system flash:c2600-ipbasek9-mz.124-17.bin (если поменяли IOS впишите свой файл)
boot-end-marker

interface FastEthernet0/0
 description LINK-to-R3(22)-10.255.252.9
 ip address 10.255.252.10 255.255.255.252
 ip nat enable

interface FastEthernet0/1
 description LINK-to-WAN-200.255.255.199 (GW WAN 2)
 ip address 200.255.255.200 255.255.255.248
 ip nat enable

ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 200.255.255.199
ip route 1.1.1.0 255.255.255.0 10.255.252.9

ip nat pool SERV_PAT 10.255.252.10 10.255.252.10 prefix-length 30
ip nat source list 100 interface FastEthernet0/1 overload
ip nat source list 101 pool SERV_PAT overload
ip nat source static tcp 1.1.1.2 3389 200.255.255.200 3389 extendable

access-list 100 permit ip 1.1.1.0 0.0.0.255 any
access-list 101 permit tcp any host 200.255.255.200 eq 3389

В итоге имеем два независимых канала для подключения удаленных RDP пользователей к внутреннему серверу.