-
Trouver une machine à partir du nom par gethostbyname2 :
#include <netdb.h>
struct hostent *gethostbyname2(char *name,int type);
- En pratique le type type est AF_INET ou AF_INET6;
- Tout est dans la structure hostent :
struct hostent {
char *h_name; /* nom officiel */
char **h_aliases; /* liste des surnoms */
int h_addrtype; /* type de l'adressage */
int h_length; /* taille des adresses */
char **h_addr_list; /* liste des adresses */
};
#define h_addr h_addr_list[0]
- Trouver une machine à partir de l'adresse par gethostbyaddr :
#include <netdb.h>
struct hostent *gethostbyaddr(char *address,socklen_t length,int type);
- En pratique le type type est AF_INET ou AF_INET6;
- L'adresse address doit être en binaire ;
- L'adresse peut être obtenue par inet_pton :
#include <arpa/inet.h>
int inet_pton(int type,const char *string,void *address);