在实现TCP/UDP编程的时候,服务端绑定的IP地址是点分十进制的,如124.222.215.205,如果提供的是域名,此时我们需要将域名转换成点分十进制的IP地址,这个过程就是 “ 域名解析 ”,实现域名转换的函数就是 gethostbyname。
目录
(2) 将主机结构体信息中的网络字节序IP转换成本地字节序IP
1、gethostbyname
gethostbyname 函数的作用是获取主机的相关信息,这里的相关信息就包含主机的IP地址。我们需要重点了解的是这个函数的返回值。

参数name:输入域名或者IP地址
返回值:失败返回NULL,同时 h_errno 会被设置,注意普通函数报错设置的是errno,gethostbyname 函数出错设置的是herror,我们可以通过 hstrerror 函数来获取h_errno对应的错误信息。
成功返回一个结构体,主机的IP地址就放在最后一个参数 h_addr_list 中,h_addr_list 中存放的IP地址是32位网络字节序的整数。
struct hostent {
char *h_name; /* official name of host */
char **h_aliases; /* alias list */
int h_addrtype; /* host a

本文介绍如何使用gethostbyname函数进行域名解析,并详细解释了该函数的使用方法及返回值,最后通过一个示例展示了如何将域名转换为IP地址。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



