Протокол IP : Технология NAT

Примерная конфигурация с использованием команды ip nat outside source list

20 октября 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Перевод, выполненный профессиональным переводчиком (28 июля 2008) | Английский (22 августа 2015) | Отзыв


Содержание


Введение

Данный документ содержит пример конфигурации с использованием команды ip nat outside source list и включает в себя краткое описание того, что происходит с IP–пакетами во время процесса NAT (Преобразование сетевых адресов). Эту команду можно использовать для трансляции адреса источника IP–пакетов, поступающих из внешней сети во внутреннюю сеть. Данное действие преобразует адрес назначения IP–пакетов, перемещаемых в противоположном направлении - из внутренней сети во внешнюю. Эта команда используется в таких ситуациях как наложение сетей, когда адреса внутренней сети перекрывают адреса внешней сети. Рассмотрим схему сети в качестве примера.

Предварительные условия

Требования

Для этого документа отсутствуют особые требования.

Используемые компоненты

Настоящий документ не имеет жесткой привязки к каким-либо конкретным версиям программного обеспечения и оборудования. Однако сведения, содержащиеся в данном документе, касаются следующих версий программного и аппаратного обеспечения:

  • Маршрутизаторы Cisco серии 2500

  • Cisco Выпуск ПО IOS� 12.2 (24a) работающий на всех маршрутизаторах

Сведения, представленные в этом документе, были получены от устройств, работающих в специальной лабораторной среде. Все устройства, описанные в этом документе, были запущены с чистой (стандартной) конфигурацией. В рабочей сети необходимо изучить потенциальное воздействие всех команд до их использования.

Условные обозначения

Дополнительные сведения об условных обозначениях в документах см. Cisco Technical Tips Conventions.

Настройка

В этом разделе содержатся сведения о настройке функций, описанных в этом документе.

Примечание: Поиск дополнительной информации о командах в данном документе можно выполнить с помощью средства "Command Lookup" (Поиск команд) (только для зарегистрированных клиентов).

Схема сети

В настоящем документе используется следующая схема сети:

/image/gif/paws/13770/1a.gif

Если команда ping отправлена с интерфейса Loopback0 (172.16.88.1) маршрутизатора 2514W на интерфейс Loopback0 (171.68.1.1) маршрутизатора 2501E, происходит следующее:

Маршрутизатор 2514W пересылает пакеты маршрутизатору 2514X, так как он настроен с использованием маршрута по умолчанию. Находясь на внешнем интерфейсе маршрутизатора 2514X, пакет имеет адрес источника (SA) 172.16.88.1 и адрес назначения (DA) 171.68.1.1. Так как адрес SA задан в списке доступа 1, который используется командой ip nat outside source list, он преобразуется в адрес из пула Net171 NAT. Отметим, что команда ip nat outside source list ссылается на пул "Net171" NAT. В этом случае адрес преобразуется в 171.68.16.10, который является самым первым доступным адресом в пуле NAT. После трансляции маршрутизатор 2514X ищет пункт назначения в таблице маршрутизации, и прокладывает путь пакетов. Маршрутизатор 2501E видит пакет на своем входном интерфейсе с SA адреса 171.68.16.10 и DA адреса 171.68.1.1. В ответ он отправляет эхо-ответ ICMP (Протокол управляющих сообщений в Интернет-сети) на адрес 171.68.16.5. Если маршрут отсутствует, маршрутизатор отбрасывает пакет. В этом случае он имеет маршрут (по умолчанию) и отправляет пакеты на маршрутизатор 2545Х, используя SA адреса 171.68.1.1 и DA адреса 171.68.16.10. Маршрутизатор 2514X "видит" пакет в своем внутреннем интерфейсе и проверяет маршрут для адреса 171.68.16.10. Если маршрутов не найдено, он отвечает сообщением ICMP о недостижимости. В этом случае он имеет маршрут к адресу 171.68.16.10 (благодаря параметру add-route команды ip nat outside source, который добавляет маршрут хоста на основе преобразования внешнего глобального адреса во внешний локальный адрес), поэтому маршрутизатор снова преобразует пакет в адрес 172.16.88.1 и прокладывает его путь из внешнего интерфейса.

