The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"проблемы с настройкой nat"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Маршрутизаторы CISCO и др. оборудование. (Public)
Изначальное сообщение [Проследить за развитием треда]

"проблемы с настройкой nat" 
Сообщение от pz emailНайти другие сообщения данного автораПоместить сообщение в закладки. См. нижнее поле навигации.(??) on 05-Апр-05, 10:36  (MSK)
Господа!
есть такой конфиг:

interface Ethernet0
ip address 192.168.106.34 255.255.255.0
ip nat inside
!
interface Ethernet1
ip address 10.80.2.122 255.255.255.252
ip nat outside
!
ip nat inside source static tcp 192.168.116.5 3232 10.80.2.122 3232 extendable
ip nat outside source static 10.80.20.2 192.168.106.35 extendable
ip classless
ip route 10.80.0.0 255.255.0.0 10.80.2.121
ip route 192.168.116.0 255.255.255.0 192.168.106.1

предполагается, что входяший трафик с 10.80.20.2 на 10.80.2.122 порт 3232 будет транслироваться на 192.168.116.5 3232, при этом 10.80.20.2 меняться на 192.168.106.35, и судя по сообщениям debug ip nat detailed, так и происходит, но соединение почему-то не устанавливается, т.е.
пакеты транслируются и приходят на 192.168.116.5, успешно возвращаются на 192.168.106.35 и все. обратная трансляция 192.168.106.35 -> 10.80.20.2 не работает. Второй день понять не могу, где глючу?

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "проблемы с настройкой nat" 
Сообщение от realghost emailНайти другие сообщения данного автораПоместить сообщение в закладки. См. нижнее поле навигации.(ok) on 05-Апр-05, 12:46  (MSK)

>предполагается, что входяший трафик с 10.80.20.2 на 10.80.2.122 порт 3232 будет транслироваться на 192.168.116.5 3232

вообще-то для этого достаточно уже

>ip nat inside source static tcp 192.168.116.5 3232 10.80.2.122 3232 extendable

после этого уже для всех внешних хостов машина с ip 192.168.116.5 будет видна как 10.80.2.122 по порту 3232. Если нужно, чтобы она была доступна только с 10.80.20.2 - фильтровать с помощью ACL на внешнем интерфейсе.

>пакеты транслируются и приходят на 192.168.116.5, успешно возвращаются на 192.168.106.35 и все. обратная трансляция 192.168.106.35 -> 10.80.20.2 не работает. Второй день понять не могу, где глючу?

ip nat outside source static, насколько я понимаю, нужен для того, чтобы для машин в локалке внешний хост был виден под локальным адресом. То есть после

>ip nat outside source static 10.80.20.2 192.168.106.35 extendable

машины из локалки, пытающиеся обратиться к 192.168.106.35, будут попадать наружу на 10.80.20.2. Если же в сетке уже есть ip 192.168.106.35, то получится фигня ...

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "проблемы с настройкой nat" 
Сообщение от pz emailНайти другие сообщения данного автораПоместить сообщение в закладки. См. нижнее поле навигации.(??) on 05-Апр-05, 15:12  (MSK)
>
>>предполагается, что входяший трафик с 10.80.20.2 на 10.80.2.122 порт 3232 будет транслироваться на 192.168.116.5 3232
>
>вообще-то для этого достаточно уже
>
>>ip nat inside source static tcp 192.168.116.5 3232 10.80.2.122 3232 extendable
>
>после этого уже для всех внешних хостов машина с ip 192.168.116.5 будет
>видна как 10.80.2.122 по порту 3232. Если нужно, чтобы она была
>доступна только с 10.80.20.2 - фильтровать с помощью ACL на внешнем
>интерфейсе.
>

не так просто. машина с ip 192.168.116.5 соответственно в сети
192.168.116.х, а рутер с ip 192.168.106.34 (e0) соответственно в сети
192.168.106.х, между сетями 192.168.106.х и 192.168.116.х есть взаимная маршрутизация. пакет с другим sourse (10.80.20.2) между этими сетями ходить не будет.
поэтому и делается преобразование:
s 10.80.20.2|d 10.80.2.122 -> s 192.168.106.35|d 192.168.116.5

но почему в обратную сторону не работает?


>>пакеты транслируются и приходят на 192.168.116.5, успешно возвращаются на 192.168.106.35 и все. обратная трансляция 192.168.106.35 -> 10.80.20.2 не работает. Второй день понять не могу, где глючу?
>
>ip nat outside source static, насколько я понимаю, нужен для того, чтобы
>для машин в локалке внешний хост был виден под локальным адресом.
>То есть после
>
>>ip nat outside source static 10.80.20.2 192.168.106.35 extendable
>
>машины из локалки, пытающиеся обратиться к 192.168.106.35, будут попадать наружу на 10.80.20.2.
>Если же в сетке уже есть ip 192.168.106.35, то получится фигня
>...
получится, но такого адреса нет

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "проблемы с настройкой nat" 
Сообщение от realghost emailНайти другие сообщения данного автораПоместить сообщение в закладки. См. нижнее поле навигации.(ok) on 05-Апр-05, 17:39  (MSK)

