import socket socket.gethostbyname_ex(hostname)
hostname
- имя хоста/домена.Функция gethostbyname_ex()
модуля socket
преобразует имя хоста/домена в формат адреса IPv4, расширенный интерфейс.
Функция socket.gethostbyname_ex()
возвращает тройной кортеж (hostname, aliaslist, ipaddrlist)
, где
hostname
- это имя основного хоста, отвечающее на данный ip_address
, aliaslist
- это (возможно, пустой) список альтернативных имен хостов для того же адреса, ipaddrlist
- это список IPv4-адресов, которые использует интерфейс этого хоста/домена (часто, но не всегда, один адрес). Функция не поддерживает разрешение имен IPv6, для поддержки двойного стека IPv4/v6 следует использовать функцию socket.getaddrinfo()
.
Вызывает событие аудита socket.gethostbyname
с аргументом hostname
.
>>> import socket >>> socket.gethostbyname_ex('google.com') # ('google.com', [], [ # '64.233.165.113', # '64.233.165.102', # '64.233.165.139', # '64.233.165.101', # '64.233.165.138', # '64.233.165.100' # ] # ) >>> socket.gethostbyname_ex('google.ru') # ('google.ru', [], ['173.194.222.94']) >>> socket.gethostbyname_ex('yandex.ru') # ('yandex.ru', [], ['77.88.55.80', # '5.255.255.88', # '5.255.255.80', # '77.88.55.88' # ] # ) >>> socket.gethostbyname_ex('dns.yandex') # ('dns.yandex', [], ['77.88.8.8']) >>> socket.gethostbyname_ex('dns.google') # ('dns.google', [], ['8.8.8.8', '8.8.4.4'])