咨询热线:4006-75-4006
售前:9:00-23:30 备案:9:00-18:00 技术:7*24h
gethostbyname();
用法也很简单
1
$ip = gethostbyname($yuming);
这样就可以直接过去对应域名下的服务器IP地址了。
分类:
函数定义:struct hostent *gethostbyname(const char *name)
函数说明:gethostbyname()会返回一个hostent结构,参数name可以为一个主机名或IPv4/IPv6的IP地址。
hostent结构说明如下:
struct hostent{
char *h_name; /*正式的主机名称*/
char **h_aliases; /* 指向主机名称的其他别名 */
int h_addrtype; /* 地址的型态, 通常是AF_INET */
int h_length; /*地址的长度*/
char **h_addr_list; /* 从域名服务器取得该主机的所有地址 */
};
返回值 :成功返回hostent结构指针,失败则返回NULL指针, 错误原因存于h_errno变量中
错误代码:
HOST_NOT_FOUND 找不到指定的主机
NO_ADDRESS 该主机有名称却无IP地址
NO_RECOVERY 域名服务器有错误发生
TRY_AGAIN 请再调用一次
实例:
{
char IP[32];
in_addr addr;
char szHostName[]="www.landui.com";
struct hostent *pHost;
pHost=gethostbyname(szHostName);
memcpy(&addr.s_un.s_addr,pHost->h_addr_list[0],pHost->h_length);
IP=inet_ntoa(addr);
}