URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID6
Нить номер: 22761
[ Назад ]

Исходное сообщение
"разный NAT в зависимости от интерфейса"

Отправлено yahan , 15-Июн-11 17:42 
Есть 2 WAN-интерфейса
и есть 1 интерфейс к которому подключена локальная сеть
На пакетах которые выходят через Ethernet1 надо подменять ip источника:
ip nat inside source static 192.168.1.10 10.1.2.10
ip nat inside source static 192.168.1.11 10.1.2.11
...
На пакетах которые выходят через Ethernet2 надо подменять ip источника на ip интерфейса:
ip nat inside source list 1 interface Ethernet2 overload

Но ip nat inside source static имеет приоритет и работает на всех WAN-интерфейсах.
Что надо сделать, чтобы ip nat inside source static работал только для одного WAN-интерфейса?

Вот пример моего конфига:

interface Ethernet0
ip address 192.168.1.0 255.255.255.0
ip nat inside
!
interface Ethernet1
ip address 1.2.3.4 255.255.255.0
ip nat outside
!
interface Ethernet2
ip address 4.3.2.1 255.255.255.0
ip nat outside
!
ip nat inside source list 1 interface Ethernet2 overload
ip nat inside source static 192.168.1.10 10.1.2.10
ip nat inside source static 192.168.1.11 10.1.2.11
...

access-list 1 permit 192.168.1.0 0.0.0.255


Содержание

Сообщения в этом обсуждении
"разный NAT в зависимости от интерфейса"
Отправлено GolDi , 15-Июн-11 18:48 
>[оверквотинг удален]
> !
> interface Ethernet2
>  ip address 4.3.2.1 255.255.255.0
>  ip nat outside
> !
> ip nat inside source list 1 interface Ethernet2 overload
> ip nat inside source static 192.168.1.10 10.1.2.10
> ip nat inside source static 192.168.1.11 10.1.2.11
> ...
> access-list 1 permit 192.168.1.0 0.0.0.255

Не понял, dg у вас один ведь, значит локалка натится будет только через один интерфейс.
Поясните что вы хотите сделать.


"разный NAT в зависимости от интерфейса"
Отправлено yahan , 15-Июн-11 22:36 
> Не понял, dg у вас один ведь, значит локалка натится будет только
> через один интерфейс.
> Поясните что вы хотите сделать.

У меня на Ethernet2 - один маршрут, пусть это будет Интернет
а Ethernet1 - локальная сеть партнеров, которые выделили мне диапазон адресов из своего адресного пространства.
Мне надо для некоторых IP-адресов моей локальной сети делать подмену на другой партнерский адрес, по принципу один определенный мой адрес соответствует одному определенному партнерскому. Делаю я это так:

ip nat inside source static 192.168.1.10 10.1.2.10

При этом надо, чтобы для адреса 192.168.1.10 был доступен Интернет, т.е. при прохождении пакета через Ethernet2 адрес 192.168.1.10 должен подменяться на адрес интерфейса Ethernet2, но вместо этого Циска делает подмену на 10.1.2.10

PS: Простите, а dg - это что такое :)


"разный NAT в зависимости от интерфейса"
Отправлено karen durinyan , 16-Июн-11 10:12 
>[оверквотинг удален]
> а Ethernet1 - локальная сеть партнеров, которые выделили мне диапазон адресов из
> своего адресного пространства.
> Мне надо для некоторых IP-адресов моей локальной сети делать подмену на другой
> партнерский адрес, по принципу один определенный мой адрес соответствует одному определенному
> партнерскому. Делаю я это так:
> ip nat inside source static 192.168.1.10 10.1.2.10
> При этом надо, чтобы для адреса 192.168.1.10 был доступен Интернет, т.е. при
> прохождении пакета через Ethernet2 адрес 192.168.1.10 должен подменяться на адрес интерфейса
> Ethernet2, но вместо этого Циска делает подмену на 10.1.2.10
> PS: Простите, а dg - это что такое :)

something like this?
!
ip nat inside source route-map nat-inet interface FastEthernet2 overload
ip nat inside source static 192.168.1.10 10.1.2.10
!
ip access-list extended nat-inet
permit ip 192.168.1.0 0.0.0.255 any
!
route-map nat-inet permit 10
match ip address nat-inet
match interface FastEthernet2
!


"разный NAT в зависимости от интерфейса"
Отправлено yahan , 13-Июл-11 21:16 
>[оверквотинг удален]
> ip nat inside source route-map nat-inet interface FastEthernet2 overload
> ip nat inside source static 192.168.1.10 10.1.2.10
> !
> ip access-list extended nat-inet
>  permit ip 192.168.1.0 0.0.0.255 any
> !
> route-map nat-inet permit 10
>  match ip address nat-inet
>  match interface FastEthernet2
> !

