28.09.11 в 22:40 Denis Zaika в своём письме писал(а):

Читайте ман лучше.
fwd <gw ip> ip from any to any in recv 'ng*'

Такая конструкция, увы, не работает.
Для теста подставляю руками выданный ip

fwd <gw ip> ip from <dyn if ip> to any in recv ng1 - не работает
fwd <gw ip> ip from <dyn if ip> to any  - работает

У меня работает. Что я делаю не так?
Ищите у себя ошибки, опечатки и прочее. tcpdump в руки. Всё работает.

Может таки out xmit ng1 надо?

  Так если оно и так out через ng1, то зачем его туда же полисить?

  Две недели назад была тема "ECMP + ipfw nat port redirect"
  Там я приводил ссылку на статью Вадима Гончарова:
  http://nuclight.livejournal.com/124348.html
  Тут же тоже хотят аналога pf route-to.

В частности, с использованием появившегося во FreeBSD 6.2 параметра tag на каждый пакет можно навешивать внутриядерный тег, что в применении со skipto позволяет сделать, к примеру, запоминание, с какого шлюза пришел входящий пакет на машине с каналами к двум разным провайдерам, и ответные пакеты отправлять в тот канал, откуда они пришли (допустим, у вашей машины только один IP-адрес, и сделать fwd на базе
внешнего адреса не получится), т.е. реализовать аналог reply-to из pf:

ipfw add 100 skipto 300 tag 1 in recv $ext_if1 keep-state
ipfw add 200 skipto 300 tag 2 in recv $ext_if2 keep-state
ipfw add 300 allow { recv $ext_if1 or recv $ext_if2 } # входящие снаружи ipfw add 400 allow in recv $int_if # разрешить ответы на внутреннем проходе ipfw add 500 fwd $gw1 tagged 1 # остались ответы на внешнем интерфейсе,
ipfw add 600 fwd $gw2 tagged 2      # зарулим их куда надо


Да, подтверждаю, на 8.2-STABLE - завелось, в свою тему не стал
отписываться, потому что патч Вадима на 8.2 пристроить не получилось, а
обновился до стейбла там только вчера.

На всякий случай уточню, апдейты к тому посту идут в http://nuclight.livejournal.com/125453.html, я там отписывался, что по состоянию на 07.07.11, ситуация с динамическими правилами и fwd, для работы которых необходим патч, исправлена, PR kern/147720 теперь закрыт, исправление закоммичено в 8-STABLE (r223819) и 7-STABLE (r223820).

--
WBR, Vadim Goncharov.           http://nuclight.livejournal.com

Ответить