Date: Sun, 13 Apr 2008 22:28:16 -0400 From: Boris Kochergin <spawk@acm.poly.edu> To: tmm <tmm@fastmail.fm> Cc: freebsd-net@freebsd.org Subject: Re: Howto send a limited broadcast? Message-ID: <4802C140.9020304@acm.poly.edu> In-Reply-To: <48022162.4030601@fastmail.fm> References: <4800E2D5.20107@fastmail.fm> <480147C7.6090107@FreeBSD.org> <48017958.8020302@fastmail.fm> <4801A0F8.1060002@acm.poly.edu> <48022162.4030601@fastmail.fm>
next in thread | previous in thread | raw e-mail | index | archive | help
tmm wrote: > Boris Kochergin wrote: >> tmm wrote: >>> >>> >>> Bruce M. Simpson wrote: >>>> tmm wrote: >>>>> So, can anyone suggest how I can send a limited broadcast (on an >>>>> interface that has been initalized with an IP and a subnet)? >>>> >>>> Use the IP_ONESBCAST option and send to the network broadcast >>>> address for that subnet. The stack will change it into >>>> 255.255.255.255 on output. See man page ip(4) for details. >>>> >>>> It's a hack, but it's largely due to how the stack has worked >>>> historically. >>>> >>>> BMS >>> Thanks. I wasn't aware of that option. >>> >>> But now I find that this option is not present in my (eCos port of) >>> FreeBSD stack. Either it was removed during the port, or the ported >>> version is too old. >>> >>> Perhaps the best thing for me to do is to look at the 'normal' >>> FreeBSD stack (as opposed to the eCos one) and see how IP_ONESBCAST >>> is implemented. Then perhaps I could do the same thing in my >>> FreeBSD stack. >>> >>> Is there a way for me to download the FreeBSD source code without >>> actually downloading, burning, and installing FreeBSD? Looking >>> around the FreeBSD website I don't see a source download link. >>> >>> thanks, >>> Tom. >>> _______________________________________________ >>> freebsd-net@freebsd.org mailing list >>> http://lists.freebsd.org/mailman/listinfo/freebsd-net >>> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" >> You can get them via CVS: >> http://www.freebsd.org/doc/en/books/handbook/cvsup.html. >> >> Also, although it, too, may be considered hacky, if the system you're >> working on has pcap(3), you could just manually craft the broadcast >> frame and send it out the interface yourself. I can provide some >> sample code. >> >> -Boris > Yes, that is what I was looking for - I'll use cvsup/csup to get the > sources. > > I don't have pcap, but I do have access to the lower layers of the > stack, so yes, I would be interested in seeing your code. Doing > something like that might turn out to be a better solution for me. > > Thanks a lot. > Tom. > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" http://acm.poly.edu/~spawk/arpCounterattack.tbz That's some code I wrote a while ago that detects ARP attacks against a configured set of IP/Ethernet address pairs on broadcast networks, and sends out gratuitous ARP requests in an attempt to correct the situation. The relevant function here is sendGratuitousARPRequest() in arpCounterattack.hpp. It constructs a gratuitous ARP frame and sends it out the configured interface. -Boris
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4802C140.9020304>