Что-то в этом есть, но так тоже не работает
Похоже что ip nat inside source static 192.168.1.10 10.1.2.10
имеет приоритет перед
ip nat inside source route-map nat-inet interface FastEthernet2 overload

sh ip nat translations, показывает, что с FastEthernet2 уходят пакеты с source ip 10.1.2.10, а не с ip интерфейса FastEthernet2

Если убрать ip nat inside source static 192.168.1.10 10.1.2.10, то nat на FastEthernet2 начинает работать как положено.

Сейчас буду пробовать ip nat inside source static через route-map настроить. Если получиться обязательно отпишусь.


"разный NAT в зависимости от интерфейса"
Отправлено GolDi , 16-Июн-11 10:20 
>[оверквотинг удален]
> а Ethernet1 - локальная сеть партнеров, которые выделили мне диапазон адресов из
> своего адресного пространства.
> Мне надо для некоторых IP-адресов моей локальной сети делать подмену на другой
> партнерский адрес, по принципу один определенный мой адрес соответствует одному определенному
> партнерскому. Делаю я это так:
> ip nat inside source static 192.168.1.10 10.1.2.10
> При этом надо, чтобы для адреса 192.168.1.10 был доступен Интернет, т.е. при
> прохождении пакета через Ethernet2 адрес 192.168.1.10 должен подменяться на адрес интерфейса
> Ethernet2, но вместо этого Циска делает подмену на 10.1.2.10
> PS: Простите, а dg - это что такое :)

dg - default gateway, может стоит почитать
http://www.cisco.com/en/US/tech/tk648/tk361/technologies_tec...
а там какие-нибудь мысли появятся.


"разный NAT в зависимости от интерфейса"
Отправлено cant , 17-Июн-11 20:09 
> ip nat inside source list 1 interface Ethernet2 overload
> ip nat inside source static 192.168.1.10 10.1.2.10

используйте extended acl
access-list 100 permit|deny ip 192.168.1.0 0.0.0.255 ... 0.0.0.255

поддерживается ли у вас конструкция
ip nat inside source static local-ip global-ip route-map name


"разный NAT в зависимости от интерфейса"
Отправлено yahan , 13-Июл-11 21:21 
>> ip nat inside source list 1 interface Ethernet2 overload
>> ip nat inside source static 192.168.1.10 10.1.2.10
> используйте extended acl
> access-list 100 permit|deny ip 192.168.1.0 0.0.0.255 ... 0.0.0.255

Все ерунда в том, что ip nat inside source static срабатывает раньше, так что это не поможет

> поддерживается ли у вас конструкция
> ip nat inside source static local-ip global-ip route-map name

Да - поддерживается. Сейчас буду пробовать, хотя в route-map я еще не силен.


"разный NAT в зависимости от интерфейса"
Отправлено yahan , 13-Июл-11 21:54 
>>> ip nat inside source list 1 interface Ethernet2 overload
>>> ip nat inside source static 192.168.1.10 10.1.2.10
>> используйте extended acl
>> access-list 100 permit|deny ip 192.168.1.0 0.0.0.255 ... 0.0.0.255
> Все ерунда в том, что ip nat inside source static срабатывает раньше,
> так что это не поможет
>> поддерживается ли у вас конструкция
>> ip nat inside source static local-ip global-ip route-map name
> Да - поддерживается. Сейчас буду пробовать, хотя в route-map я еще не
> силен.

Yesss - получилось.
Сделал так:

ip nat inside source list 1 interface Ethernet2 overload
ip nat inside source static 192.168.1.10 10.1.2.10 route-map nat-eth1
ip nat inside source static 192.168.1.11 10.1.2.11 route-map nat-eth1
...
route-map nat-eth1 permit 20
match interface Ethernet1

Огромное всем спасибо! Очень помогли!
Может ещё по route-map что-то толковое посоветуете почитать?


"разный NAT в зависимости от интерфейса"
Отправлено yahan , 14-Июл-11 15:36 
> Yesss - получилось.
> Сделал так:
> ip nat inside source list 1 interface Ethernet2 overload
> ip nat inside source static 192.168.1.10 10.1.2.10 route-map nat-eth1
> ip nat inside source static 192.168.1.11 10.1.2.11 route-map nat-eth1
> ...
> route-map nat-eth1 permit 20
>  match interface Ethernet1
> Огромное всем спасибо! Очень помогли!
> Может ещё по route-map что-то толковое посоветуете почитать?

Вчера все работало, а сегодня все стала натить строчка
ip nat inside source list 1 interface Ethernet2 overload

Так что на втором интерфейсе, все-таки, надо сделать так:
ip nat inside source route-map nat-inet interface FastEthernet2 overload