Utilizzo di Avahi su Ubuntu DreamPlug con iPads

Ho il seguente problema molto peculiare con l'utilizzo di Avahi sul DreamPlug (che è un computer plug con Ubuntu Jaunty).

Dopo aver trascorso parecchi giorni, credo di aver restituito la questione.

Il DreamPlug funge da punto di accesso WiFi e ha la plug hostname e l'indirizzo IP 192.168.1.1 (che è impostato sia in /etc/hosts che in /etc/hostname ) e gestisce lighttpd.

Ora il mio Mac lavora subito con l'accesso a http://plug.local in Chrome, tuttavia se provo a caricare http://plug.local sull'iPad, non funziona. Cioè, non funziona finché non caricherò la pagina sul desktop.

Per qualche ragione, i iPads non sono mai in grado di risolvere il nome host finché il nome di host non viene risolto in precedenza sul Mac … che è strano perché non esiste alcuna connessione tra iPads e Mac, a differenza del fatto che sono connessi lo stesso punto di accesso (il DreamPlug).

Quindi, solo per chiarire nuovamente: Safari sull'iPad appenderà (finché non segnalerà che la navigazione è fallita) quando accede a http://plug.local less che non acceda a http://plug.local sul Mac, eseguire ping plug.local , fare ssh root@plug.local o fondamentalmente fare qualsiasi altra cosa che risolve il nome host, a questo punto l'iPad risolve immediatamente il nome host e inizia a funzionare correttamente.

Se la mia comprensione è corretta, quando i iPads collegano trasmettono una richiesta di risoluzione per plug.local . Per qualsiasi motivo, questa richiesta viene ignorata dal DreamPlug (o non viene mai ricevuto). Tuttavia, il Mac riesce a trasmettere la sua richiesta. Trasmette una richiesta di risoluzione e i brodcast DreamPlug riportno il risultato plug.local -> 192.168.1.1 . I iPads quindi ricevono questo risultato (che era veramente destinato al Mac) e quindi sono in grado di risolvere con successo.

Sarò lieto di fornire il mio avahi-daemon.conf o altri file di configuration su richiesta.

Aggiornamento: Ho ora riuscito a utilizzare Wireshark e ho scoperto che i iPads in effetti trasmettono una richiesta alla networking.

Ho catturato sia un pacchetto che DID ha dato una risposta da Avahi, così come uno che non ha fatto.

Entrambi appaiono completamente identici, l'unica differenza è che quello non fallito specificò un ulteriore RR del tipo OPT … Non ho idea di come sia un record OPT . Potrebbe essere che Avahi non ama le query DNS con OPT RRs attaccate per qualche motivo?

Ecco due screenshot tratti da Wireshark. La prima mostra una richiesta "buona" mDNS che viene inviata dal computer desktop (in questo caso, il dispositivo viene chiamato runway.local ). Questa query funziona bene e il server (a 192.168.1.1 ) risponde immediatamente:

Una query mDNS che funziona

Ecco un esempio della risposta che viene restituita da runway.local :

immettere qui la descrizione dell'immagine

Nel frattempo, ecco una seconda query DNS che è stata inviata dall'iPad per lo stesso hostname, runway.local . In questo caso, la richiesta sembra essere semplicemente ignorata (in each caso, nessuna risposta è ricevuta per questa query DNS):

immettere qui la descrizione dell'immagine

Cercando di rintracciare ciò che è nella richiesta di iPad che causa il problema, sembra che i due pacchetti siano quasi identici, l'unica differenza tra le query mDNS inviate dal desktop (che esegue OS X) e l'iPad è che l'iPad appaia un record di risorsa OPT nella parte inferiore della richiesta DNS.

La domanda è: qual è il significato del record di risorse – ed è questo – o è qualcos'altro – che è responsabile di questa richiesta DNS ignorata da Avahi.

AGGIORNAMENTO Questo potrebbe essere la svolta che ho cercato:

Ho eseguito avahi-daemon con il flag -debug e ho notato un sacco di pacchetti di query non validi. messaggi. Questo mi ha portto a questa pagina: http://avahi.org/ticket/284 che sembra che sia un problema noto (seppure quello che dovrebbe essere risolto).

In particolare:

Un tcpdump mi fa credere che questo sia dovuto a Mac OS 10.6 utilizzando RFC2671 per aggiungere le informazioni nella sezione dei dati aggiuntivi delle query DNS. In particolare, sta fornendo la dimensione "UDP payload" (nel mio caso, 1440) come suggerimento per la dimensione massima dei pacchetti di risposta. […] Avahi esamina le query con le sezioni dati aggiuntive non vuote, in cui controlla AVAHI_DNS_FIELD_ARCOUNT! = 0 appena prima di generare il messaggio di pacchetto di query non valido.

  • Server web multipli che condividono un server db
  • Sessioni remote basate su GUI per gli utenti finali
  • MIT Kerberos continua a chiedere la password per l'authentication di OpenSSH
  • sudo fine, sudo non funziona (command non trovato)
  • Ubuntu 10.04: imansible accedere dopo l'installazione nuova
  • Perché non posso superare le connessioni TIME-WAIT da 32k o 65k?
  • sshd ha rifiutato l'authentication delle chiavi
  • Come posso controllare / dev / xvda1?
  • One Solution collect form web for “Utilizzo di Avahi su Ubuntu DreamPlug con iPads”

    Non frequento frequentemente il SF, ma posso capire che questa domanda ha attirato un po 'di attenzione, perciò vorrei solo riassumere le mie conclusioni qui e spero di offrire una soluzione a coloro che sperimentano la stessa questione:

    Sembra che questo sia un bug con la versione di Avahi che viene fornita con Ubuntu Jaunty ( http://avahi.org/ticket/284 ) per fornire la dimensione del payload UDP, probabilmente come risultato di una modifica più accanita mDNS spec (anche se non l'ho letto). Come ho spiegato nei commenti alla domanda originale, ho cercato di aggiornare la mia versione di Avahi, ma le mie competenze Linux non sono ciò che dovrebbero essere e non ho riuscito a farlo funzionare. (In entrambi i casi, l'esecuzione di un sistema operativo non supportto di 3 anni in realtà non è comunque consigliato …)

    Alla fine, ho preso il tuffo, spazzato la scheda SD del DreamPlug e installato Debian Squeeze, che funzionava bene (anche se solo con iOS 5.0+). Una discussione su come cambiare il sistema DreamPlug è fuori field di questa domanda, ma ciò che tutto si riduce alla fine della giornata è una versione obsoleta di Avahi. Utilizza una versione più recente e dovresti essere soddisfacente!

    In bocca al lupo!

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.