Конфигурации

Маршрутизатор 2514W
hostname 2514W 
!

!--- Output suppressed.
 
interface Loopback0 
 ip address 172.16.88.1 255.255.255.0 
!

!--- Output suppressed.
 
interface Serial0 
 ip address 172.16.191.254 255.255.255.252 
 no ip mroute-cache 
!

!--- Output suppressed.
 
ip classless 
ip route 0.0.0.0 0.0.0.0 172.16.191.253 

!--- Default route to forward packets to 2514X.


!

!--- Output suppressed.

Маршрутизатор 2514X
hostname 2514X 
! 

!--- Output suppressed.

! 
interface Ethernet1 
 ip address 171.68.192.202 255.255.255.0 
 ip nat inside 
 no ip mroute-cache 
 no ip route-cache 
!

!--- Output suppressed.
 
interface Serial1 
 ip address 172.16.191.253 255.255.255.252 
 ip nat outside 
 no ip mroute-cache 
 no ip route-cache 
 clockrate 2000000 
! 
ip nat pool Net171 171.68.16.10 171.68.16.254 netmask 255.255.255.0 

!--- NAT pool defining Outside Local addresses to be used for translation. 

!
ip nat outside source list 1 pool Net171 add-route

!--- Configures translation for Outside Global addresses
!--- with the NAT pool.  


ip classless 
ip route 172.16.88.0 255.255.255.0 172.16.191.254 
ip route 171.68.1.0 255.255.255.0 171.68.192.201

!--- Static routes for reaching the loopback interfaces 
!--- on 2514W and 2501E.
 

access-list 1 permit 172.16.88.0 0.0.0.255 

!--- Access-list defining Outside Global addresses to be translated. 


!

!--- Output suppressed.

!

Маршрутизатор 2501e
hostname 2501E 
! 

!--- Output suppressed.

interface Loopback0 
 ip address 171.68.1.1 255.255.255.0 
! 
interface Ethernet0 
 ip address 171.68.192.201 255.255.255.0 
! 

!--- Output suppressed.

ip classless 
ip route 0.0.0.0 0.0.0.0 171.68.192.202 

!--- Default route to forward packets to 2514X.


!

!--- Output suppressed.

Проверка

В этом разделе приведена информация, которую можно использовать для проверки правильности работы конфигурации.

Некоторые команды show поддерживаются Средством интерпретации выходных данных(только зарегистрированные клиенты), которое позволяет просматривать аналитику выходных данных команды show.

Команда show ip nat translations используется для проверки записей трансляции, как показано в выходных данных ниже.

2514X# show ip nat translations
Pro Inside global      Inside local       Outside local      Outside global
--- 171.68.1.1          171.68.1.1         171.68.16.10       172.16.88.1
--- ---                 ---                171.68.16.10       172.16.88.1

2514X#

Как показано в выходных данных выше, внешний глобальный адрес 172.16.88.1, который является адресом интерфейса Loopback0 маршрутизатора 2514W, преобразуется во внешний глобальный адрес 171.68.16.10.

Для проверки записей таблиц маршрутизации можно использовать команду show ip route, как показано ниже:

2514X# show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     171.68.0.0/16 is variably subnetted, 3 subnets, 2 masks
C       171.68.192.0/24 is directly connected, Ethernet1
S       171.68.1.0/24 [1/0] via 171.68.192.201
S       171.68.16.10/32 [1/0] via 172.16.88.1
     172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
S       172.16.88.0/24 [1/0] via 172.16.191.254
C       172.16.191.252/30 is directly connected, Serial1
2514X#

В выходных данных показан маршрут /32 для внешнего локального адреса 171.68.16.10, созданного благодаря использованию параметра add-route команды ip nat outside source. Этот маршрут используется для маршрутизации и трансляции пакетов, проходящих из внутренней сети во внешнюю.

