Red de conocimiento informático - Material del sitio web - Cómo obtener la dirección IP a través del nombre de dominio usando solo lenguaje C

Cómo obtener la dirección IP a través del nombre de dominio usando solo lenguaje C

#include?//printf

#include?//memset

#include ?//for?exit(0);

#include

#include?//For?errno?-?the ?error?número

#include?//hostent

#include

int?hostname_to_ip(char ?*?,?char?*);

int?main(int?argc?,?char?*argv[])

{

si (argc?<2)

{

printf("¿Por favor?proporcione?un?nombre de host?para?resolver");

salir(1);

}

char?*hostname?=?argv[1];

char?ip[100]

hostname_to_ip( nombre de host?,?ip);

printf("%s?resolved?to?%s"?,?nombre de host?,?ip

printf("\n");

}

/*

Obtener?ip?de?dominio?nombre */

int?hostname_to_ip(char? *?hostname?,?char*?ip)

{

struct?hostent?*he;

struct?in_addr?**addr_list; p>

int?i;

if?(?(él?=?gethostbyname(?hostname?)?)?==?NULL)?

{

//?get?the?host?info

herror("gethostbyname");

return?1;

}

p>

addr_list?=?(struct?in_addr?**)?he->h_addr_list

for(i?=?0;?addr_list[i] ?!=?NULL;? i++)?

{

//Devolver?el?primero?

strcpy(ip?,?inet_ntoa( *addr_list[i])? );

retorno?0;

}

retorno?1;

}