Re: Routování directed broadcast

Jan Houstek Jan na houstek.net
Středa Září 1 00:34:45 CEST 2010


On Thu, 26 Aug 2010, Pavel Kankovsky wrote:
>> ovšem po chvíli civění do net/ipv4/route.c mám dojem, že linux to ani 
>> nijak zapnout neumí a vždy takový packet přijme jen lokálně. Nebo jsem 
>> něco přehlédnul?
>
> Zapíná se to úpravou jmenovaného zdrojového souboru. :) Zdá se, že by 
> asi stačilo v ip_route_input_slow() poznat, že je to directed broadcast 
> na jiný interfejs, než odkud to přišlo, a nasměrovat ho na 
> ip_mc_output() místo stávajícího ip_local_deliver().

Jo jo, konfigurační soubory s příponou .c

Na produkčním stroji jsem to nakonec vyřešil v userspace velice užitečnou 
a ne zas tak známou utilitkou socat, tož pro potřeby archivu:

socat UDP-RECV:9,so-bindtodevice=eth1 UDP-DATAGRAM:10.20.30.255:9,broadcast

Přeposílá lokálně přijaté datagramy došlé skrz eth1 na 9/udp jako 
broadcasty na eth0 (v příkladu má konfiguraci 10.20.30.40/24). Umí i 
hromadu dalších věcí.

-- HH


Další informace o konferenci Linux