Intro
Bei dem Versuch , ein Netzwerkproblem vor Ort zu unserem Intranet zu debuggen, wurde deutlich , dass curl
host
nslookup
und sich dig
anders verhalten. Wo dig
und host
gibt die IP - Adresse der URL in Frage, curl
und nslookup
Rückkehr:
curl: (6) Could not resolve host: internal.site.company.com
und
nslookup: can't resolve 'internal.site.company.com`
Kontext
Dies sollte zwar keine Rolle spielen, aber im Wesentlichen, um dem Problem mehr Kontext zu geben, tritt dieses Problem auf und hinter einem auf docker-machine
(getestet mit einer Docker-Maschine auf beiden virtualbox
und parallels
um genau zu sein). Die docker-machine
und die von ihm gehosteten Container haben alle die richtige IP-Adresse des gewünschten internen DNS-Servers /etc/resolv.conf
. Die IP-Adresse der gewünschten URL ist auch von den Computern aus erreichbar, die den Namen nicht auflösen können. Wie oben erwähnt, ist die Adresse eine interne Site und unser DNS-Server ist ebenfalls intern. Die Site ist vom Computer, auf dem sie docker-machine
installiert ist, erreichbar und auflösbar .
Fragen
Was mich zu den Fragen bringt ...
1) Was ist dig
und host
macht unter der Haube anders als beide cURL
und nslookup
?
2) Was könnte möglicherweise einen Browser zu verhindern oder zu curl
von der Lösung der URL die Art und Weise beide host
und dig
werden die Namen erfolgreich zu lösen?
Installieren
dig -v
:: DiG 9.11.1
host -v
:: host 9.11.1
curl -V
:: curl 7.49.1
Docker-Version: Version 17.06.0-ce-mac19 (18663) Channel: stable
Boot2Docker version 17.06.0-ce, build HEAD : 0672754
curl
ganz am Anfang?