LINUX 网络编程 connect error: network is unreachable

lijie1987 2010-04-09 11:32:25
SOCKET 程序,编译通过,运行时提示connect error: network is unreachable,代码如下:


if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1){
perror("socket error");
exit(1);
}
serv_addr.sin_family=AF_INET;
serv_addr.sin_port=htons(POP3SERVPORT);

serv_addr.sin_addr.s_addr = inet_addr("123.125.50.29");
bzero(&(serv_addr.sin_zero),8);
if (connect(sockfd, (struct sockaddr *)&serv_addr,sizeof(struct sockaddr))==-1){
perror("connect error");
}
。。。。。。
...全文
1258 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wind_Runner 2010-04-10
  • 打赏
  • 举报
回复
http://linux.chinaunix.net/bbs/thread-630039-1-1.html

楼主可以参考一下这个帖子,看看IP有没有配置对。

你的是不是多宿主机啊?
lijie1987 2010-04-10
  • 打赏
  • 举报
回复
如果是网络的配置问题,为什么在终端里能ping通,telnet也可以
ecsape 2010-04-09
  • 打赏
  • 举报
回复
主机网络是否好的?还有123.125.50.29服务器上的监听程序端开了没?
Wind_Runner 2010-04-09
  • 打赏
  • 举报
回复
这个错误一般是网络设置错误,

如果对端的端口没有进程监听,回是另一个错误
快乐田伯光 2010-04-09
  • 打赏
  • 举报
回复
应该是先bzero,然后再赋值吧。
[Quote=引用楼主 lijie1987 的回复:]
SOCKET 程序,编译通过,运行时提示connect error: network is unreachable,代码如下:


if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1){
perror("socket error");
exit(1);
}
serv_addr.sin_family=AF_INET;
serv_a……
[/Quote]
lijie1987 2010-04-09
  • 打赏
  • 举报
回复
主机网络是好的,123.125.50.29服务器是163邮箱,路由设置也是好的,说明一下在终端里ping 123.125.50.29能通
快乐田伯光 2010-04-09
  • 打赏
  • 举报
回复
route查一下你当前的路由设置

23,217

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