Die Funktion gethostbyname() bleibt unverändert, wie auch die hostent-Struktur zu der die Funktion einen Zeiger zurückliefert. Bestehende Anwendungen bekommen beim Aufruf dieser Funktion weiterhin IPv4-Adressen (also A-Records, falls das DNS gefragt wird) zurückgeliefert. Zwei Änderungen erlauben die Unterstützung von IPv6-Adressen:
struct hostent *gethostbyname2(const char *name , int af );Der neu hinzugekommene Parameter af bezeichnet die gewünschte Adreßfamilie AF_INET oder AF_INET6.
res_init(); _res.options |= RES_USE_INET6;gesetzt werden kann.
Ist die Option RES_USE_INET6 gesetzt, werden immer 128-Bit-Adressen zurückgeliefert, wenn nötig IPv6-mapped IPv4-Adressen.
Ist die Option RES_USE_INET6 gesetzt, wird auch bei Aufruf der gethostbyname()-Funktion zuerst nach einem AAAA-Record gesucht, danach nach einem A-Record.
Kann eine Applikation keine 128-Bit-Adressen verarbeiten, darf diese Option nicht aktiviert werden.