Objetivo
Aunque se pueda atribuir nombres a los diversos sistemas de una red, estos no consiguen reconocerse entre sí sin un sistema de resolución de nombres. Para que un sistema consiga localizar la dirección IP asociada al nombre de otro sistema, es necesario que éste esté registrado en un servidor DNS, para permitir la resolución de nombres.
Instalación
root@server:~# apt install bind9 bind9-doc dnsutils
Configuración
La resolución de nombres traduce nombres de sistemas en sus direcciones IP y viceversa. Así, la configuración consiste, básicamente en la creación de 2 zonas, una (zone “fimaz.net”) que convierte nombres en direcciones IP y otra (zone “1.168.192.in-addr.arpa”) que convierte direcciones IP en el respectivo nombre de sistema.
Zonas
Las zonas pueden declararse en el archivo /etc/bind/named.conf.local:
/etc/bind/named.conf.local
//
// Do any local configuration here
//
zone "fimaz.net" {
type master;
file "/etc/bind/db.fimaz.net";
};
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.1.168.192";
};
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
Verificar que el archivo de configuración no contiene errores:
root@server:~# named-checkconf
Resolución de nombres
La resolución de nombres convierte los nombres de los sistemas en sus correspondientes direcciones IP. Para una zona “fimaz.net”, los nombres “server”, “virtual”, “ns” y “router” son asociados a sus respectivas direcciones. La base de datos para la resolución de nombres en la zona fimaz.net está guardada en el archivo /etc/bind/db.fimaz.net:
/etc/bind/db.fimaz.net
;
; BIND zone file for fimaz.net
;
$TTL 3D
@ IN SOA ns.fimaz.net. root.fimaz.net. (
2017061201 ; serial
8H ; refresh
2H ; retry
4W ; expire
1D ) ; minimum
;
NS ns ; Inet address of name server
MX 10 mail ; Primary mail exchanger
ns A 192.168.1.100
mail A 192.168.1.100
fimaz.net. A 192.168.1.100
server A 192.168.1.100
virtual A 192.168.1.101
router A 192.168.1.1 ; router ADSL
gateway CNAME router
gw CNAME router
El protocolo DNS permite también la creación de aliases, o canonical names, identificados por el tipo de registro CNAME. Un alias es un nombre alternativo de un sistema.
Al final del archivo podrán declararse algunos aliases: donde: el sistema “server” pasará también a ser conocido (CNAME o canonical name) como “proxy” y el servidor “virtual” responderá también por los nombres “www” y “ftp”:
/etc/bind/db.fimaz.net
// […]
proxy CNAME server
www CNAME server
ftp CNAME server
// […]
Verificar que el archivo de configuración de la zona fimaz.net no contenga errores:
root@server:~# named-checkzone fimaz.net /etc/bind/db.fimaz.net
zone fimaz.net/IN: loaded serial 2017061201
OK
Resolución Inversa
La resolución inversa traduce las direcciones IP en los nombres correspondientes de los sistemas.
La resolución inversa puede configurarse en el archivo /etc/bind/db.1.168.192:
/etc/bind/db.1.168.192
;
; BIND zone file for 192.168.1.xxx
;
$TTL 3D
@ IN SOA ns.fimaz.net. root.fimaz.net. (
2017061201 ; serial
8H ; refresh
2H ; retry
4W ; expire
1D ) ; minimum
;
NS ns.fimaz.net. ; Nameserver address
100 PTR server.fimaz.net.
100 PTR ns.fimaz.net.
100 PTR mail.fimaz.net.
101 PTR virtual.fimaz.net.
1 PTR router.fimaz.net.
Verificar que el archivo de configuración de la zona 1.168.192.in-addr.arpa no contenga errores:
root@server:~# named-checkzone 1.168.192.in-addr.arpa /etc/bind/db.1.168.192
zone 1.168.192.in-addr.arpa/IN: loaded serial 2017061201
OK
Reiniciar el servicio:
root@server:~# systemctl restart bind9
Añadir el dominio fimaz.net en el archivo /etc/resolv.conf:
/etc/resolv.conf
# [...]
domain fimaz.net
search fimaz.net
nameserver 127.0.0.1
# [...]
De esta forma, cuando nos referimos al sistema “server”, éste será buscado en el dominio “fimaz.net”, resultando en el nombre “server. fimaz.net”.
Verificación
Para verificar la resolución de nombres:
root@server:~# nslookup server
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: server.fimaz.net
Address: 192.168.1.100
Verificar que los aliases también sean resueltos:
root@server:~# nslookup gateway
Server: 127.0.0.1
Address: 127.0.0.1#53
gateway.fimaz.net canonical name = router.fimaz.net.
Name: router.fimaz.net
Address: 192.168.1.1
Para concluir con esta sección, verificar la resolución inversa:
root@server:~# nslookup 192.168.1.101
Server: 127.0.0.1
Address: 127.0.0.1#53
101.1.168.192.in-addr.arpa name = virtual.fimaz.net.