Ich verwende Cisco IPsec, um eine Verbindung zu meinem Arbeitsplatz-VPN herzustellen. Ich verbinde mich mit dem nativen Cisco IPSec-Client von OS X. Wir haben einen internen DNS-Server, der Datensätze für interne Websites enthält, z. B. scotty.infinidat.com
. Die Verwendung von curl, um eine interne Site zu kontaktieren, funktioniert wie erwartet. Die Verwendung des folgenden Python-Codes funktioniert auch:
Der Versuch, ein Äquivalent in Go zu implementieren, schlägt jedoch fehl:
Paket Haupt
%Vor%Das Ausführen des obigen Programms während der Verbindung mit dem VPN ergibt die folgende Ausgabe:
%Vor% Wo 10.135.1.1 der DNS-Server meines lokalen Netzwerks ist. Nach meinem Verständnis ist der reine Go DNS Resolver unter OS X nicht verfügbar. Forcing Go, um den cgo DNS Resolver zu verwenden, indem GODEBUG=netdns=cgo
gesetzt wird, macht keinen Unterschied.
Vielleicht können Sie eine vollständige DNS-Bibliothek verwenden, um zuerst die IP-Adresse aufzulösen:
%Vor% Wahrscheinlich hast du das schon gemacht, aber von meiner Seite aus habe ich bei der Ausführung von dig scotty.infinidat.com
keine Datensätze erhalten (die deinen Ergebnissen entsprechen):
Wenn also für www.google.com
gearbeitet wird, sind wahrscheinlich die Änderungen etwas mehr mit Ihrer DNS / ZONE verbunden.