Python Glossary English

все Python 3socketфункция

socket.gethostbyaddr()

имена и адреса

Обратное разрешение: по IP-адресу возвращает (имя, список псевдонимов, список адресов).

Синтаксис

hostname, aliases, addresses = socket.gethostbyaddr(ip_address)

Работает и для IPv4, и для IPv6, но идёт в DNS и при недоступном сервере ждёт секунды. У большинства адресов обратной записи нет — тогда поднимается socket.herror, а не возвращается пустой результат. Результат зависит от /etc/hosts и DNS, поэтому в тестах на него не полагаются. Если адрес нужен лишь в числовом виде, лучше getnameinfo() с NI_NUMERICHOST — он в сеть не ходит.

Примеры

import socket
name, aliases, addresses = socket.gethostbyaddr('127.0.0.1')
print(name)  # → ? localhost
print(addresses)  # → ? ['127.0.0.1']

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности