Я пытаюсь перенаправить порт на внутренний сервер. Я попытался использовать static nat для его пересылки, и я открыл его в списке доступа, насколько мне известно, но я не могу заставить его открыться.
Команда
ip nat inside source static <internal address> <public address>
для NAT всего IP, или
ip nat inside source static tcp <internal address> <port> <public address> <port>
ip nat inside source static udp <internal address> <port> <public address> <port>
Для определенных портов UDP или TCP.
Затем вам нужно иметь список доступа на внешнем интерфейсе, который разрешает доступ к порту на общественный адрес.
Также убедитесь, что у вас есть ip nat inside
на внутреннем интерфейсе и ip nat outside
на внешнем интерфейсе
Обновление 1
Список доступа, связанный с внешним интерфейсом, должен включать правило, разрешающее входящее соединение. Допустим, у вас есть порт 80 - это порт, который вы хотите перенаправить. Допустим также, что Dialer0 - это ваш внешний интерфейс, FastEthernet0 - ваш внутренний, а 10.1.1.1 - это внутренний IP-адрес:
interface FastEthernet 0
ip nat inside
!
interface Dialer 0
ip nat outside
ip access-group outside-in in
!
ip nat inside source static tcp 10.1.1.1 80 interface Dialer0 80
ip access-list extended outside-in
permit tcp any any eq 80
deny ip any any
Обратите внимание, что в этом примере я привязал NAT к интерфейсу Dialer0, поэтому нам не нужно жестко указывать IP-адрес в конфигурации - он будет принимать любой адрес, который имеет интерфейс D0, в качестве общедоступного адреса.
Также обратите внимание, что команда разрешения в списке доступа разрешает доступ к любому IP на порту 80. Используйте этот метод только в том случае, если маршрутизатор не маршрутизирует другие адреса, кроме того, который используется для внешнего интерфейса. В противном случае жесткий код host <ip address>
где IP-адрес - это IP-адрес внешнего интерфейса вместо второго "любого"