Я пытался понять, как выполнить PATing от внешнего к внутреннему на маршрутизаторе Cisco IOS, в данном случае конкретно Cisco 2901
работает IOS Version 15.1(4)M1
.
Во-первых, проблема, которую я пытаюсь решить, заключается в том, что мы хотим, чтобы переадресация через внешний порт работала независимо от того, какое соединение является шлюзом по умолчанию.
На этом конкретном маршрутизаторе у нас есть два WAN-соединения. Один на встроенном Gig0/0
интерфейс, а другой - с помощью карты EHWIC, Gig0/0/0
.
Пример правила переадресации портов на этом устройстве:
ip nat inside source static tcp 192.168.1.10 3389 x.x.x.x 3389 extendable
куда x.x.x.x
это IP-адрес интерфейса Gig0/0/0
.
Это отлично работает, если Gig0/0/0
является шлюзом по умолчанию для маршрутизатора, однако если Gig0/0
- это шлюз по умолчанию, через который выполняется переадресация порта.
Также стоит отметить, что Gig0/1
interface - это шлюз по умолчанию для всех компьютеров и серверов локальной сети, который назначается ip nat inside
где Gig0/0
и Gig0/0/0
оба ip nat outside
.
Я выполняю свой стандартный PAT изнутри на внешний, используя route-map
элементы, которые соответствуют моему NAT ACL с интерфейсом.
Я знаю, что могу возиться с ip nat outside
и пулы NAT, но есть ли более чистый способ добиться того, чего я хочу? Даже если я пойду совершенно неверно и NAT / PAT не решит мою проблему, указание меня в правильном направлении будет большим подспорьем!
Единственная причина, по которой я считаю, что это лучший вариант, - это тот факт, что каждое устройство брандмауэра, которое я использовал, имеет функцию в своих политиках для выполнения преобразования исходного NAT в IP-адрес выходного интерфейса, и его так просто включить!
interface GigabitEthernet0/0
description ----WAN_INTERFACE_PRI----
mtu 1596
ip address x.x.x.x 255.255.255.248
ip access-group SECURE-IN in
ip flow ingress
ip nat outside
ip virtual-reassembly in
duplex full
speed 1000
no cdp enable
service-policy output EthernetAccessService
!
interface GigabitEthernet0/1
description ----INTERNAL----
ip address 192.168.1.1 255.255.255.0
ip access-group OUT-FILTER in
no ip redirects
no ip proxy-arp
ip flow ingress
ip nat inside
ip virtual-reassembly in
duplex auto
speed auto
!
interface GigabitEthernet0/0/0
description ----WAN_INTERFACE_BACK----
ip address y.y.y.y 255.255.254.0
no ip redirects
no ip proxy-arp
ip nat outside
ip virtual-reassembly in
duplex auto
speed auto
!
!
ip forward-protocol nd
!
no ip http server
no ip http secure-server
!
ip nat inside source static tcp 192.168.1.10 3389 interface GigabitEthernet0/0/0 3389
ip nat inside source route-map BACK_WAN interface GigabitEthernet0/0/0 overload no-payload
ip nat inside source route-map PRI_WAN interface GigabitEthernet0/0 overload no-payload
! <Many port forwards cut>
ip route 0.0.0.0 0.0.0.0 (x.x.x.x Gateway) permanent
ip route 0.0.0.0 0.0.0.0 (y.y.y.y Gateway) 10 permanent
!
ip access-list extended NAT-ACL
permit ip 192.168.1.0 0.0.0.255 any
deny ip any any
ip access-list extended OUT-FILTER
permit icmp any any
permit ip object-group Unrestricted-Access-Group any
deny ip 192.168.1.0 0.0.0.255 any
deny ip any any
ip access-list extended SECURE-IN
permit ip host <allowed telnet/ssh addresses> any
deny tcp any any eq telnet log
deny tcp any any eq 22 log
permit ip any any
!
no cdp run
!
!
!
route-map PRI_WAN permit 10
match ip address NAT-ACL
match interface GigabitEthernet0/0
!
route-map BACK_WAN permit 10
match ip address NAT-ACL
match interface GigabitEthernet0/0/0
Насколько я понимаю, у вас есть два подключения к Интернету на маршрутизаторе - я полагаю, для резервирования. Могу ли я предположить, что если Gi0 / 0/0 выйдет из строя, тогда Gi0 / 0 захватит ваше интернет-соединение?
Если это так, то причина, по которой преобразование PAT перестает работать, заключается в том, что общедоступный IP-адрес, который используется Gi0 / 0/0 для порта 3389, больше не доступен.
Разве нельзя просто добавить вторую строчку:
ip nat inside source static tcp 192.168.1.10 3389 y.y.y.y 3389 extendable
Где y.y.y.y - это IP-адрес вашего интерфейса Gi0 / 0.
Если я неправильно понял, опишите конфигурацию более подробно или еще лучше опубликуйте свой config.