Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

dns_get_record

Netzwerk-Funktionen

    Befehl:
array dns_get_record ( string $hostname [, int $type = DNS_ANY [, array &$authns [, array &$addtl [, bool &$raw = false ]]]] )


    Parameter-Liste:
NameBeschreibung
hostnamehostname sollte ein gültiger DNS-Hostnamen wie "www.example.com". zu sein. Reverse-Lookups können mit in-addr.arpa-Notation erzeugt werden, aber gethostbyaddr() ist besser geeignet für die Mehrheit der Reverse-Lookups.
Hinweis:
Per DNS-Standards, werden E-Mail-Adressen in user.host-Format (zum Beispiel gegeben: user.host im Gegensatz zu hostmaster.example.com), sollten Sie diesen Wert überprüfen und ggf. ändern, bevor Sie es mit Funktionen wie mail().
typeStandardmässig dns_get_record() wird für alle Ressourceneinträge mit hostname assoziiert suchen. Um die Abfrage zu beschränken, geben optional type-Parameter. Kann einer der folgenden sein: DNS_A, DNS_CNAME, DNS_HINFO, DNS_MX, DNS_NS, DNS_PTR, DNS_SOA, DNS_TXT, DNS_AAAA, DNS_SRV, DNS_NAPTR, DNS_A6, DNS_ALL oder DNS_ANY.
Hinweis:
Aufgrund der Exzentrizitäten in der Leistung zwischen libresolv Plattformen DNS_ANY wird nicht immer jeden Datensatz zurückkehren, desto langsamer DNS_ALL alle Datensätze zuverlässiger zu sammeln.
authnsReferenz übergeben und, falls angegeben, wird mit Ressourceneinträgen für die ritativen Nameserver füllt werden.
addtlReferenz übergeben und, falls angegeben, wird mit jedem Weitere Rekorde füllt werden.
rawBei rohen Modus, fragen wir nur die requestd Art statt Looping Art von Typ, bevor er mit der Zusatzinfo Zeug.

    Rückgabewerte:
Diese Funktion gibt ein Array von assoziativen Arrays, Im Fehlerfall wird FALSE zurückgegeben. Jede assoziative Array enthält at minimum die Tasten:
Basic DNS attributes
AttributeBedeutung
hostDer Datensatz in der DNS-Namespace, auf die der Rest der zugehörigen Daten bezieht.
classdns_get_record() gibt nur Internet-Klassenrekorde und als solche diesem Parameter wird immer IN zurück.
typeString, der den Satztyp. Zusätzliche Attribute werden auch in der resultierenden Anordnung von dem Wert des Typs enthalten sein. Siehe Tabelle unten.
ttl"Time To Live" Rest für diesen Datensatz. Dies wird not Original entsprechen TTL des Datensatzes, sondern eher gleich die Original-TTL minus Länge der Zeit, was auch immer passiert ist, seit die massgeblichen Name-Server abgefragt wurde.
Andere Tasten in assoziative Arrays abhängig von 'type'
TypeExtra-Spalten
Aip: Eine IPv4-Adressen in punktierter Dezimalschreibweise.
MXpri: Priorität der Mail-Exchanger. Niedrigere Zahlen weisen auf eine grössere Priorität. target: FQDN des Mailtauscher. siehe auch dns_get_mx().
CNAMEtarget: FQDN Lage im DNS-Namespace, zu dem der Datensatz Alias.
NStarget: FQDN des Name-Server, die der für diese Hostname ist.
PTRtarget: Lage im DNS-Namespace, zu dem dieser Datensatz Punkten.
TXTtxt: Beliebige Zeichenfolge Daten mit diesem Datensatz zugeordnet.
HINFOcpu: IANA Nummer, die das CPU der Maschine durch diesen Eintrag verwiesen. os : IANA Nummer, die das Betriebssystem auf der Maschine von diesem Datensatz verwiesen. Siehe IANA » Operating System Names die Bedeutung dieser Werte.
SOAmname: FQDN der Maschine, von der die Ressourceneinträge stammen. rname: E-Mail-Adresse des Verwaltungs enthalten für diese Domain. serial: Serial # dieser Revision der angeforderten Domäne. refresh: Refresh-Intervall (Sekunden) sekundären Name-Server sollten bei der Aktualisierung Fern Kopien dieser Domäne verwenden. retry: Länge der Zeit (Sekunden), um nach einem gescheiterten Auffrischungs warten, bevor sie einen zweiten Versuch. expire: Maximale Länge der Zeit (Sekunden) eine sekundäre DNS-Server Remote-Kopien der Zonendaten ohne einen erfolgreichen Refresh vor der Entsorgung zu behalten. minimum-ttl: Mindestzeitdauer (in Sekunden) ein Client weiterhin eine DNS-Auflösung verwenden, bevor es sollte eine neue Resolution vom Server anfordern. Kann durch individuelle Ressourceneinträge überschrieben werden.
AAAAipv6: IPv6 address
A6(PHP >= 5.1.0)masklen: Länge (in Bit), von dem vom chain angegebenen Ziel erben. IPv6: Adresse für diesen bestimmten Datensatz mit chain zu verschmelzen. chain: Eltern mit Rekord ipv6 Daten zusammenführen.
SRVpri: (Priority) niedrigsten Prioritäten sollten zuerst genutzt werden. weight: Ranking, um Gewicht zu, die von allgemein priorisiert targets sollten nach dem Zufallsprinzip ausgewählt werden. target und port: Hostnamen und Port, wo der angeforderte Dienst gefunden werden kann. Weitere Informationen finden Sie unter: » RFC 2782
NAPTRorder and pref: Entspricht pri und weight oben. flags, services, regex, und replacement: Parameter definiert durch » RFC 2915.

    Beschreibung:
