PHP/DNS/DNS Functions
Содержание
DNS Lookup Functions
Name Description
gethostbyname() Gets IP address corresponding to the hostname
gethostbynamel() Gets list of IP addresses corresponding to the hostname
gethostbyaddr() Gets hostname corresponding to an IP address
getmxrr() Fetches the mail exchange (MX) record associated with a hostname
dns_get_mx() Alias for getmxrr()
checkdnsrr() Checks for the existence of DNS records for a hostname
dns_check_record() Alias for checkdnsrr()
dns_get_record() Fetches DNS records associated with a hostname
<?php
$ip = gethostbyname("www.example.ru");
echo "IP = $ip\n";
$host = gethostbyaddr("192.0.34.166");
echo "Host = $host\n";
$ip = gethostbynamel("yahoo.ru");
print_r($ip);
?>
DNS Record Types and Their Meanings
A Address code, used for storing an IP address associated with the domain
MX Mail exchange, the domain name used for sending and receiving mail
NS The authoritative name server
SOA Start of Authority
PTR Domain name pointer
CNAME Canonical name for a DNS alias
AAAA Address code used for IPv6 Addresses
ANY Any of the above
Fetches DNS records associated with a hostname
<?php
$record = dns_get_record("php.net");
print_r($record);
?>
Performing DNS Lookups
gethostbyname() gets IP address corresponding to the hostname
gethostbynamel() gets list of IP addresses corresponding to the hostname
gethostbyaddr() gets hostname corresponding to an IP address
getmxrr() fetches the mail exchange (MX) record associated with a hostname
dns_get_mx() alias for getmxrr()
checkdnsrr() checks for the existence of DNS records for a hostname
dns_check_record() alias for checkdnsrr()
dns_get_record() fetches DNS records associated with a hostname
<?php
$ip = gethostbyname ( "www.wbex.ru" );
echo "IP = $ip\n";
$host = gethostbyaddr ( "192.0.34.166" );
echo "Host = $host\n";
$ip = gethostbynamel ( "yahoo.ru" );
print_r ( $ip );
?>
Using the dns_check_record() Function
<?php
$hostname = "google.ru";
if(dns_check_record($hostname, "NS")) {
echo "An authoritative name server exists.\n";
} else {
echo "No name server was found for this domain\n";
}
?>