Как предотвратить добавление моего доменного имени к недействительным запросам домена dnsmasq?

Я использую 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.

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

8.08.2008 13:01:48
5 ОТВЕТОВ

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

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

0
8.08.2008 13:36:01

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

host dlksfhoiahdsfiuhsdf.com.
3
8.08.2008 14:17:08

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

3
2.10.2008 00:06:52
Спасибо за совет. Со времени, когда я задал вопрос, я перестал использовать dnsmasq и поэтому не могу проверить ваше решение. Я оставлю это на всякий случай, если это может помочь кому-то еще.
yukondude 2.10.2008 23:58:37

Могут быть и другие причины, но наиболее очевидной причиной является конфигурация /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

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

1
4.12.2008 23:54:48

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

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

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

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

--server = / домен / iptoforwardto

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

1
22.02.2014 22:48:21