[Opensim-users] NAT & Corporate Firewall

Justin Clark-Casey jjustincc at googlemail.com
Thu Mar 31 23:43:57 UTC 2011


 From my understanding of the code, using 0.0.0.0 will make the UDP listen to the 'most appropriate' IP address as 
assigned to the server's NICs (see http://msdn.microsoft.com/en-us/library/system.net.sockets.socket.bind.aspx, 
IPAddress.Any = 0.0.0.0).

On a machine with just one NIC this should be fine.  But on a machine with two NICs I'm guessing you would really want 
to explicitly state the right address.

The internal address is used to bind the UDP listener.  However, the client is told to connect to the external host name 
(if this or the port is incorrect then the client connection will timeout on the 'connecting to region' bit).

Confusingly, the 'internal port' is used for both the internal UDP listener and is passed to the client as the external 
connection port.

Some people on Stack Overflow think that IPAddress.Any means listen on all NICs 
(http://stackoverflow.com/questions/1777629/how-to-listen-on-multiple-ip-addresses).  But my reading of the MS SDK 
reference above means that it only binds to one.  Anybody able to comment on this?

And does anybody actually use a non 0.0.0.0 internal address and in what context?  I'd really like to clear up my 
understanding of this so that we can improve the instructions.


On 30/03/11 17:28, Adelle Fitzgerald wrote:
> As I understand it, that is used for binding opensim to a specific IP
> address, where the opensim server may have more than one IP address on a
> network interface or multiple network interfaces.
>
> 0.0.0.0 = listen on all available IP addresses, or specify (bind) to a
> specific IP address.
>
>
>
> -----Original Message-----
> From: opensim-users-bounces at lists.berlios.de
> [mailto:opensim-users-bounces at lists.berlios.de] On Behalf Of Edmund
> Edgar
> Sent: 30 March 2011 17:16
> To: opensim-users at lists.berlios.de
> Subject: Re: [Opensim-users] NAT&  Corporate Firewall
>
> This probably won't help Fleep, but does anyone know what this
> broken-Englished sentence on the wiki is supposed to say?
>
> # Internal IP address - This should always be 0.0.0.0 (0.0.0.0 means
> "listen for connections on any interface", basically a wildcard) if
> you want to access this server from the internet or another server on
> your internal network, this should be the IP address assigned to the
> OpenSim Server.
>
> http://opensimulator.org/wiki/Configuration
>


-- 
Justin Clark-Casey (justincc)
http://justincc.org/blog
http://twitter.com/justincc



More information about the Opensim-users mailing list