Как предотвратить добавление моего доменного имени к недействительным запросам домена dnsmasq? - PullRequest
1 голос
/ 08 августа 2008

Я использую dnsmasq для разрешения DNS-запросов в моей домашней сети. К сожалению, если доменное имя не известно, оно добавит мое собственное доменное имя к запросу, что означает, что я всегда заканчиваю просмотром своего собственного сайта в браузере.

Например, если я ввожу http://dlksfhoiahdsfiuhsdf.com в браузере, я в конечном итоге просматриваю свой собственный сайт с этим URL. Если я попробую что-то вроде:

host dlksfhoiahdsfiuhsdf.com

Вместо ожидаемого:

Host dlksfhoiahdsfiuhsdf.com not found: 3(NXDOMAIN)

Я понял:

dlksfhoiahdsfiuhsdf.com.mydomainname.com has address W.X.Y.Z.

Очевидно, что dnsmasq добавляет мое доменное имя к невозможным запросам имен, пытаясь разрешить их, но вместо этого я предпочел бы увидеть ошибку not found.

Я пытался играть с настройками expand-hosts и domain , но безрезультатно. Могу ли я попробовать что-нибудь еще?

Ответы [ 5 ]

3 голосов
/ 08 августа 2008

попробуйте выполнить запрос с конечной точкой, чтобы явно установить корень:

host dlksfhoiahdsfiuhsdf.com.
3 голосов
/ 02 октября 2008

Вероятно, это делает не dnsmasq, а ваша локальная библиотека распознавателя. Если вы используете unixish, попробуйте удалить строки "search" или "domain" из /etc/resolv.conf

1 голос
/ 23 февраля 2014

У вас есть подстановочный домен?

dnsmasq пересылает добавленное имя на внешний сервер DNS и получает его с подстановочными знаками.

вы можете использовать --server = / yourinternaldomainhere /, чтобы убедиться, что ваши внутренние запросы поиска доменных имен не пересылаются.

синтаксис в этом случае будет:

- сервер = / домен / iptoforwardto

и в этом случае оставьте область iptoforwardto пустой, так как вы не хотите, чтобы она куда-либо пересылалась.

1 голос
/ 05 декабря 2008

Могут быть и другие причины, но наиболее очевидной причиной является конфигурация /etc/resolv.conf и тот факт, что большинству DNS-клиентов нравится быть очень лаконичными в отношении ошибок.

benc$ host thing.one
Host thing.one not found: 3(NXDOMAIN)

(хорошо, что я использовал для конфигурации DNS?)

benc$ cat /etc/resolv.conf 
nameserver 192.168.1.1

(редактирование ...)

benc$ cat /etc/resolv.conf 
search test.com
nameserver 192.168.1.1
benc$ host thing.one
thing.one.test.com has address 64.214.163.132

Без необходимости выполнять трассировку пакета, вероятное поведение состоит в том, что он возвращает ошибку для последнего полного доменного имени, которое он пытался.

0 голосов
/ 08 августа 2008

Я попытался удалить domain-required из моей собственной конфигурации, чтобы повторить вашу проблему, и это не привело к такому поведению. Это единственный другой параметр, который я могу найти, который может быть близок к релевантному.

Как выглядит ваш файл hosts? Может быть, происходит что-то странное, что заставляет думать, что все странные домены являются локальными для вашей сети?

...