Recuperando o nome do Bonjour (Zeroconf / mDNS) do endereço IP

4

Parece que esta é a melhor maneira de obter o nome Bonjour de um endereço IP:

$ dig -x 192.168.214.108 @224.0.0.251 -p 5353

; <<>> DiG 9.8.3-P1 <<>> -x 192.168.214.108 @224.0.0.251 -p 5353
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15357
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

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

;; ANSWER SECTION:
108.214.168.192.in-addr.arpa. 10 IN PTR David-iPhone.local.

;; Query time: 40 msec
;; SERVER: 192.168.214.108#5353(224.0.0.251)
;; WHEN: Sat Sep  5 12:10:08 2015
;; MSG SIZE  rcvd: 78

Isso funciona como esperado no meu Macbook Pro. No entanto, executando escavação em outro dispositivo (Raspberry Pi), não há resultados:

$ dig -x 192.168.214.108 @224.0.0.251 -p 5353

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> -x 192.168.214.108 @224.0.0.251 -p 5353
;; global options: +cmd
;; connection timed out; no servers could be reached

Por que isso? Como posso obter os mesmos resultados ao chamar dig do Raspberry Pi? O host pode ser pingado muito bem a partir do Raspberry Pi.

Estou procurando reunir o máximo de informações possível dos dispositivos de rede, feliz em considerar outras abordagens. (o nome ("iPhone de Joe") de dispositivos iOS / móveis é especialmente valioso)

    
por David Chouinard 05.09.2015 / 21:25

1 resposta

3

Pode ser que dig no Raspbian possa estar usando uma biblioteca de resolução de DNS não compatível com mDNS, que não sabe escutar as respostas do mDNS em 224.0.0.251:5353.

Veja se sua instalação do Raspbian Avahi inclui os comandos avahi-resolve --address ou avahi-resolve-address e use-os em vez de dig .

    
por 05.09.2015 / 22:22