DHCP-сервер dnsmasq не отвечает

Я подключил камеру HikVision к Raspberry Pi через два сетевых адаптера Ethernet TP-Link TL-PA4010.

Я настроил интерфейс eth0 малины на статический IP-адрес. В /etc/dhcpcd.conf:

interface eth0
static ip_address=192.168.0.10/24

Я настроил DHCP-сервер с помощью dnsmasq со следующей конфигурацией:

# Disable DNS
port=0

# Configuring the DHCP server
interface=eth0
dhcp-leasefile=/var/lib/misc/dnsmasq.leases
# The MAC address of the IP camera
dhcp-host=xx:xx:xx:xx:xx:xx,192.168.0.11
# I've added this later, didn't do anything
dhcp-authoritative

# Some logging
log-dhcp
log-queries
log-facility=/var/log/dnsmasq.log

Эта установка работала недолго, и я мог получать изображения с нее. Но теперь камера не подключается: не может получить IP. Он правильно подключается к моей домашней сети, и я могу загрузить веб-страницу камеры. Пытался сбросить камеру до заводских настроек по умолчанию и перенастроить ее для DHCP, но безуспешно.

Пытался захватить пакет, проходящий через eth0, используя tcmdump, и я вижу некоторый трафик с камеры, что-то связанное с запросом маршрутизатора и кучу других вещей, но я также вижу:

17:46:36.725552 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from xx:xx:xx:xx:xx:xx (oui Unknown), length 284
17:46:39.726180 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from xx:xx:xx:xx:xx:xx (oui Unknown), length 284
17:46:42.727918 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from xx:xx:xx:xx:xx:xx (oui Unknown), length 284

Я отфильтровал журналы с помощью dhcpdump, и это все, что я вижу, среди прочего трафика на eth0 только они связаны с DHCP.

Но нет ответа от dnsmasq. В логах dnsmasq ничего нет:

Apr 29 17:33:57 dnsmasq[590]: started, version 2.85 DNS disabled
Apr 29 17:33:57 dnsmasq[590]: compile time options: IPv6 GNU-getopt DBus no-UBus i18n IDN2 DHCP DHCPv6 no-Lua TFTP conntrack ipset auth cryptohash DNSSEC loop-detect inotify dumpfile

Я удалил файл аренды (/var/lib/dhcp/dhclient.leases), который первоначально содержал запись из моей предыдущей успешной попытки после чего-то, что я прочитал в сети.

Служба работает корректно:

● dnsmasq.service - dnsmasq - A lightweight DHCP and caching DNS server
     Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2023-04-29 17:33:57 CEST; 15min ago
    Process: 538 ExecStartPre=/etc/init.d/dnsmasq checkconfig (code=exited, status=0/SUCCESS)
    Process: 570 ExecStart=/etc/init.d/dnsmasq systemd-exec (code=exited, status=0/SUCCESS)
    Process: 594 ExecStartPost=/etc/init.d/dnsmasq systemd-start-resolvconf (code=exited, status=0/SUCCESS)
   Main PID: 590 (dnsmasq)
      Tasks: 1 (limit: 779)
        CPU: 435ms
     CGroup: /system.slice/dnsmasq.service
             └─590 /usr/sbin/dnsmasq -x /run/dnsmasq/dnsmasq.pid -u dnsmasq -r /run/dnsmasq/resolv.conf -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg-new --local-service --trust-anchor=.,20326,8,2,e06d44b80b8f1d3>

Apr 29 17:33:55 raspberrypi systemd[1]: Starting dnsmasq - A lightweight DHCP and caching DNS server...
Apr 29 17:33:57 raspberrypi systemd[1]: Started dnsmasq - A lightweight DHCP and caching DNS server.

Я думаю, что проблема малины исходит из того, что:

  1. видим трафик значит адаптеры PL работают
  2. камера может получить IP-адрес от DHCP-сервера моего интернет-шлюза

Raspberry работает под управлением Raspbian (Debian GNU/Linux 11 (яблочко)), что довольно стандартно. Брандмауэра нет (по крайней мере, насколько я знаю).

pi@raspberrypi:~ $ sudo systemctl stop firewall
Failed to stop firewall.service: Unit firewall.service not loaded.

Я пришел к концу моего остроумия здесь. Есть идеи, в чем может быть проблема? Что я мог исследовать дальше?

1 ответ
1

Твой dnsmasq конфигурация не обеспечивает DHCP обслуживание должным образом, просто укажите DHCP диапазон и другие параметры в dnsmasq файл конфигурации, например:

port=0

interface=eth0
dhcp-range=192.168.0.11,192.168.0.20,255.255.255.0,1h
dhcp-option=3,192.168.0.10 # Gateway
dhcp-option=6,8.8.8.8,8.8.4.4 # DNS servers
dhcp-leasefile=/var/lib/misc/dnsmasq.leases
dhcp-authoritative

log-dhcp
log-queries
log-facility=/var/log/dnsmasq.log

Перезагружаемся и должно работать sudo systemctl restart dnsmasq

Если проблема не устранена, проверьте, работает ли другой DHCP-сервер на вашем Raspberry Pi. sudo systemctl list-units --type=service | grep -i dhcp и отключите его.

Сакстефляйн

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *