Serveur d'impression

PHP get DNS Nameserver, Cname, MX, A records d'un domaine – BinaryTides – Bien choisir son serveur d impression

Par Titanfall , le 19 octobre 2019 - 3 minutes de lecture

PHP a une fonction utile appelée dns_get_record qui permet d’obtenir très facilement différents types d’enregistrements pour un domaine donné.


Nameserver – NS Records:

$ php -a
Shell interactif

php> print_r (dns_get_record ('www.binarytides.com', DNS_NS));
Tableau
(
    [0] => Tableau
        (
            [host] => binarytides.com
            [type] => NS
            [target] => omikro1.allwebserver.com
            [class] => IN
            [ttl] => 86140
        )

    [1] => Tableau
        (
            [host] => binarytides.com
            [type] => NS
            [target] => omikro2.allwebserver.com
            [class] => IN
            [ttl] => 86140
        )

)
php>

Un enregistrement – adresse IP:

php> print_r (dns_get_record ('www.binarytides.com', DNS_A));
Tableau
(
    [0] => Tableau
        (
            [host] => binarytides.com
            [type] => A
            [ip] => 64.131.72.23
            [class] => IN
            [ttl] => 14046
        )

)
php>

Une autre méthode simple pour obtenir l’enregistrement A ou l’adresse IP d’un nom de domaine consiste à utiliser la fonction gethostbyname:

php> print_r (gethostbyname ('www.binarytides.com'));
64.131.72.23
php>

Une autre méthode, gethostbynamel, donnerait un tableau d'adresses IP:

php> print_r (gethostbynamel ('www.google.com'));
Tableau
(
    [0] => 74.125.71.147
    [1] => 74.125.71.99
    [2] => 74.125.71.104
    [3] => 74.125.71.106
    [4] => 74.125.71.105
    [5] => 74.125.71.103
)
php>

Enregistrement MX – Serveur mail:

Les enregistrements MX donnent le serveur de messagerie pour un domaine donné. Ces serveurs de messagerie peuvent être utilisés pour envoyer des courriers à un certain courrier sur ce domaine, par exemple. [email protected]

php> print_r (dns_get_record ('www.binarytides.com', DNS_MX));
Tableau
(
    [0] => Tableau
        (
            [host] => binarytides.com
            [type] => MX
            [pri] => 0
            [target] => binarytides.com
            [class] => IN
            [ttl] => 14400
        )

)
php>

Pour les enregistrements MX, il existe une fonction alternative appelée getmxrr, qui peut être utilisée comme ceci:

php> getmxrr ('www.binarytides.com', $ mxhosts);
php> print_r ($ mxhosts);
Tableau
(
    [0] => binarytides.com
)
php>

Il retourne un tableau de mxhosts pour un nom d'hôte / domaine donné.

CNAME Records – Alias ​​Canonical:

php> print_r (dns_get_record ('www.binarytides.com', DNS_CNAME));
Tableau
(
    [0] => Tableau
        (
            [host] => www.binarytides.com
            [type] => CNAME
            [target] => binarytides.com
            [class] => IN
            [ttl] => 13932
        )

)
php>

Avec l'option DNS_ALL, vous pouvez obtenir toutes les informations ci-dessus en même temps:

php> print_r (dns_get_record ('www.binarytides.com', DNS_ALL));
Tableau
(
    [0] => Tableau
        (
            [host] => binarytides.com
            [type] => A
            [ip] => 64.131.72.23
            [class] => IN
            [ttl] => 14202
        )

    [1] => Tableau
        (
            [host] => binarytides.com
            [type] => NS
            [target] => omikro2.allwebserver.com
            [class] => IN
            [ttl] => 86344
        )

    [2] => Tableau
        (
            [host] => binarytides.com
            [type] => NS
            [target] => omikro1.allwebserver.com
            [class] => IN
            [ttl] => 86344
        )

    [3] => Tableau
        (
            [host] => www.binarytides.com
            [type] => CNAME
            [target] => binarytides.com
            [class] => IN
            [ttl] => 13800
        )

    [4] => Tableau
        (
            [host] => binarytides.com
            [type] => SOA
            [mname] => host1.allwebserver.com
            [rname] => omikrosys.gmail.com
            [serial] => 2011020202
            [refresh] => 86400
            [retry] => 7200
            [expire] => 3600000
            [minimum-ttl] => 86400
            [class] => IN
            [ttl] => 86344
        )

    [5] => Tableau
        (
            [host] => binarytides.com
            [type] => MX
            [pri] => 0
            [target] => binarytides.com
            [class] => IN
            [ttl] => 14199
        )

)
php>

Les autres options disponibles sont:
DNS_HINFO, DNS_PTR, DNS_SOA, DNS_TXT, DNS_AAAA, DNS_SRV, DNS_NAPTR, DNS_A6, DNS_ANY.

Références :

1. Manuel sur: http://php.net/manual/en/function.dns-get-record.php

Dernière mise à jour le: 27 mai 2013






Click to rate this post!
[Total: 0 Average: 0]

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.