Устранение неполадок

В этом разделе описывается процесс устранения неполадок конфигурации.

Эти выходные данные являются результатом выполнения команд debug ip packet и debug ip nat на маршрутизаторе 2514X при прозванивании от адреса интерфейса маршрутизатора 2514W loopback0 (172.16.88.1) к адресу интерфейса маршрутизатора 2501E loopback0 (171.68.1.1):

*Mar  1 00:02:48.079: NAT*: s=172.16.88.1->171.68.16.10, d=171.68.1.1 [95]

!--- The source address in the first packet arriving on
!--- the outside interface is first translated.


*Mar  1 00:02:48.119: IP: tableid=0, s=171.68.16.10 (Serial1), d=171.68.1.1 (Ethernet1), routed via
RIB
*Mar  1 00:02:48.087: IP: s=171.68.16.10 (Serial1), d=171.68.1.1 (Ethernet1), g=171.68.192.201, len
100, forward

!--- The ICMP echo request packet with the translated source address
!--- is routed and forwarded on the inside interface.

 
*Mar  1 00:02:48.095: IP: tableid=0, s=171.68.1.1 (Ethernet1), d=171.68.16.10 (Serial1), routed via
RIB

!--- The ICMP echo reply packet arriving on the inside interface 
!--- is first routed based on the destination address.

 
*Mar  1 00:02:48.099: NAT: s=171.68.1.1, d=171.68.16.10->172.16.88.1 [95]

!--- The destination address in the packet is then translated.

 

*Mar  1 00:02:48.103: IP: s=171.68.1.1 (Ethernet1), d=172.16.88.1 (Serial1), g=172.16.191.254, len 1
00, forward

!--- The ICMP echo reply packet with the translated destination 
!--- address is forwarded on the outside interface.


Вышеописанная процедура повторяется для каждого пакета, принятого на внешнем интерфейсе.

Сводка

Главное отличие команды ip nat outside source list (динамическое преобразование NAT) от команды ip nat outside source static (статическое преобразование NAT) состоит в том, что в таблице преобразования записи не появляются, пока маршрутизатор (настроенный для NAT) не проверит критерии преобразования пакета. В вышеуказанном примере пакет с SA-адресом 172.16.88.1 (поступающий из внешнего интерфейса маршрутизатора 2514X) соответствует списку доступа 1. Эти критерии используется командой ip nat outside source list. По этой причине пакеты, исходящие из внешней сети, должны существовать прежде, чем пакеты из внутренней сети смогут взаимодействовать с интерфейсом loopback0 маршрутизатора 2514W.

Обратите внимание на два важных момента в этом примере.

Во-первых, когда пакет поступает из внешней сети во внутреннюю, сначала происходит трансляция, а потом для определения места назначения проверяется таблица маршрутизации. Когда пакет поступает из внутренней сети во внешнюю, сначала для определения места назначения проверяется таблица маршрутизации, а потом происходит трансляция.

Во-вторых, необходимо определить, какая часть IP-пакета преобразуется при использовании каждой из описанных выше команд. В следующей таблице даны рекомендации:

Команда Действие
ip nat outside source list
  • транслирует источник пакетов IP, перемещающихся снаружи внутрь
  • транслирует конечные адреса исходящих IP-пакетов
ip nat inside source list
  • преобразует источник пакетов IP, перемещающихся изнутри наружу
  • преобразует место назначения пакетов IP, перемещающихся снаружи внутрь

Из вышесказанного понятно, что существует несколько способов трансляции пакета. В зависимости от конкретных требований следует задать способ определения интерфейсов NAT (внутренний или внешний), а также какие маршруты должна содержать таблица маршрутизации до или после трансляции. Помните, что часть преобразуемого пакета зависит от направления перемещения пакета и от настройки NAT.


Дополнительные сведения


Document ID: 13770