Я купил доменное имя example.ir
от поставщика доменного имени моей страны nic.ir
и VPS от examplevps.ir
.
Мой VPS дал мне статический IP-адрес, и давайте представим, что это: 170.120.100.140
Установлен веб-сервер, работающий на localhost 127.0.0.1
и eth0 170.120.100.140
.
Я могу подключиться к своему VPS через ssh и делать все, что захочу, и я новичок ... мой первый VPS.
На самом деле настройте мой bind9 следующим образом:
named.conf.local
zone "example.ir" {
type master;
file "/etc/bind/db.example.ir";
};
zone "140.100.120.170.in-addr.arpa" {
type master;
file "/etc/bind/db.170";
};
db.example.ir
$TTL 604800
@ IN SOA example.ir. root.example.ir. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS example.ir.
@ IN A 170.120.100.140
@ IN AAAA ::1
db.170
$TTL 604800
@ IN SOA example.ir. root.example.ir. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS example.ir.
170 IN PTR example.ir.
а также никогда не забывайте: service bind9 restart
root@examplevps$ nslookup example.ir
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: example.ir
Address: 170.120.100.140
root@examplevps$ nslookup example.ir
;; Got SERVFAIL reply from 8.8.8.8, trying next server
Server: 4.2.2.4
Address: 4.2.2.4#53
** server can't find example.ir: SERVFAIL
Основываясь на информации, которую я предоставил выше, совершенно ясно, что я хочу ... и я думаю, что я должен сделать что-то вроде:
+------------------+
| My VPS |
| 170.120.100.140 |
+------------------+
|
+------------------+
| ns.examplevps.ir | bind 170.120.100.140 > example.ir
+------------------+
|
+------------------+
| nic.ir | bind ns.examplevps.ir > nic.ir
+------------------+
Я прочитал много страниц в Интернете, но до сих пор не могу понять, как это работает.
Вам нужно разрешить запросы из любого места. Либо добавьте следующее к каждому из операторов зоны в named.conf.local
для индивидуального запроса зон или добавления его в named.conf.options
чтобы разрешить опрос всех зон:
allow-query { any; };
Я рекомендую использовать dig
для отладки:
apt-get install dnsutils # for debian/ununtu
dig +trace example.ir
Далее вам нужно указать свой nic
на ваш сервер имен. Обычно это делается в веб-интерфейсе nic, где вы указываете связующие записи для каждой зоны с сервером имен, обслуживающим зону, в форме:
ns.example.ir -> 170.120.100.140
Скорее всего, вам также придется предоставить 2 сервера имен. Вы можете указать им один и тот же IP-адрес, хотя вы, вероятно, получите предупреждающее сообщение о том, что используются не два разных IP-адреса.
ns1.example.ir -> 170.120.100.140
ns2.example.ir -> 170.120.100.140
Вам также необходимо определить клейкие записи в зоне вашего DNS-сервера:
@ IN SOA ns1.example.ir. hostmaster.example.ir. (
...
(
@ IN NS ns1
@ IN NS ns2
...
ns1 IN A 170.120.100.140
ns2 IN A 170.120.100.140
...