[Bug 1670303] Re: dhcpd does not respect ip_local_port _range or ip_local_reserved_ports
Brian Candler
1670303 at bugs.launchpad.net
Mon Mar 6 14:14:33 UTC 2017
WORKAROUND: if the other application which needs to bind to a UDP port
can be configured to bind to a specific interface, then you can make
isc-dhcp-server bind to a different interface in dhcpd.conf. e.g.
ddns-local-address4 127.0.0.1;
ddns-local-address6 ::1;
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to isc-dhcp in Ubuntu.
https://bugs.launchpad.net/bugs/1670303
Title:
dhcpd does not respect ip_local_port _range or ip_local_reserved_ports
Status in isc-dhcp package in Ubuntu:
New
Bug description:
When isc-dhcp-server starts up, in addition to listening on port 67,
it binds to a random UDP port on an IPv4 socket and another on an IPv6
socket:
# netstat -naup | grep dhcp
udp 0 0 0.0.0.0:11075 0.0.0.0:* 8188/dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 8188/dhcpd
udp6 0 0 :::10800 :::* 8188/dhcpd
#
(I am guessing this is for making outbound DNS queries?) However,
this prevented a later application of mine from working, as it wanted
to bind to port 11075 for accepting incoming data.
Simply doing "service isc-dhcp-server restart" makes it choose new
ports, but this problem may occur again in the future.
In the default configuration, I believe ephemeral ports should only
use 32768 and above:
# cat /proc/sys/net/ipv4/ip_local_port_range
32768 60999
# cat /proc/sys/net/ipv4/ip_local_reserved_ports
#
I also tried setting a reservation, and this was not respected either.
# sysctl net.ipv4.ip_local_reserved_ports="10000-59999"
net.ipv4.ip_local_reserved_ports = 10000-59999
After restarting dhcpd:
# netstat -naup | grep dhcp
udp 0 0 0.0.0.0:50610 0.0.0.0:* 4592/dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 4592/dhcpd
udp6 0 0 :::28891 :::* 4592/dhcpd
I can find no way to tell isc-dhcp-server which port range to use. Setting "omapi-port" in dhcpd.conf makes it listen for *TCP* connections on the given port, and does not affect the UDP behaviour.
I don't know if this is a problem with the application (explicitly
picking a local port), the resolver library (ditto), or the kernel
(ignoring its own ip_local_port_range)
ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: isc-dhcp-server 4.3.3-5ubuntu12.6
ProcVersionSignature: Ubuntu 4.4.0-64.85-generic 4.4.44
Uname: Linux 4.4.0-64-generic x86_64
ApportVersion: 2.20.1-0ubuntu2.5
Architecture: amd64
Date: Mon Mar 6 09:30:29 2017
DhServerLeases:
InstallationDate: Installed on 2017-03-04 (2 days ago)
InstallationMedia: Ubuntu-Server 16.04.2 LTS "Xenial Xerus" - Release amd64 (20170215.8)
ProcEnviron:
SHELL=/bin/bash
TERM=xterm-256color
PATH=(custom, no user)
LANG=en_US
LANGUAGE=en_US:
SourcePackage: isc-dhcp
UpgradeStatus: No upgrade log present (probably fresh install)
mtime.conffile..etc.dhcp.dhcpd.conf: 2017-03-04T09:46:07.987046
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/1670303/+subscriptions
More information about the foundations-bugs
mailing list