dnsmasq автоматически не перезагружает, когда запись добавляется к/etc/hosts

Я изо всех сил пытаюсь в течение нескольких дней настроить dnsmasq, чтобы автоматически перезагрузить или взять в знание новые хосты, добавленные к/etc/hosts или в другой настроенный файл /etc/hosts.dnsmasq.

Это даже возможно?

6
задан 18 September 2015 в 15:35
1 ответ

Есть два способа вызвать dnsmasq для перезагрузки файла hosts:

  1. Как отметил Аарон Копли в своем комментарии , отправьте ] SIGHUP в dnsmasq. На странице руководства :

    Когда он получает сигнал SIGHUP, dnsmasq очищает свой кеш, а затем повторно загружает / etc / hosts и / etc / ethers и любой файл, указанный в параметрах --dhcp-hostsfile, --dhcp-hostsdir, --dhcp-optsfile, --dhcp-optsdir, --addn-hosts или --hostsdir. Сценарий изменения аренды dhcp вызывается для всех существующих аренд DHCP. Если установлено - no-poll , SIGHUP также перечитывает /etc/resolv.conf . SIGHUP НЕ перечитывает файл конфигурации.

    Обратите внимание, что dnsmasq не перезапускается в этом случае, но он перечитывает ряд других файлов (и вызывает сценарий изменения аренды dhcp для всех существующих аренд DHCP). Если запуск перезагрузки слишком быстро вызывает беспокойство, вы можете заблокировать сигнал.

  2. Используйте параметр - hostsdir . Снова со страницы руководства :

    - hostsdir =
    Прочитать все файлы хостов, содержащиеся в каталоге. Новые или измененные файлы читаются автоматически. См. --Dhcp-hostsdir для подробностей.

    Для справки, вот документация для - dhcp-hostsdir :

    - dhcp-hostsdir =
    Это эквивалент в dhcp-hostsfile, за исключением следующего. Путь ДОЛЖЕН быть каталогом, а не отдельным файлом. Измененные или новые файлы в каталоге читаются автоматически, без необходимости отправлять SIGHUP. Если файл был удален или изменен после того, как он был прочитан dnsmasq, то содержащаяся в нем запись хоста останется до тех пор, пока dnsmasq не получит SIGHUP или не будет перезапущен; т.е. записи хоста добавляются только динамически.

    Это имеет несколько преимуществ по сравнению с первым вариантом: dnsmasq автоматически перечитает файл (ы) хоста, не требуется SIGHUP и; перезагружаются только файлы хоста, никакие другие действия не выполняются.

    Одним из потенциальных недостатков является то, что, как указано в документации для - dhcp-hostsdir , новые записи хоста динамически добавляются, но удаляются или изменяются записи не обновляются. Саймон Келли, автор dnsmasq, подтвердил, что это сделано намеренно .

5
ответ дан 3 December 2019 в 00:31

Теги

Похожие вопросы