UDP Broadcaster
=======================================================================
The program functions as a sort of virtual hub. It listens on all
network interfaces for outgoing UDP broadcast packets destined to the
IPv4 address 255.255.255.255. When the program receives any such
packet, it will send it on all network interfaces (other than the
interface on which it is already being sent) that have a class C subnet
mask.
In other words, when the program is running, outgoing UDP broadcast
packets are sent from all network interfaces that have a class C subnet
mask, instead of only being sent from a single network interface that
the operating system selects.
A class C subnet mask is any subnet mask in the inclusive range
255.255.255.0 to 255.255.255.255.
Note that the program preserves both the source and destination ports
found in the UDP header. To do this, the program uses raw sockets,
which is one of the reasons the program needs administrative privileges
(the other being that raw sockets are also used to listen for outgoing
packets).
Example use case
=======================================================================
An example situation in which the program is useful is when you want to
play a game on the local area network (LAN), but the game doesn't allow
you to configure which network interface to use (letting the operating
system select), and it turns out the operating system is using the
wrong interface. For example, your computer may have two network
interfaces, one with IPv4 address 192.168.178.1, and another with
address 192.168.232.1, while your friend's computer has a single
interface with address 192.168.232.2, which is connected to your
interface that has the address 192.168.232.1.
Furthermore, imagine that the game has a "lobby", in which the players
can see each other's names, chat, create/join games, and so on. When
you go to this lobby, the game keeps broadcasting your presence on the
network, so that others can see your name in the lobby, and so on. If
the game doesn't allow you to specify which interface to use for
sending these broadcasts, then it may be that the wrong interface is
used, and others can't see you in the lobby. This program fixes such a
situation by simply sending the broadcast on all interfaces, so that
the interface that you actually want to use is also used.
The program was designed with this use case in mind, and since games
often only use UDP, the program only operates on UDP packets.
How to use
=======================================================================
The program can be installed as a system service, so that it always
runs in the background, obviating the need to run the program each time
one wants to use it. The program installer presents you the option to
install the program as a system service.
For more information about command-line arguments, pass the '--help'
command-line option to the program.
Contact information
=======================================================================
Visit the udp_broadcaster homepage at one of the following URLs for
contact information:
http://purl.org/net/udp_broadcaster
http://udpbroadcaster.sourceforge.net/
http://sourceforge.net/projects/udpbroadcaster/