Эти порты предназначены для TCP/UDP, протоколов, работающих поверх IP. Таким образом, все должно быть одинаковым, какую бы версию IP вы ни использовали.
Ваш файл 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
Значение по умолчанию для 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