为什么会提示Connection refused啊?
如果尝试ping 127.0.0.1的话则没有任何问题。
代码如下;
服务器端
#include "unp.h"
#include <time.h>
int main(int argc , char ** argv)
{
int listenfd , connfd;
struct sockaddr_in servaddr;
char buff[MAXLINE];
time_t ticks;
listenfd = socket(AF_INET , SOCK_STREAM , 0);
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
servaddr.sin_port = htons(13);
bind(listenfd , (SA *)&servaddr , sizeof(servaddr));
listen(listenfd , LISTENQ);
while(1)
{
connfd = accept(listenfd , (SA *)NULL , NULL);
ticks = time(NULL);
snprintf(buff , sizeof(buff) , "%.24s\r\n",ctime(&ticks));
write(connfd , buff , strlen(buff));
close(connfd);
}
return 0;
}
客户端:
#include "unp.h"
int main(int argc , char ** argv)
{
int sockfd , n;
char recvline[MAXLINE + 1];
struct sockaddr_in servaddr;
if(argc != 2)
{
err_quit("usage: a.out <IPaddress>");
}
if( (sockfd = socket(AF_INET , SOCK_STREAM , 0) ) < 0)
{
err_sys("socket error");
}
bzero(&servaddr , sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(13);
if(inet_pton(AF_INET , argv[1] , &servaddr.sin_addr) <= 0)
{
err_quit("inet_pton error for %s",argv[1]);
}
if(connect(sockfd , (SA*)&servaddr , sizeof(servaddr)) < 0)
{
err_sys("connect error");
}
while( ( n = read(sockfd , recvline , MAXLINE)) > 0)
{
recvline[n] = 0;
if(fputs(recvline , stdout) == EOF)
{
err_sys("fputs error");
}
}
if(n < 0)
{
err_sys("fputs error");
}
return 0;
}
相关推荐
putty connection refused问题
putty connection refused问题的定位解决,putty connection refused问题的定位解决
Java中Connection timed out和Connection refused的区别讲解
今天小编就为大家分享一篇关于Java中Connection timed out和Connection refused的区别讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
浅析Linux系统下安装wetty和使用说明
本篇文章主要给大家介绍linux系统下安装wetty和使用说明,以及linux tty命令学习总结,感兴趣的朋友跟着小编一起学习吧
解决vue net :ERR_CONNECTION_REFUSED报错问题
主要介绍了解决vue net :ERR_CONNECTION_REFUSED报错问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
【Python3 网络编程】ConnectionRefusedError: [Errno 111] Connection refused
在网络通信中,经常出现Connection Refused报错提示,不仅仅是socket编程,也有xshell连接时出现这种问题。在查阅资料后,把常见问题记入本文。 服务器拒绝,有几个可能性: 服务器没启动或未监听端口(用TCP工具连一下你的服务器,看下服务器是否正常监听端口。如果是Windows开发者也可以使用Windows的CMD命令行telnet测试下,格式是 telnet 地址 端口); 地址错误; 端口错误; 类型错误; 被防火墙拦截。 我觉得在Client请求连接的过程中被Refused是因为HA尚未抓到包并Recognized,导致HA的跳变真实套接字并没有被bind


