Каждый раз, когда запускается служба DHCP, она прослушивает не только 0.0.0.0:67, но и 0.0.0.0:PORT, где PORT - случайное число.
Кто-нибудь знает, откуда такое поведение?
root@OpenWrt:/# netstat -ntapue
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 10.0.16.1:22 0.0.0.0:* LISTEN 898/sshd
netstat: /proc/net/tcp6: No such file or directory
udp 0 0 10.0.16.1:514 0.0.0.0:* 922/syslog-ng
udp 0 0 0.0.0.0:60738 0.0.0.0:* 1290/dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 1290/dhcpd
udp 0 0 10.0.16.1:69 0.0.0.0:* 974/tftpd-hpa
netstat: /proc/net/udp6: No such file or directory
Моя конфигурация:
# dhcpd.conf
ddns-updates off;
authoritative;
# don't let clients modify their own A records
ignore client-updates;
default-lease-time 3600;
max-lease-time 86400;
option domain-name "lan";
option domain-name-servers 212.24.188.130, 212.24.188.131;
subnet 10.0.16.0 netmask 255.255.255.0 {
host marvin
{ hardware ethernet 48:5D:11:2F:22:31;
fixed-address 10.0.16.202; }
range 10.0.16.207 10.0.16.209;
option subnet-mask 255.255.255.0;
option broadcast-address 10.0.16.255;
option routers 10.0.16.1;
deny unknown-clients;
next-server 10.0.16.1;
filename "pxelinux.0";
}
Поиск в гугле выдает ошибку:
https://bugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/1176046
На панели запуска также есть ссылка на предлагаемое решение (сборка пакета из исходников с дополнительными параметрами для ./configure скрипта):
http://forums.debian.net/viewtopic.php?f=10&t=95273
Я проверил примечания к выпуску для последних стабильных (4.2.5-P1) и разрабатываемых (4.2.6b1 и 4.3.0b1) версий ISC DHCPD, и эта ошибка, похоже, там не исправлена.
Чтобы OpenWRT перестроил пакет из исходного кода с настраиваемыми параметрами, вам необходимо создать собственный пакет opkg, используя кросс-компилятор для архитектуры вашего маршрутизатора, или даже перестроить весь образ OpenWRT: http://wiki.openwrt.org/doc/devel/packages
Поэтому, чтобы решить проблему безопасности, я предлагаю вам просто заблокировать все порты, кроме необходимых (22, 67, 69, 514), с помощью вашего брандмауэра.