У меня есть VPS на Ubuntu. Также я настроил DNS (ns1.example.com, ns2.example.com) и подключил 2 тестовых домена к этим NS (я прописал эти NS в записи на сайте регистрации доменов для 2 доменов-примеров). Теперь, если я ищу эти домены с помощью nslookup - записей не найдено. Я хочу создать запись, которая свяжет эти домены с IP-адресами серверов имен. Для firstexample.com это будет 31.172.74.55 (выдуманный IP для ns1.example.com), а для secondexample.com это будет 79.132.156.160 (выдуманный IP для ns2.example.com). Как это сделать? Я использую bind, создал DNS через vesta, но хочу узнать, как создать запись с помощью терминала, чтобы написать скрипт, который будет создавать ее автоматически для новых доменов, чтобы сэкономить время. Я написал эту команду nslookup csgo.sbs
. Результат был connection timed out; no servers could be reached
. dig
имеет тот же ответ
решение1
Чтобы диагностировать правильность регистрации и исправность серверов имен для домена, вручную проследите рекурсивный поиск, начиная с корневых серверов имен, пока не достигнете целевого домена или не столкнетесь с ошибкой. В вашем случае это дает:
~$ dig +noall +authority +answer ns sbs.
sbs. 170959 IN NS d.nic.sbs.
sbs. 170959 IN NS c.nic.sbs.
sbs. 170959 IN NS a.nic.sbs.
sbs. 170959 IN NS b.nic.sbs.
~$ dig +noall +authority +answer ns sbs. @g.root-servers.net.
sbs. 172800 IN NS a.nic.sbs.
sbs. 172800 IN NS b.nic.sbs.
sbs. 172800 IN NS c.nic.sbs.
sbs. 172800 IN NS d.nic.sbs.
~$ dig +noall +authority +answer ns csgo.sbs. @a.nic.sbs.
csgo.sbs. 3600 IN NS ns1.makeuppro.shop.
csgo.sbs. 3600 IN NS ns2.makeuppro.shop.
~$ dig +noall +authority +answer ns csgo.sbs. @ns1.makeuppro.shop.
;; connection timed out; no servers could be reached
~$ dig +noall +authority +answer ns csgo.sbs. @ns2.makeuppro.shop.
;; connection timed out; no servers could be reached
Это показывает, что серверы ns1.makeuppro.shop
и ns1.makeuppro.shop
правильно зарегистрированы как серверы имен для домена, csgo.sbs
но не отвечают на DNS-запросы из Интернета.
~$ dig +noall +authority +answer a ns2.makeuppro.shop.
ns2.makeuppro.shop. 1740 IN A 79.132.138.120
~$ dig +noall +authority +answer a ns1.makeuppro.shop.
ns1.makeuppro.shop. 1799 IN A 79.132.138.120
говорят нам, что оба этих имени сервера ссылаются на один и тот же адрес IPv4, 79.132.138.120
поэтому на самом деле это один и тот же сервер.
Следующим шагом будет проверка правильности этого адреса, того, достигают ли пакеты UDP на порт 53 по этому адресу этого сервера (вместо того, чтобы быть, например, заблокированными брандмауэром), запущен ли BIND (или другая служба DNS) на этом сервере и прослушивает ли он порт 53, получает ли он эти пакеты и отвечает ли на них, и достигают ли ответы открытого Интернета (вместо того, чтобы быть, например, снова заблокированными брандмауэром).
После того как вы таким образом определили проблему, вы можете принять соответствующие меры для ее решения, например, устранить проблему запуска в конфигурации BIND или начать переговоры с вашим провайдером VPS об открытии порта 53 в его брандмауэре.