LINUX.ORG.RU

Маршрутизация broadcast пакетов


0

0

Всем привет!

Есть две подсети:
192.168.1.0
192.168.3.0

В одной подсети запускается Counter-Strike клиент, который в надежде найти сервер, извергает в локальную сеть UDP пакет на адрес 255.255.255.255

Вопрос: Как на роутере прокинуть такой пакет в другую подсеть? Обьязательно поднимать прозрачный мост, или есть ещё варианты?

помнится я что-то такое делал, с использованием модуля u32 для iptables. Запись была следующего вида:

iptables -t nat -I PREROUTING -i eth2 -m u32 --u32 "117&0xFFFF=0x1804" -m length --length 200:1000 -p udp -d 192.168.0.255 --dport 138 -j DNAT --to 192.168.5.255

имеется 2 сети, 0.0/24 и 5.0/24 , если приходит пакет отправленный на broadcast адрес 0.255 , то адрес назначения в нем меняем на адрес 5.255 и таким образом он у нас уходит в другую подсеть. u32 модуль использовался для переброса только определенного вида пакетов (в наборе с length модулем)

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

Я тоже сначала так пробовал:
iptables -t nat -I PREROUTING -p udp -d 255.255.255.255 --dport 27015 -i eth1 -j DNAT --to-destination 192.168.1.255
iptables -A FORWARD -s 192.168.3.0/24 -j ACCEPT

Пакет в первую цепочку попадал, но дальше не маршрутизировался!

Поэтому я скомпилил утилитку, которую мне посоветовали выше и сейчас пользуюсь ей.

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