mdns – ¿Cómo obtengo el nombre de la máquina de una IP a través de DNS de multidifusión?

Pregunta:

Tengo una lista de direcciones IP en una red y la mayoría de ellas admiten DNS multidifusión. Me gustaría poder resolver el nombre del servidor en lugar de solo tener la dirección IP.

ping computer.local
64 bytes from 192.168.0.52: icmp_seq=1 ttl=64 time=5.510 ms
64 bytes from 192.168.0.52: icmp_seq=2 ttl=64 time=5.396 ms
64 bytes from 192.168.0.52: icmp_seq=3 ttl=64 time=5.273 ms

Funciona, pero me gustaría poder determinar ese nombre a partir de la IP. Además, los dispositivos no transmiten necesariamente ningún servicio, pero definitivamente son compatibles con la transmisión mDNS. Por lo tanto, buscar servicios no funcionará.

Respuesta:

Como ya conoce las direcciones IP, puede buscar la entrada inversa para cada dirección IP para obtener la dirección de reenvío asociada:

$ dig -x 10.0.0.200 @224.0.0.251 -p 5353

; <<>> DiG 9.6.0-APPLE-P2 <<>> -x 10.0.0.200 @224.0.0.251 -p 5353
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54300
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;200.0.0.10.in-addr.arpa.   IN  PTR

;; ANSWER SECTION:
200.0.0.10.in-addr.arpa. 10 IN  PTR atj-mbp.local.

;; ADDITIONAL SECTION:
atj-mbp._device-info._tcp.local. 10 IN  TXT "model=MacBookPro3,1"

;; Query time: 2 msec
;; SERVER: 10.0.0.200#5353(224.0.0.251)
;; WHEN: Sat Jun 26 07:53:44 2010
;; MSG SIZE  rcvd: 126

Para una salida más amigable con el script de shell, use '+ short':

$ dig +short -x 10.0.0.200 @224.0.0.251 -p 5353
atj-mbp.local.

Dependiendo de su caso de uso previsto, puede haber un método más apropiado para realizar la consulta. No dude en ponerse en contacto conmigo si necesita más información.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım