The ServerAddress property is used to specify the default
address that the server will use when listening for connections.
By default the server will accept connections on any appropriately
configured network adapter. If an address is specified, it must be a
valid Internet address that is bound to a network adapter configured
on the local system. Clients will only be able to connect to the
server using that specific address.
If an IPv6 address is specified as the server address, the system
must have an IPv6 stack installed and configured, otherwise the
function will fail.
To listen for connections on any suitable IPv4 interface, specify
the special dotted-quad address "0.0.0.0". You can accept connections
from clients using either IPv4 or IPv6 on the same socket by
specifying the special IPv6 address "::0", however this is only
supported on Windows 7 and Windows Server 2008 R2 or later platforms. If
no local address is specified, then the server will only listen for
connections from clients using IPv4. This behavior is by design for
backwards compatibility with systems that do not have an IPv6 TCP/IP
stack installed.
It is common to set this property to the value 127.0.0.1 for
testing purposes. It is a non-routable address that specifies the
local system, and most software firewalls are configured so they do
not block applications using this address.