Fetch DNS-Ressourceneinträge mit dem angegebenen hostname verbunden.


    Aktiv in Version:
(PHP 5, PHP 7)

    Hinweis:
Hinweis:

Für die Kompatibilität mit PHP-Versionen vor 5.3.0 auf einigen Betriebssystemen, versuchen Sie die » PEAR Klasse » Net_DNS.


    Siehe auch:
Alias von getmxrr
 
Alias von checkdnsrr
 

dns_get_record() - Beispiel:


Eingabe:
<?PHP
$result = dns_get_record("php.net");
print_r($result);
?>


Ausgabe:
Array
(
    [0] => Array
        (
            [host] => php.net
            [type] => MX
            [pri] => 5
            [target] => pair2.php.net
            [class] => IN
            [ttl] => 6765
        )

    [1] => Array
        (
            [host] => php.net
            [type] => A
            [ip] => 64.246.30.37
            [class] => IN
            [ttl] => 8125
        )

)

Beschreibung:
Version Beschreibung
5.4.0 Hinzugefügt raw-Parameter.
5.3.0 Diese Funktion ist jetzt auf Windows-Plattformen verfügbar.
5.3.0 Vor dieser Version, wenn die authns-Parameter gegeben wurde, die addtl Parameter wurde ebenfalls erforderlich.
dns_get_record() - Beispiel 2:


Eingabe:
Da es sehr häufig, um die IP-Adresse von einem Mail-Server wollen einmal der MX-Eintrag hat, behoben, dns_get_record () gibt ein Array auch in addtl die Gesellschafter Datensätze enthält. authns zurückgegeben als auch mit einer Liste der autoritativen Nameservern .

<?PHP
/* Request "ANY" record for php.net,
   and create $authns and $addtl arrays
   containing list of name servers and
   any additional records which go with
   them */
$result = dns_get_record("php.net", DNS_ANY, $authns, $addtl);
echo "Result = ";
print_r($result);
echo "Auth NS = ";
print_r($authns);
echo "Additional = ";
print_r($addtl);
?>


Ausgabe:
Result = Array
(
    [0] => Array
        (
            [host] => php.net
            [type] => MX
            [pri] => 5
            [target] => pair2.php.net
            [class] => IN
            [ttl] => 6765
        )

    [1] => Array
        (
            [host] => php.net
            [type] => A
            [ip] => 64.246.30.37
            [class] => IN
            [ttl] => 8125
        )

)
Auth NS = Array
(
    [0] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => remote1.easydns.com
            [class] => IN
            [ttl] => 10722
        )

    [1] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => remote2.easydns.com
            [class] => IN
            [ttl] => 10722
        )

    [2] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => ns1.easydns.com
            [class] => IN
            [ttl] => 10722
        )

    [3] => Array
        (
            [host] => php.net
            [type] => NS
            [target] => ns2.easydns.com
            [class] => IN
            [ttl] => 10722
        )

)
Additional = Array
(
    [0] => Array
        (
            [host] => pair2.php.net
            [type] => A
            [ip] => 216.92.131.5
            [class] => IN
            [ttl] => 6766
        )

    [1] => Array
        (
            [host] => remote1.easydns.com
            [type] => A
            [ip] => 64.39.29.212
            [class] => IN
            [ttl] => 100384
        )

    [2] => Array
        (
            [host] => remote2.easydns.com
            [type] => A
            [ip] => 212.100.224.80
            [class] => IN
            [ttl] => 81241
        )

    [3] => Array
        (
            [host] => ns1.easydns.com
            [type] => A
            [ip] => 216.220.40.243
            [class] => IN
            [ttl] => 81241
        )

    [4] => Array
        (
            [host] => ns2.easydns.com
            [type] => A
            [ip] => 216.220.40.244
            [class] => IN
            [ttl] => 81241
        )

)

Beschreibung:
Version Beschreibung
5.4.0 Hinzugefügt raw-Parameter.
5.3.0 Diese Funktion ist jetzt auf Windows-Plattformen verfügbar.
5.3.0 Vor dieser Version, wenn die authns-Parameter gegeben wurde, die addtl Parameter wurde ebenfalls erforderlich.
Netzwerk-Funktionen