dnsmasq не разрешает локальные имена хостов

Эти порты предназначены для TCP/UDP, протоколов, работающих поверх IP. Таким образом, все должно быть одинаковым, какую бы версию IP вы ни использовали.

2
24.10.2018, 08:09
2 ответа

Ваш файл hosts очень заполнен 72 хостами, это, вероятно, проблема форматирования в вашем файле hosts, которую DNSMasq пропустит, см. следующий ответ от StackOverflow

Putting 123.123.123.12 container.test into a new file, e.g. /etc/dnsmasq.hosts

Pointed dnsmasq to the new file by adding addn-hosts=/etc/dnsmasq.hosts to /etc/dnsmasq.conf

0
24.08.2021, 06:41

Значение по умолчанию для ndotsизменилось примерно в то время, когда вы задали этот вопрос.

Новое значение 1.это означает, что если имя запроса не содержит хотя бы одну точку, к нему добавляется суффикс с каждым значением из списка searchпо очереди, пока не будет найдено совпадение.

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

Старая ситуация

  • myfileserver-передано dnsmasq, который нашел совпадение
  • noname-передается в dnsmasq, что не соответствует, поэтому noname.mylanбудет передано в dnsmasqдля поиска; это, вероятно, также не совпало бы, поэтому NXDOMAINбудет возвращено

Новая ситуация

  • myfileserver-меньше одной точки, автоматически обозначаемой mylan; myfileserver.mylanпередано dnsmasq, что не соответствует (, поскольку ожидается, что будет запрошено толькоmyfileserver)

Подойдет любое из этих решений:

  • установите ndots=0в вашем /etc/resolv.conf, чтобы вернуться к предыдущему поведению (, вероятно, не рекомендуется)

  • измените свой /etc/hosts, чтобы он имел суффикс mylan

      192.168.1.2  myfileserver.mylan  myfileserver
    
1
24.08.2021, 09:02

Теги

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