Como configurar o bind9 para apontar o IP do servidor para nic?

1

Breve introdução

Comprei um nome de domínio example.ir do provedor de nomes de domínio de meu país nic.ir e um VPS de examplevps.ir .
Meu VPS me deu um IP estático e vamos imaginar que é: 170.120.100.140
Instalou um servidor da Web em execução em localhost 127.0.0.1 e eth0 170.120.100.140 .
Eu posso conectar ao meu VPS através do ssh e fazer o que eu quiser e eu sou um novato ... meu primeiro VPS.

O que eu fiz?

Na verdade, configure meu bind9 assim:

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.

e também nunca se esqueça de: service bind9 restart

O que eu espero?

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

Isso é o que eu recebo

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

Conclusão

Com base nas informações que eu forneci acima, é completamente claro o que eu quero ... e acho que devo fazer algo como:

  +------------------+
  |      My VPS      |
  |  170.120.100.140 |
  +------------------+
           |
  +------------------+
  | ns.examplevps.ir |  bind 170.120.100.140 > example.ir
  +------------------+
           |
  +------------------+
  |      nic.ir      |  bind ns.examplevps.ir > nic.ir
  +------------------+

Eu leio muitas páginas on-line, mas ainda não consigo descobrir como funciona.

    
por Heartagramir 02.06.2016 / 02:08

1 resposta

0

Você precisa permitir consultas de qualquer lugar. Adicione o seguinte a cada uma das instruções de zona em named.conf.local para permitir individualmente que as zonas sejam consultadas ou adicione-as no named.conf.options para permitir que todas as regiões sejam consultadas:

allow-query { any; };

Eu recomendo usar dig para depurar:

apt-get install dnsutils # for debian/ununtu
dig +trace example.ir

Além disso, você precisa apontar seu nic para o seu servidor de nomes. Isso geralmente é feito na interface web do nic, onde você especifica registros de cola para cada zona com o servidor de nomes servindo a zona na forma de:

ns.example.ir -> 170.120.100.140

O mais provável é que você também tenha que fornecer 2 nameservers. Você pode apontá-los para o mesmo IP, embora provavelmente você receba uma mensagem de aviso, que não sejam usados dois endereços IP distintos.

ns1.example.ir -> 170.120.100.140
ns2.example.ir -> 170.120.100.140

Você também precisa definir os registros de cola na zona do seu servidor de 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
...
    
por 02.06.2016 / 03:21