Перейти к содержанию

Вопрос

Опубликовано

Хотелось бы получить возможность делать NAT не по входящему интерфейсу, а по исходящему.

Нормальный маскарадинг с udp preserve и прочими плюшками. Без костыля в виде static.

Рекомендуемые сообщения

  • 0
Опубликовано
8 часов назад, gaaronk сказал:

Хотелось бы получить возможность делать NAT не по входящему интерфейсу, а по исходящему.

Нормальный маскарадинг с udp preserve и прочими плюшками. Без костыля в виде static.

Есть же

> ip static SRC DST, где DST - исходящий интерфейс

udp preserve является платформоспецифичной реализацией NAT, потому на него не стоит полагаться в общем случае.

  • 0
Опубликовано
4 hours ago, Le ecureuil said:

Есть же

> ip static SRC DST, где DST - исходящий интерфейс

udp preserve является платформоспецифичной реализацией NAT, потому на него не стоит полагаться в общем случае.

А вот поясните пожалуйста что именно делает команда

ip nat udp-port-preserve ?

Как я вижу она вставляет в цепочку _NDM_NAT_UDP первым правилом RETURN

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

В версии 2.09.B.0.0-1 так точно

Ибо в POSTROUTING только

3        0     0 MASQUERADE  all  --  br0    *       0.0.0.0/0            0.0.0.0/0
4        0     0 MASQUERADE  all  --  br1    *       0.0.0.0/0            0.0.0.0/0

 

Ну и

Chain _NDM_NAT_UDP (0 references)

  • 0
Опубликовано
12 часа назад, gaaronk сказал:

А вот поясните пожалуйста что именно делает команда

ip nat udp-port-preserve ?

Как я вижу она вставляет в цепочку _NDM_NAT_UDP первым правилом RETURN

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

В версии 2.09.B.0.0-1 так точно

Ибо в POSTROUTING только

3        0     0 MASQUERADE  all  --  br0    *       0.0.0.0/0            0.0.0.0/0
4        0     0 MASQUERADE  all  --  br1    *       0.0.0.0/0            0.0.0.0/0

 

Ну и

Chain _NDM_NAT_UDP (0 references)

Попробуйте ее выключить и сразу увидите.

  • 0
Опубликовано (изменено)

 

4 minutes ago, Le ecureuil said:

Попробуйте ее выключить и сразу увидите.

А она у меня и не включена.

 

Вот те куски iptables когда настроено так:

ip nat Home
ip nat Guest

 

Все, больше настроек нет

Chain POSTROUTING (policy ACCEPT 5 packets, 334 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1       19  2854 _NDM_IPSEC_POSTROUTING_NAT  all  --  *      *       0.0.0.0/0            0.0.0.0/0
2        5   334 _NDM_SNAT  all  --  *      *       0.0.0.0/0            0.0.0.0/0
3        0     0 MASQUERADE  all  --  br0    *       0.0.0.0/0            0.0.0.0/0
4        0     0 MASQUERADE  all  --  br1    *       0.0.0.0/0            0.0.0.0/0

Chain _NDM_NAT_UDP (0 references)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 MASQUERADE  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:35000:65535 masq ports: 1024-34999
2        0     0 MASQUERADE  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:1024:34999 masq ports: 35000-65535
3        0     0 MASQUERADE  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:0:411 masq ports: 412-1023
4        0     0 MASQUERADE  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:412:1023 masq ports: 0-411

 

Включаю

 

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 _NDM_IPSEC_POSTROUTING_NAT  all  --  *      *       0.0.0.0/0            0.0.0.0/0
2        0     0 _NDM_SNAT  all  --  *      *       0.0.0.0/0            0.0.0.0/0
3        0     0 MASQUERADE  all  --  br0    *       0.0.0.0/0            0.0.0.0/0
4        0     0 MASQUERADE  all  --  br1    *       0.0.0.0/0            0.0.0.0/0

Chain _NDM_NAT_UDP (0 references)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0
2        0     0 MASQUERADE  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:1024:34999 masq ports: 35000-65535
3        0     0 MASQUERADE  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:0:411 masq ports: 412-1023
4        0     0 MASQUERADE  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spts:412:1023 masq ports: 0-411

 

Выключаю и возвращаюсь к исходному.

Изменено пользователем gaaronk
  • 0
Опубликовано

Кстати, если использовать в CLI что то вроде 

 ip static Guest PPPoE0

То в web интерфейсе ранее введенные трансляции портов не отображаются.

  • 0
Опубликовано (изменено)
1 час назад, gaaronk сказал:

Кстати, если использовать в CLI что то вроде 

 ip static Guest PPPoE0

То в web интерфейсе ранее введенные трансляции портов не отображаются.

Да, такое поведение было заявлено при анонсе этой новой конструкции.

Изменено пользователем r13
  • 0
Опубликовано
On 6/16/2017 at 9:56 PM, Le ecureuil said:

Есть же

> ip static SRC DST, где DST - исходящий интерфейс

udp preserve является платформоспецифичной реализацией NAT, потому на него не стоит полагаться в общем случае.

Тогда вопрос. Можно ли при задании  ip static SRC DST, где DST - исходящий интерфейс сделать опцию чтобы  рандомизировать транслируемые порты для UDP, как это делается для NAT на входном интерфейсе ?

По сути проблемы.

Роутер с публичным ип A держит ipsec туннель с хостом B.

Клиент за роутером, полнимает от себя туннель к хосту B (иногда так надо, потому что в туннеле который держит роутер бегают определенные сетки, а иногда надо поднять на клиенте впн, что бы заворачивалось все).

Роутер транслирует исходящий адрес и порт клиента (для IKE) в A:500

Статический туннель A-B через некоторое время умирает, потому что IKE сообщения от B к роутеру попадают вовсе не к роутеру, а к клиенту поднявшему отдельный туннель.

 

  • Спасибо 1
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.