On my host the ipv6 is disabled. I had to start a docker image, which would like to use ipv6.
This conflict provides this error message:
Error response from daemon: driver failed programming external connectivity on endpoint CONTAINER_NAME(HASH): Error starting userland proxy: listen tcp6 [::]:PORT_NUMBER: socket: address family not supported by protocol
The resolution, to define the IP address in port mapping (for DHCP, with global definition):
docker run -p 0.0.0.0:HOST_PORT:CONTAINER_PORT
Or in docker-compose.yml like this:
Recently started in debug mode on Transmission and I see:
[17:42:40.319] UDP Failed to set receive buffer: requested 4194304, got 262142 (tr-udp.c:75)
[17:42:40.319] UDP Please add the line "net.core.rmem_max = 4194304" to /etc/sysctl.conf (tr-udp.c:80)
[17:42:40.319] UDP Failed to set send buffer: requested 1048576, got 262142 (tr-udp.c:86)
[17:42:40.319] UDP Please add the line "net.core.wmem_max = 1048576" to /etc/sysctl.conf (tr-udp.c:91)
By tuning the two variables, higher throughput can be achieved more easily using uTP.
Here’s the relevant part from the changeset :
Since we are using a single UDP socket to implement multiple UTP sockets,
and since we are not always timely in servicing an incoming UDP packet,
it is important to use a large receive buffer. The send buffer is probably
less critical, we increase it nonetheless.
Four megabytes might seem huge for embedded clients, but running behind a dedicated connection, it might even become too small. I recommend using 16 megabytes for receive buffering and 4 for the send buffer. That is, because uTP implements a retransmission algorithm and by scaling up the buffers we can achieve fewer retransmits because of dropped datagrams. Let’s set it up that way.
Check actual settings:
do the modifications:
echo 'net.core.rmem_max = 16777216' >> /etc/sysctl.conf
echo 'net.core.wmem_max = 4194304' >> /etc/sysctl.conf