LINUX.ORG.RU

iptables: Отправить копию udp-пакета на другой адрес?


0

0

Привет всем!
Короче,
# iptables -t nat -p udp --dport 50138 -D OUTPUT -s 192.168.0.4 -d 234.0.0.1 -j DNAT --to-destination 192.168.0.4
Это конечно, замечательно но вот возникает необходимость, чтобы этот же пакет шёл не только на 192.168.0.4 (как происходит с этим правилом в iptables) или на 234.0.0.1 (как происходит без этого правила), а чтоб он шёл сразу по ОБОИМ адресам.
Возможно ли? И если возможно, то КАК?
Заранее, спасибо.

★★★★★

кажется в patch-o-matic есть такой патч

fagot ★★★★★
()

А если после этого правила написать такое же, но на 234?

P.S. Наверно копаться в расширениях patch-o-matic.

jackill ★★★★★
()
Ответ на: комментарий от jackill

> А если после этого правила написать такое же, но на 234?
:-) Да, нет не всё так просто :-)
После первого правила тогда адрес отправителя смениться на 192, а второе правило его либо просто не увидит (если написать -d 234) или просто сменит адрес обратно (если написать -d 192)

patch-o-matic говорите?
Ну, хорошо посмотрю. Спасибо за наводку. О результатах сообщу.

unDEFER ★★★★★
() автор топика
Ответ на: комментарий от unDEFER

Кажется нашёл:
-------------------------------------------
Author: C&#195;©dric de Launois <delaunois@info.ucl.ac.be>
Status: Experimental

This option adds a `ROUTE' target, which enables you to setup unusual
routes. For example, the ROUTE lets you route a received packet through
an interface or towards a host, even if the regular destination of the
packet is the router itself. The ROUTE target is also able to change the
incoming interface of a packet.

The target can be or not a final target. It has to be used inside the
mangle table.

ROUTE target options:
--oif ifname Send the packet out using `ifname' network interface.
--iif ifname Change the packet's incoming interface to `ifname'.
--gw ip Route the packet via this gateway.
--continue Route the packet and continue traversing the rules.
--tee Route a copy of the packet, but continue traversing
the rules with the original packet, undisturbed.

Note that --iif, --continue, and --tee, are mutually exclusive.
-------------------------------------------

И вот, опция --tee похоже то самое :-)
Проверю - скажу, но это уже скорее завтра - а сейчас мне пора спать - а то ещё в 7 вставать..

unDEFER ★★★★★
() автор топика
Ответ на: комментарий от unDEFER

На самом деле поражает свежесть этого patch'а - согласно svn последний раз этот ROUTE обновлялся 10 дней назад и как раз для добавления --tee!
На ядре 2.6.5 не компилиться (там в одной структуре ещё поля одного не хватает), поэтому надо апгрейдиться до 2.6.9.. пока вот не получается - качать из нета по дайлапу не охота - надо дождаться других источников :-)

unDEFER ★★★★★
() автор топика
Ответ на: комментарий от unDEFER

Всё - обновил ядро до 2.6.10, iptables и patch-o-matic из svn-репозитория. И сделал:
# iptables -t mangle -p udp --dport 50138 -A OUTPUT -s 192.168.0.4 -d 234.0.0.1 -j ROUTE --oif eth0 --tee
# iptables -t nat -p udp --dport 50138 -A OUTPUT -s 192.168.0.4 -d 234.0.0.1 -j DNAT --to-destination 192.168.0.4

Работает!
Всем большое спасибо!

unDEFER ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.