Книга: UNIX: разработка сетевых приложений
11.4 Функция gethostbyaddr
11.4 Функция gethostbyaddr
Функция gethostbyaddr
получает в качестве аргумента двоичный IP-адрес и пытается найти имя узла, соответствующее этому адресу. Ее действие обратно действию функции gethostbyname
.
#include <netdb.h>
struct hostent *gethostbyaddr(const char *addr, size_t len, int family);
Возвращает: непустой указатель в случае успешного выполнения, -1 в случае ошибки
Эта функция возвращает указатель на ту же структуру hostent
, которую мы описывали при рассмотрении функции gethostbyname
. Обычно в этой структуре нас интересует поле h_name
, каноническое имя узла.
Аргумент addr
не относится к типу char*
, но в действительности это указатель на структуру in_addr
, содержащую адрес IPv4. Поле len
— это длина структуры: 4 для адресов IPv4. Аргумент family
будет иметь значение AF_INET
.
В терминах DNS функция gethostbyaddr
запрашивает у сервера имен запись типа PTR в домене in-addr.arpa
.
- 11.1. Введение
- 11.2. Система доменных имен
- 11.3. Функция gethostbyname
- 11.4 Функция gethostbyaddr
- 11.5. Функции getservbyname и getservbyport
- 11.6. Функция getaddrinfo
- 11.7. Функция gai_strerror
- 11.8. Функция freeaddrinfo
- 11.9. Функция getaddrinfo: IPv6
- 11.10. Функция getaddrinfo: примеры
- 11.11. Функция host_serv
- 11.12. Функция tcp_connect
- 11.13. Функция tcp_listen
- 11.14. Функция udp_client
- 11.15. Функция udp_connect
- 11.16. Функция udp_server
- 11.17. Функция getnameinfo
- 11.18. Функции, допускающие повторное вхождение
- 11.19. Функции gethostbyname_r и gethostbyaddr_r
- 11.20. Устаревшие функции поиска адресов IPv6
- 11.21. Другая информация о сетях
- 11.22. Резюме
- Упражнения
- 11.19. Функции gethostbyname_r и gethostbyaddr_r
- 11.3. Функция gethostbyname
- 2.1.3. Функция getopt_long()
- Группировка по встроенным функциям и UDF
- 19.1.1. Функция jQuery()
- Функция strcmp( )
- Управление функциями узла
- Функция программного обеспечения
- 3.2. Ключи типа key_t и функция ftok
- 9.10. Функция sctp_recvmsg
- Функция document
- Функция generate-id