Comment 16 for bug 1176046

Revision history for this message
Eric Desrochers (slashd) wrote :

I was able to identify from where the port range list is initialize, and the decision is taken by binary package "libdns162" (source package "bind9")[1] which dhclient relies on.
Basically, it randomly takes any port available between 1024 and 65535[2]

So there is a port randomization mechanism made by the library that take the decision instead of, for instance in some other cases, where the decision is leave it to the kernel[3].

In this particular case both sysctl options :
net.ipv4.ip_local_port_range
net.ipv4.ip_local_reserved_ports

have no effect on port assignation decision.

[1] - https://github.com/wklaebe/bind9/blob/ac1dcdd124a5abdec4969e2c33836d863bf73aa7/lib/dns/dispatch.c#L1921
[2] - https://tools.ietf.org/html/rfc6335
[3] - Example : net.ipv4.ip_local_port_range = 32768 60999

Regards,