Почему запросы на мой домен не поступают на порт 53 моего домашнего сервера даже после указания обоих моих серверов имен на мой IP?

424
user305964

Я заинтересован в работе своих собственных DNS-серверов, чтобы упростить обновление A-записей моих доменов. Мне известны предупреждения о том, что мой веб-сервер и DNS-сервер находятся в одном домене.

В настоящее время мои домены зарегистрированы через GoDaddy, и я зарегистрировал два поддоменов (ns1 ... и ns2 ...), и они оба указывают на мой IP-адрес. Мое желание состояло в том, чтобы иметь возможность открыть порт 53 и, по сути, иметь все запросы на мой домен, запрашивая мой IP: 53, на который я бы обслуживал A-запись. Пожалуйста, извините, если я чрезмерно упрощаю процесс, поскольку он по общему признанию сложен, и я все еще изучаю алгоритм разрешения доменного имени.

В конечном итоге я хотел создать свой собственный DNS-сервер с использованием NodeJ, но когда я выполнил вышеуказанные предварительные шаги, я обнаружил, что даже если бы я слушал порт 53, я не получил бы трафик, если бы я делал запросы к своему домену через браузер. Мой маршрутизатор был настроен правильно для пересылки запросов через порт 53 на мой сервер в сети.

Что может быть причиной этого?

РЕДАКТИРОВАТЬ: Я разместил этот вопрос в неправильном месте (ошибка сервера) в течение некоторого времени и получил несколько советов, но мне все еще неясно. Мне было предложено обновить записи NS, чтобы они указывали на новые серверы имен, но я вполне уверен, что это было сделано неявно, когда я установил сервер имен как свой собственный. Разве не все записи теперь должны обслуживаться моими серверами имен? Является ли запись NS той, которая всегда нуждается в обслуживании от регистратора?

Другое предложение, которое я получил, состояло в том, что серверам имен необходимо, чтобы A-записи преобразовывались в их IP-адреса. Опять же, GoDaddy - необходимая вечеринка, которая должна обслуживать эту A-запись?

Мне также сказали, что DNS «сильно кешируется», и поэтому браузер не подключается напрямую, а запрашивает у ОС поиск DNS. Итак, после уведомления GoDaddy об изменении серверов имен моего домена (для использования моего собственного) и после одной попытки попытаться запросить мой домен (через мой браузер), я хотел бы знать, что теоретически DNS-запрос приземлился бы на порт 53 моего IP сервера имен?

0
Возможная проблема заключается в том, что маршрутизатор сам является DNS-сервером, и поэтому даже если вы переадресовываете udp / 53 изнутри, это не произойдет, поскольку маршрутизатор попытается ответить на сам запрос. У вашего роутера есть способ отключить свой днс сервер? Paul 8 лет назад 0
Возможно, ваш провайдер блокирует входящий DNS. Это не было бы совершенно неразумно, поскольку UDP-запросы UDP могут использоваться для усиления DDoS. https://www.us-cert.gov/ncas/alerts/TA13-088A https://blog.cloudflare.com/deep-inside-a-dns-amplification-ddos-attack/ Zoredache 8 лет назад 1
@Paul & Zoredache, это вполне возможно. Я должен взглянуть на конфигурацию моего роутера сегодня вечером. user305964 8 лет назад 0
Ну, проблема, которую я упомянул, не будет в вашей конфигурации маршрутизатора. Он будет настроен в брандмауэре вашего интернет-провайдера. Вы бы ничего не могли сделать, чтобы изменить настройку. Возможно, вам придется обратиться к технической поддержке вашего провайдера. Конечно, они могут указать вам на раздел вашего соглашения об использовании, в котором говорится, что использование серверов противоречит условиям. Конечно, все будет иначе, если вы платите за услугу бизнес-класса. Zoredache 8 лет назад 0

1 ответ на вопрос

0
davidgo

Приношу свои извинения за то, что сказал это - я думаю, что вы идете об этом неправильно (из-за многословности поста).

«Лучшим» способом решения этой проблемы было бы (1) настроить серверы имен, (2) проверить, что они отвечают локально, (3) проверить, что они отвечают из-за пределов вашей сети, а затем (4) указать доменное имя на их.

Обратите внимание, что вам действительно нужно минимум 2 сервера имен, и они должны быть либо в разных сетях, либо в высоконадежных сетях. Вы действительно хотите, чтобы серверы имен имели разные внешние IP-адреса, которые вы обычно не можете сделать из домашнего / потребительского соединения.

Чтобы ответить на ваш вопрос "Что может быть причиной этого?" это сложно - однако, скорее всего, если вы запрашиваете свой сервер имен из локальной сети по его внешнему адресу, ваш маршрутизатор не может правильно маршрутизировать пакеты.

Вашим именным пользователям определенно нужны записи A для их разрешения - и если ваши DNS-записи являются поддоменом, вы пытаетесь использовать его еще сложнее - вам нужны «склеенные записи» (хотя многие провайдеры делают это так же просто, как ввод IP-адреса рядом с днс сервер). То, где запись A изменяется, зависит от вашей настройки - если доменное имя - example.com, а сервер имен - dns1.example.com, то это необходимо настроить на dns1.example.com. Запись A необходимо изменить в файле зоны для имени домена.

DNS сильно зависит от кэширования, но может или не может быть сильно кэшированы. Если серверы имен, к которым вы обращаетесь, недавно получили запрос на запись, и вы не обращаетесь напрямую к серверам Godaddy (и это маловероятно, поскольку они будут отвечать только за доменные имена, для которых они являются авторскими), то да, это может хорошо быть кэшированным. (Это грубое упрощение, но правильный ответ.)

Читая мой «вопрос», я вижу, что он довольно многословен. Я думаю, что наблюдение было действительно правильным ответом, и мне придется пересмотреть, как я начну это. Кажется, сверху вниз, а не сверху вниз. Спасибо! user305964 8 лет назад 0

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