2013-08-22 17 views
6

ich Fedora bin mit 18 mit den avahi Kommandozeilen-Tool (Version 0.6.31)Avahi Hostname Auflösung: Wird irgendwo zwischengespeichert?

I avahi-Auflösungs-Host-Namen verwenden, um die IP-Adresse von Einheiten auf meinem Subnetz, für Testzwecke während der Entwicklung zu entdecken. Ich überwache die Anfrage und die Antwort mit Wireshark. Nach einer erfolgreichen Anfrage und Antwort werden auf Wireshark keine weiteren Anfragen angezeigt, aber das Tool gibt immer noch eine IP-Adresse zurück. Ist es möglich, dass der Computer/Avahi-Daemon/etwas anderes das Ergebnis "zwischenspeichert"?

Die Frage: Ich möchte das Anfragepaket mit JEDEM ANRUF von avahi-resolve-host-name senden. Ist das möglich?

Der Grund: Ich bekomme 'falsch positive' sozusagen. Ich versuche "test1.local" aufzulösen, und ich bekomme eine resultierende IP, aber die Einheit befindet sich nicht mehr in dieser IP. Ich möchte, dass die Anfrage jedes Mal gesendet wird, damit ich vermeiden kann, Einheiten bei falschen IP-Adressen zu sehen.

Antwort

2

Ich sehe, dass ich ein bisschen spät bin, um Ihre Frage zu beantworten, aber ich werde eine generische Antwort hinterlassen, falls jemand anderes darüber stolpert.

Meine Antwort basiert auf avahi-0.6.32_rc.


Ist es möglich, den Computer/avahi Daemon/etwas anderes ist 'Caching' das Ergebnis?

Ja, Avahi-Daemon Caching-Lookup-Ergebnisse. Während dies scheint nicht explizit in Merkmalen aufgeführt zu werden, die avahi-daemon(8) manpage Tipps, um es:

Der Daemon [...] stellt zwei IPC-APIs für lokale Programme Nutzung des mDNS Rekord-Cache der avahi- zu machen Daemon unterhält.


Ich wünsche das Anforderungspaket mit jedem Aufruf von avahi-Auflösungs-Host-Namen zu versenden. Ist das möglich?

Ja, ist es. Die entsprechende Option ist cache-entries-max (von avahi-daemon.conf(5)):

cache-entries-max= nimmt eine ganze Zahl ohne Vorzeichen angibt, wie viele Ressourceneinträge pro Schnittstelle zwischengespeichert werden. Größere Werte erlauben mDNS in großen LANs korrekt zu arbeiten, erhöhen aber auch den Speicherverbrauch.

den gewünschten Effekt zu erzielen, können Sie einfach einstellen:

cache-entries-max=0 

Das vollständig das Caching deaktivieren wird und avahi-Daemon zwingen, die MDNS Pakete bei jeder Anfrage neu aufzulegen, damit es Ihnen möglich machen um sie zu überwachen.

Allerdings sollte ich hier beachten, dass dies Avahi auch für den normalen Gebrauch ziemlich nutzlos machen wird. Während Avahi-Daemon Nachschlagepakete ausgibt, kann er die Ergebnisse nicht speichern, und jeder Aufruf von avahi-resolve-host-name (sowie andere Befehlszeilentools, nss-mdns, D-Bus API ...) schlägt fehl.

Verwandte Themen