网站种类有哪些义乌联合外发加工网
web/
2025/9/27 12:57:48/
文章来源:
网站种类有哪些,义乌联合外发加工网,淘宝联盟自己做网站,做返利网站能赚钱的利用域名获取IP
gethostbyname()
(该函数在Linux手册中已经被标注[[deprecated]]#xff0c;不建议再使用。)
#include netdb.hstruct hostent* gethostbyname(const char* hostname);入参是域名字符串#xff0c;返回值中存储了对应的IP地址。
struct hostent
{…利用域名获取IP
gethostbyname()
(该函数在Linux手册中已经被标注[[deprecated]]不建议再使用。)
#include netdb.hstruct hostent* gethostbyname(const char* hostname);入参是域名字符串返回值中存储了对应的IP地址。
struct hostent
{char *h_name; /* Official name of host. */char **h_aliases; /* Alias list. */int h_addrtype; /* Host address type. */int h_length; /* Length of address. */char **h_addr_list; /* List of addresses from name server. */
}除了返回IP信息外还带有其他信息。 域名转IP只需要关注h_addr_list。
h_name 存有官方域名。官方域名代表某一主页但实际上一些著名公司的域名并未用官方域名注册。h_aliases 可以通过多个域名访问同一主页。同一IP可以绑定多个域名因此除官方域名外还可指定其他域名。这些信息存在h_aliases中。h_addrtype gethostname()支持IPV4和IPV6。通过此变量获取保存在h_addr_list的IP地址信息如果是IPV4则该变量存有AF_INET。h_length 保存的IP地址长度。IPV4是4字节IPV6是16字节。h_addr_list 以点分十进制保存域名对应的IP地址。
Example
#include netdb.h
#include stdio.h
#include sys/socket.h
#include arpa/inet.h
#include netinet/in.hint main(int argc, char **argv)
{int i;struct hostent *host;if (argc ! 2){printf(Usage: %s addr\n, argv[0]);return 0;}host gethostbyname(argv[1]);if (host NULL){perror(error());return -1;}printf(Official name: %s\n, host-h_name);for (int i 0; host-h_aliases[i]; i){printf(Aliases %d: %s\n, i 1, host-h_aliases[i]);}printf(Address type: %s\n, (host-h_addrtype AF_INET) ? AF_INET : AF_INET6);for( int i0;host-h_addr_list[i] ;i ){printf(IP addr %d: %s \n, i1, inet_ntoa(*(struct in_addr*)host-h_addr_list[i]));}
}参考书籍《TCP/IP网络编程》尹圣雨
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/82776.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!