a comma-separated list of IP port-pairs. These are the listen ports that will be opened for accepting incoming uTP and TCP connections. It is possible to listen on multiple IPs and multiple ports. Binding to port 0 will make the operating system pick the port. The default is "0.0.0.0:6881", which binds to all interfaces on port 6881.
If binding fails because the port is busy, the port number will be incremented by one, settings_pack::max_retry_port_bind times.
if all retry attempts fail, the socket will be bound to port 0, meaning the operating system will pick a port. This behavior can be disabled by disabling settings_pack::listen_system_port_fallback.
if binding fails, the listen_failed_alert is posted, potentially more than once. Once/if binding the listen socket(s) succeed, listen_succeeded_alert is posted.
Each port will attempt to open both a UDP and a TCP listen socket, to allow accepting uTP connections as well as TCP. If using the DHT, this will also make the DHT use the same UDP ports.
NOTE
The current support for opening arbitrary UDP sockets is limited. In this version of libtorrent, there will only ever be two UDP sockets, one for IPv4 and one for IPv6. |