CHECKDNSRR |
Vérifie l'enregistrement DNS |
---|---|
PHP 4.0+ |
Syntaxe
function checkdnsrr($host); |
function checkdnsrr($host,$type); |
Paramètres
Nom | Description | ||
---|---|---|---|
$host | Ce paramètre permet d'indiquer l'adresse IP de l'hôte | ||
$type | Ce paramètre permet d'indiquer le type d'enregistrement : | ||
Valeur | Nom | Description | |
"A" | Address | Cet enregistrement de DNS permet d'indiquer l'adresse du nom de domaine associé à une adresse IP de format IPv4. | |
"A6" | Address 6 | Cet enregistrement de DNS permet d'indiquer l'adresse du nom de domaine associé à une adresse IP de format IPv6. | |
"AAAA" | Address | Cet enregistrement de DNS permet d'indiquer l'adresse du nom de domaine associé à une adresse IP de format IPv6. | |
"CNAME" | Canonical Name | Cet enregistrement de DNS permet d'indiquer un alias pour pointer sur un autre nom. | |
"MX" | Mail Exchange | Cet enregistrement de DNS permet d'indiquer un identificateur à un serveur de courriel directement. C'est la valeur par défaut. | |
"NAPTR" | Name Authority Pointer record | Cet enregistrement de DNS permet d'indiquer la règle de réécriture de l'information. | |
"NS" | Name Servers | Cet enregistrement de DNS permet d'indiquer un enregistrement d'autorisation de serveurs DNS pour un domaine. | |
"PTR" | Pointer | Cet enregistrement de DNS permet d'indiquer les données permettant de renversé l'information contenu dans le DNS. | |
"SOA" | Start of Authority | Cet enregistrement de DNS permet d'indiquer le premier enregistrement d'une zone fichier. | |
"SRV" | Service | Cette enregistrement de DNS permet d'indiquer les services disponibles. | |
"TXT" | Text Record | Cette enregistrement de DNS permet d'indiquer un enregistrement pour n'importe quel type de documentation. |
Description
Cette fonction permet de résoudre l'enregistrement DNS d'une adresse IP spécifié afin de vérifier si celle-ci est valide.
Remarques
- ATTENTION ! Sous Windows, cette fonction n'est supporté qu'à partir de «PHP version 5.3.0».
- Objectif principal : La fonction checkdnsrr() permet de vérifier l'existence d'enregistrements DNS (Domain Name System) pour un nom de domaine spécifié. Elle permet de savoir si un domaine est correctement configuré dans le système DNS et si des enregistrements associés sont disponibles, comme les enregistrements de type A, MX, ou CNAME.
- Paramètres de la fonction : checkdnsrr() prend deux paramètres : le premier est le nom de domaine à vérifier (par exemple, example.com), et le second est optionnel. Il permet de spécifier le type d'enregistrement DNS à rechercher (par exemple, MX, A, CNAME,...). Si ce second paramètre est omis, la fonction vérifie tous les types d'enregistrements disponibles pour le domaine.
- Valeur de retour : La fonction retourne TRUE si des enregistrements DNS correspondants sont trouvés pour le domaine spécifié, et FALSE si aucun enregistrement n'est trouvé. Cela permet de tester rapidement la connectivité et la configuration DNS d'un domaine sans avoir à interroger manuellement les serveurs DNS.
- Utilisation pour la validation de domaines : checkdnsrr() est souvent utilisée dans des scénarios où il est nécessaire de valider la configuration DNS d'un domaine avant de procéder à certaines actions, comme l'envoi de courriels. Par exemple, avant de tenter d'envoyer un message à une adresse de domaine donné, il peut être utile de vérifier si ce domaine a des enregistrements MX (Mail Exchange) valides.
- Performance et limitations : Bien que cette fonction soit pratique, elle peut être relativement lente, car elle dépend des requêtes réseau aux serveurs DNS. Cela signifie que si vous effectuez plusieurs appels à checkdnsrr() pour différents domaines, cela peut entraîner des délais importants, en particulier si les serveurs DNS sont lents ou si le réseau est instable.
- Comportement en cas de serveur DNS non disponible : Si le serveur DNS est inaccessible ou si des problèmes de réseau surviennent, la fonction pourrait retourner FALSE même si le domaine existe et est correctement configuré. Cela signifie que des erreurs de connectivité peuvent entraîner des faux négatifs, rendant nécessaire la gestion d'erreurs ou la mise en place de mécanismes de reprise.
- Sécurité : L'utilisation de checkdnsrr() peut être utile pour valider des domaines dans des applications Web, comme lors de l'inscription ou de la vérification de l'existence d'un domaine avant de procéder à des actions de sécurité (exemple : vérifier l'existence d'un serveur de messagerie avant de valider une adresse de courriel). Toutefois, elle peut aussi être utilisée à des fins malveillantes pour interroger massivement des serveurs DNS, ce qui nécessite une prudence accrue sur des serveurs ouverts au public.
- Compatibilité avec les types d'enregistrements : En utilisant le second paramètre, checkdnsrr() permet de vérifier des types d'enregistrements spécifiques. Par exemple, en passant MX, vous pouvez vérifier si un domaine est configuré pour recevoir des courriels, ce qui est très utile dans les applications de validation d'adresses de courriel. Les autres types comme A (pour les enregistrements d'adresses IP) et CNAME (pour les alias) sont également supportés, ce qui permet une validation DNS ciblée.
Voir également
Langage de programmation - PHP - Référence de procédures et fonctions - GETMXRR
Couche d'application - DNS - Création d'un DNS en réseau local pour un site Web
Dernière mise à jour : Mercredi, le 25 mars 2015