当前位置: 技术问答>linux和unix
gethostbyname所得ip不能使用
来源: 互联网 发布时间:2016-12-12
本文导语: 一个程序根据域名连接服务器。 其中my**()是我自己封装的方法,经测试没有问题。 但是所得的ip,不能ping,ie也不可以使用。 #include #include #include #include #include #include #include "mySocket.h" int main() { int se...
一个程序根据域名连接服务器。
其中my**()是我自己封装的方法,经测试没有问题。
但是所得的ip,不能ping,ie也不可以使用。
#include
#include
#include
#include
#include
#include
#include "mySocket.h"
int main()
{
int serverPort = 80;
ClientSocket clientSocket;
char *msg;
struct hostent *hptr;
char *hName = "www.baidu.com";
hptr = gethostbyname(hName);
printf("Get the hostn");
printf("Host name: %sn",hptr->h_name);
printf("Host address: %sn",inet_ntoa(* ((struct in_addr *)hptr->h_addr_list)));
clientSocket.myCreat();
msg = inet_ntoa(* ((struct in_addr *)hptr->h_addr_list));
printf("Server Address %sn",msg);
clientSocket.myConnect(msg, serverPort);
close(clientSocket.getSock());
printf("communication endn");
}
其中my**()是我自己封装的方法,经测试没有问题。
但是所得的ip,不能ping,ie也不可以使用。
#include
#include
#include
#include
#include
#include
#include "mySocket.h"
int main()
{
int serverPort = 80;
ClientSocket clientSocket;
char *msg;
struct hostent *hptr;
char *hName = "www.baidu.com";
hptr = gethostbyname(hName);
printf("Get the hostn");
printf("Host name: %sn",hptr->h_name);
printf("Host address: %sn",inet_ntoa(* ((struct in_addr *)hptr->h_addr_list)));
clientSocket.myCreat();
msg = inet_ntoa(* ((struct in_addr *)hptr->h_addr_list));
printf("Server Address %sn",msg);
clientSocket.myConnect(msg, serverPort);
close(clientSocket.getSock());
printf("communication endn");
}
|
试试hptr->h_addr