#include <netdb.h>
#include <arpa/inet.h>
int main ()
{
struct hostent *h;
char hostname[40]="publish.live2.bn.netease.com\0";
if((h=gethostbyname(hostname))==NULL)
{
fprintf(stderr,"不能得到IP\n");
exit(1);
}
printf("HostName :%s\n",h->h_name);
printf("IP Address :%s\n",inet_ntoa(*((struct in_addr *)h->h_addr)));
}
各种传输层建立socket链接是,根据URL解析出ip地址,如果URL没有带端口号,各种不同的传输层协议有不同的默认端口号。这样就可以根据ip地址,与url给出的端口号,或者协议默认的端口号,建立socket链接了。