Me ha costado mucho interpolar entradas antiguas del blog y hurgar en el sistema de archivos, pero parece que esta receta me funciona ahora:
El servicio DNS de Mavericks OS X Server almacena sus archivos de zona en /Library/Server/named
:
sh-3.2# ls -lF /Library/Server/named
total 64
-rw-r--r-- 1 root wheel 14 Sep 15 17:29 .version
-rw-r--r-- 1 root wheel 327 Sep 18 16:57 db.19.0.10.in-addr.arpa
-rw-r--r-- 1 root wheel 362 Sep 18 16:57 db.example.com
-rw-r--r--@ 1 root wheel 195 Sep 15 17:29 localhost.zone
-rw-r--r--@ 1 root wheel 2994 Sep 15 17:29 named.ca
-rw-r--r--@ 1 root wheel 1164 Sep 18 16:57 named.conf
-rw-r--r--@ 1 root wheel 433 Sep 15 17:29 named.local
-rw------- 1 root wheel 77 Feb 14 2012 rndc.key
Tenga en cuenta que estoy en una cáscara de root aquí Todos estos archivos son propiedad de Root, por lo que esta es la forma más sencilla de editarlos sin estropear accidentalmente su propiedad o sus permisos.
Todo lo que tenemos que hacer es editar el db.*
que corresponde a la zona a la que queremos añadir un comodín Aquí db.example.com
. Primero, por supuesto, haga una copia de seguridad del archivo en su directorio principal o algún otro lugar seguro.
A continuación, abra el archivo con su editor de línea de comandos favorito y añada estas tres líneas al final del archivo (por supuesto, sustituyendo la dirección IP de su servidor):
@ 300 IN A 4.3.2.1
* 300 IN CNAME @
NO-EDITING-IN-GUI 300 IN A 1.2.3.4
La última línea sirve para recordar la siguiente advertencia importante:
Cuidado con la edición posterior de los registros con la interfaz gráfica de usuario. Si se abre el diálogo para editarlo, el nombre de host se muestra como example.com
y haciendo clic en OK sobrescribirá su comodín con un registro de direcciones no válido. Caveat emptor.
Luego fui a la Servidor y utilizó el interruptor deslizante para detener y reiniciar el servicio DNS. En el flash antes de que se reinició me di cuenta de que la interfaz gráfica de usuario ya estaba mostrando mi nuevo example.com
pero no se deje engañar por esto La pantalla de la GUI se basa en lo que hay en los archivos de zona, no en lo que ha cargado el servidor en ejecución.
Después de reiniciar, puedes usar dig
para verificar que el host comodín está funcionando:
aoide:~ kaelin$ dig nonexistant.example.com
; <<>> DiG 9.8.3-P1 <<>> nonexistant.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56808
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;nonexistant.example.com. IN A
;; ANSWER SECTION:
nonexistant.example.com. 300 IN CNAME example.com.
example.com. 300 IN A 4.3.2.1
;; AUTHORITY SECTION:
example.com. 10800 IN NS ns1.example.com.
example.com. 10800 IN NS ns2.example.com.
;; ADDITIONAL SECTION:
ns1.example.com. 300 IN A 10.0.19.63
ns2.example.com. 300 IN A 10.0.19.62
;; Query time: 5 msec
;; SERVER: 10.0.19.63#53(10.0.19.63)
;; WHEN: Thu Sep 18 22:13:32 2014
;; MSG SIZE rcvd: 141