Frage an windows, dns, php – DNS-Suche in PHP

4

Ich habe einen Windows-Server, der zeitweise die Möglichkeit verliert, DNS-Informationen nachzuschlagen. Ich versuche, die Grundursache des Problems zu finden, möchte aber in der Zwischenzeit überwachen können, ob der Server Lookups durchführen kann.

Grundsätzlich sollte versucht werden, einige gebräuchliche Hostnamen nachzuschlagen, und die Anzeige 'Erfolgreich' sollte angezeigt werden, wenn die Suchvorgänge erfolgreich waren.

Auf der Site wird PHP ausgeführt, daher würde ich es vorziehen, wenn das Monitorskript in PHP ausgeführt wird. Wenn jedoch jemand weiß, wie dies in ASP / .Net ausgeführt wird, funktioniert dies ebenfalls.

Deine Antwort

4   die antwort
0

Es gibt jedoch eine kleine Einschränkung dieser Funktion: Changelog: v. PHP 5.3.0 - Diese Funktion ist jetzt auf Windows-Plattformen verfügbar.

Wenn Sie nicht möchten, aktualisieren Sie PHP auf IIS. Es gibt eine andere Alternative, die dig für Windows Binary ausführt. hier istnach Fenstern graben. Sie können das für Ihr eigenes nicht für jedes Programm auch benötigen. Es ist jenseits der alten nicht genug nslookup Befehl.

In meinem Fall funktioniert dies, weil auf dem Server 5.3 ausgeführt wird, aber ich habe die Frage ursprünglich gestellt, weil ich der Meinung war, dass die Funktion unter Windows nicht verfügbar ist. Dave Forgac
2

Unter Windows sind PHP-DNS-Funktionen vor PHP 5.3 nicht verfügbar. Sie benötigen die Pear Net_DNS-Klasse.http://pear.php.net/package/Net_DNS

Beispielverwendung:

require_once 'Net/DNS.php';

$resolver = new Net_DNS_Resolver();
$resolver->debug = $this->debug;
// nameservers to query
$resolver->nameservers = array('192.168.0.1');
$resp = $resolver->query($domain, 'A');

Quelle:http://code.google.com/p/php-smtp-email-validation/source/browse/trunk/smtp_validateEmail.class.php#232

0

"Ping" führt immer eine DNS-Suche durch (vorwärts und rückwärts), bevor der betreffende Hostname gepingt wird. Das Schreiben eines Shell-Skripts zur Verwendung von Ping (oder Dig), um festzustellen, ob Ping als Wonky fungiert, wird dem Leser als Übung überlassen.

Eine andere Möglichkeit besteht darin, einen DNS-Cache-Server auf dem lokalen Computer zu verwenden, der die Antworten des DNS-Upstream-Servers zwischenspeichert und Daten aus dem Cache sendet, wenn der Upstream-Server inaktiv ist. Mein eigenes Deadwood ist eine winzige 32k Windows- oder UNIX-Binärdatei, die dies ermöglicht (64k, wenn Sie eine vollständige DNS-Rekursion wünschen).

6

http://www.php.net/manual/en/function.dns-get-record.php ist die funktion in php die sich so anhört, als ob du danach bist.

Vielen Dank. Diese Funktion war in Windows nicht verfügbar, als ich sie das letzte Mal ausprobiert habe, wurde aber in PHP 5.3+ verfügbar gemacht. Ich hätte es zuerst noch einmal überprüfen sollen. Dave Forgac

Verwandte Fragen