все Python 3socketфункция
socket.gethostbyname_ex()
имена и адреса
Расширенный gethostbyname: возвращает (основное имя, псевдонимы, все IPv4-адреса хоста).
Синтаксис
hostname, aliases, addresses = socket.gethostbyname_ex(hostname)
Нужен, когда у имени несколько адресов (балансировка через DNS): gethostbyname вернёт лишь один из них. Ограничение то же — только IPv4, IPv6-адреса в список не попадают. Порядок адресов задаёт DNS-сервер и может меняться от запроса к запросу, так что брать всегда [0] — не то же самое, что «главный адрес».
Примеры
import socket
print(socket.gethostbyname_ex('127.0.0.1')) # → ('127.0.0.1', [], ['127.0.0.1'])
name, aliases, addresses = socket.gethostbyname_ex('localhost')
print(addresses) # → ? ['127.0.0.1']
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности