[erlang-questions] Broadcast UDP message

Cameron Kerr ckerr@REDACTED
Thu Jun 11 01:36:41 CEST 2009

 From a system perspective, this will depend on the OS, as the  
specifics for how is routed changes on different  
operating systems.

If you are on Linux, I think you need to have a route entry that will  
match (typically your default route) Note that it only use this to  
determine which interface to send to (it will not use the gateway).  
Given your error of ENETUNREACH, this is almost certainly what will be  

Some other systems will choose the "primary interface", which is the  
first BROADCAST, UP interface.

Also note that should only really be used for  
bootstrap purposes when you don't have a better IP configuration;  
typically only protocols such as DHCP and routing protocols should use  
it; user applications should almost always use the subnet-directed  
broadcast address.

On 11/06/2009, at 2:53 AM, Lucas Robsahm wrote:

> Hi!
> I'm trying to send a broadcast message to but I can't
> get it to work.
> My IP-Address is and it's ok to send UDP message to
> but I need to send it to
> {ok, Socket} = gen_udp:open(0, [binary, {broadcast, true}]),
> ok = gen_udp:send(Socket, {255, 255, 255, 255}, 68, Message).
> The result of this is badmatch, {error, enetunreach}.
> What's wrong?
> How can i broadcast UDP messages?
> //Lucas

Cameron Kerr <ckerr@REDACTED>
Teaching Fellow, Computer Science, University of Otago

More information about the erlang-questions mailing list