broadcast udp packets ...
Julian Elischer
julian at elischer.org
Tue Jul 1 15:12:49 PDT 2003
you can use netgraph to make a "virtual bridge"
see /usr/share/examples/netgraph for an example of a single bridge.
attach one of the bridge hooks on each site to an ng_socket node that
has made a udp vpn..
see the vpn example for that..
by combining both the bridge and vpn examples you can hook the two
sites together in a bridged manner.
On Tue, 1 Jul 2003, Matthew Grooms wrote:
> Well,
>
> Ok, sounds stupid right, well here is a bit of background. My friend and
> I have an IPSEC tunnel in between our two private networks connected by BSD
> firewalls w/ cable modems. Without going into too much detail, certain
> programs ( win32 games ) use all-routes broadcasts to advertise the info
> pertaining to the workstaion hosting a particular game. After much searching,
> I could find no mechanism in FreeBSD that would allow me to pass these
> broadcasts from a private network, across the IPSEC tunnel and to the distant
> private network. ( tried all sorts of nat and bridging configurations )
>
> As a result, I decided to write a small relay daemon that used bpf to
> pick up the broadcast messages from the local private network, forward them
> to a peer that in turn drops it on to the distant private network. ( I know,
> its a lot of work to play a game but it sounded like a fun project ) In any
> case, I have most of it working well but am getting loops when the bpf dropps
> the packet on the wire at the far end. It reads the packet in after writing
> it out and forwards it back to the originating relay partner, just like a
> really bad pong game. Setting BIOCSSEESENT on the fd does not seem to do the
> trick. Any Ideas?
>
> In any case, I wrote a quick little program to generate a broadcast
> message for use with testing the relay daemon ( I got tired of waiting for
> bootp requests to be picked up by my cable modem as a test case ).
> Unfortunately, I can never get the test program generate an all-routes
> broadcast, they always come out as network directed broadcasts.
>
> <Sigh> ... If there is not a more conventional way of going about it, I guess
> I will just have to generate one using the bpf.
>
> On 7/1/2003, "Chuck Swiger" <cswiger at mac.com> wrote:
>
> >Matthew Grooms wrote:
> >> Is there any way to generate a udp broadcast ( all routes
> >> 255.255.255.255 ) packet using a standard sendto() without it being
> >> translated into a local network broadcast? Is this just not "allowed"?
> >
> >Are you trying to use 255.255.255.255 to reach something not on a local
> subnet?
> >
> >If you have multiple interfaces, a broadcast to 255.255.255.255 should go
> out on
> >all of them. That being said, the all-ones broadcast address means "all
> local
> >networks", and most routers will block such traffic from passing on in any
> event.
> >
> >--
> >-Chuck
> >
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>
More information about the freebsd-net
mailing list