>не так просто. машина с ip 192.168.116.5 соответственно в сети
>192.168.116.х, а рутер с ip 192.168.106.34 (e0) соответственно в сети
>192.168.106.х, между сетями 192.168.106.х и 192.168.116.х есть взаимная маршрутизация. пакет с другим
>sourse (10.80.20.2) между этими сетями ходить не будет.

Гм, может оказаться, что единственное решение - это таки настроить маршрутизатор, который связывает эти две подсети, чтобы он пропускал пакеты с адресом 10.80.20.2, причем из 192.168.116.x пулял их именно на 192.168.106.34. Или, как еще слегка извращенный вариант, в свою очередь делал NAT из 10.80.20.2 в 192.168.116.35, вместо введения дополнительного маршрута. И оставить ip nat source static, как оно и должно быть.

>поэтому и делается преобразование:
>s 10.80.20.2|d 10.80.2.122 -> s 192.168.106.35|d 192.168.116.5


>но почему в обратную сторону не работает?
Имхо, с указанной выше конфигурацией дело обстоит так:
1)Приходит пакет на внешний интерфейс: 10.80.2.2:1234=>10.80.2.122:3232. 2)Кошка отрабатывает nat inside source, пакет становится 10.80.2.2:1234=>195.168.116.5:3232, в таблице NAT создается запись:

Pro Inside global    Inside local       Outside local  Outside global
tcp 10.80.2.122:3232 195.168.116.5:3232 10.80.2.2:1234 10.80.2.2:1234

3)Затем отрабатывает nat outside source: пакет теперь 192.168.106.35:1234=>192.168.116.5:3232.

4)Хост с ip 192.168.116.5 возвращает пакет с 192.168.116.6:3232=>192.168.106.35:1234.
5)тут должна была быть обработка nat inside source, но ее нет :( Потому как пакет 192.168.116.6:3232=>192.168.106.35:1234 не соответствует записи в таблице NAT из п.2
6)отрабатывает nat outside source - пакет становится 192.168.116.6:3232=>10.80.2.2:1234 и по хорошему должен прибиться ACL на исходящий трафик на внешнем интерфейсе - нехорошо выпускать с локальными адресами наружу. Если в соотв. ACL включено логирование, то должны быть записи в логе. Если же он и уходит, то все равно впустую - src неправильный.

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

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "проблемы с настройкой nat" 
Сообщение от realghost emailНайти другие сообщения данного автораПоместить сообщение в закладки. См. нижнее поле навигации.(ok) on 06-Апр-05, 11:23  (MSK)
Сорри, ошибся в предыдущем посте:

>6)отрабатывает nat outside source - пакет становится 192.168.116.6:3232=>10.80.2.2:1234 и по хорошему должен прибиться ACL на исходящий трафик на внешнем интерфейсе - нехорошо выпускать с локальными адресами наружу. Если в соотв. ACL включено логирование, то должны быть записи в логе. Если же он и уходит, то все равно впустую - src неправильный.

Забыл, что при nat outside source кошка заменяет еще и src пакета на адрес своего внешнего интерфейса - то есть на самом деле пакет будет 10.80.2.122:?=>10.80.2.2:1234. Вопросик там потому, что порт для src кошка берет вроде как первый свободный, а не тот который был в исходном пакете, чтобы не было конфликтов при одновременном обращении нескольких хостов из локалки к внешнему хосту.
С утра вот стукнуло в голову такое решение: если больше никаких NAT на используемых интерфейсах не висит, можно поменять местами inside и outside и сделать что-то типа такого:

interface Ethernet0
ip address 192.168.106.34 255.255.255.0
ip nat outside
!
interface Ethernet1
ip address 10.80.2.122 255.255.255.252
ip nat inside
!
access-list 111 permit tcp host 10.2.80.2 host 10.2.80.122 eq 3232
ip nat pool host-116-5 192.168.116.5 192.168.116.5 prefix-length 24
ip nat outside source list 111 pool host-116-5

По идее, в этом случае пакет 10.2.80.2:1234=>10.2.80.122:3232 выйдет из Ethernet0 как 192.168.106.34:?=>192.168.116.5:3232 и все должно быть ок. Насколько я понимаю, nat outside source - единственный вариант nat, при котором кошка сразу заменяет и src и dst пакета. Если такой вариант не проходит, то тогда нужно только последовательно пропускать пакет через два ната - или на втором маршрутизаторе еще раз преобразовывать, или на кошке городить чехарду из лупбэков.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру