pfSense, OSX und DNS
Gestern hab ich festgestellt, dass OSX etwas zickig ist, wenn es um DNS geht.
Problem: Das Macbook kann keine Hosts im LAN mehr auflösen. Nach etwa einer Stunde und mit viel Hilfe von #macintosh.de auf freenode konnte ich dann aber den Fehler eingrenzen.
Und zwar nutzt OSX den mDNSResponder Dienst. Es gibt zwar eine /etc/resolv.conf, aber die wird nur von Tools wie dig oder nslookup genutzt, die übrigens ohne Problem die Hosts auflösen konnten. Naja, jedenfalls verwirft dieser mDNSResponder Antworten mit zu langer oder zu kurzer TTL (und tut noch ein paar andere Dinge, die man nicht erwarten würde, aber das kann man alles in den Apple Support Foren nachlesen đ ).
Lösung: pfSense nutzt nun dnsmasq und gibt keine TTL an, dnsmasq deutet das als TTL von 0. Umgehen kann man das Problem, indem man wie hier beschrieben die TTL in „/etc/inc/services.inc“ durch „–local-ttl 1“ auf eine Sekunde setzt. OSX braucht dann noch eine Weile, bis es wieder versucht, die Namen aufzulösen, aber dann funktioniert alles, wie man es von anderen Betriebssystemen gewohnt ist. In pfSense 2.0 sollte schon eine TTL von 1 gesetzt sein.