您的位置:首页 > 运维架构 > Linux

主机条目结构

2016-01-28 22:00 726 查看
#include<stdio.h>
#include<errno.h>
#include<netdb.h>

int main(int argc,char *argv[])
{
char **pp;
struct in_addr addr;
struct hostent *hostp;

if(argc != 2)
{
fprintf(stderr,"usage:%s <domain name or dotted-decimal>\n",argv[0]);
exit(0);
}

if(inet_aton(argv[1],&addr) != 0)
{//通过ip来获取主机名
hostp = gethostbyaddr((const char *)&addr, sizeof addr,AF_INET);
}
else
{//通过域名获取主机名
hostp = gethostbyname(argv[1]);
}

printf("hostname=%s line=%d\n",hostp->h_name,__LINE__);

for(pp = hostp->h_aliases; *pp != NULL;pp++)
{
printf("alias: %s\n",*pp);
}

for(pp = hostp->h_addr_list;*pp != NULL;pp++)
{
addr.s_addr = ((struct in_addr *)*pp)->s_addr;
printf("address:%s\n",inet_ntoa(addr));
}
return 0;
}

host entry structure
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux unix