2016-11-03 4 views
0


Ich brauche etwas Hilfe zu dem Thema.
Wie überprüft man eine Änderung des DNS-Servers in Nodejs

Ich möchte ein Skript erstellen, um zu überprüfen, wenn eine DNS geändert wird,
, wenn ein Benutzer Netzwerkanbieter wechselt.

I versucht mit
dns.getServers() im Knoten cli
es ergab dns des vorliegenden Netzwerkes

I ohne Austreten aus dem Knoten cli
einen Schalter zu einem anderen Netzbetreiber hergestellt ausgeführt dns.getServers() wieder
sie die DNS des bisherigen Provider zurück

H Wie kann man das beheben?

+1

Ich habe versucht, in den node.js Quellcode zu suchen. 'dns.getServers()' ruft schließlich [nativen Code] (https://github.com/nodejs/node/blob/master/src/cares_wrap.cc#L1196) auf, der die native Funktion 'ares_get_servers()' aufruft. Also, die Antwort liegt offenbar in der nativen Implementierung von 'ares_get_servers()', aber das ist soweit ich weiß. Wahrscheinlich müssen Sie eine Möglichkeit finden, DNS-Server-Interna/Cache zu leeren. – jfriend00

Antwort

0

Ich fand eine Lösung für das Problem. Danke an @ jfriend00 für den systemeigenen Code.

der beste Weg, jetzt für den Knoten bekommen Sie dns zu erkennen, wenn eine Änderung auftritt resolvmon

npm installieren resolvmon

es wie ein Zauber arbeiten, um eine Abhängigkeit zu erhalten.

aber wenn jemand noch einen besseren Ansatz hat, werde ich gerne wissen und lernen.

Verwandte Themen