linux怎么检测网络,急linux中怎么检测TCP网络连接是否正常?

C/C++ code#include

#include

#include

#include

#include

#include

#include

#include

#define SERVPORT 3333 /*服务器监听端口号 */

#define BACKLOG 10 /* 最大同时连接请求数 */

main()

{

int sin_size=0;

unsigned int sockfd,client_fd; /*sock_fd:监听socket;client_fd:数据传输socket */

struct sockaddr_in my_addr; /* 本机地址信息 */

struct sockaddr_in remote_addr; /* 客户端地址信息 */

if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) {

perror("socket创建出错!"); exit(1);

}

my_addr.sin_family=AF_INET;

my_addr.sin_port=htons(SERVPORT);

my_addr.sin_addr.s_addr = INADDR_ANY;

memset(&my_addr, 0, sizeof(my_addr));

if (bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == -1) {

perror("bind出错!");

return 0;

}

if (listen(sockfd, BACKLOG) == -1) {

perror("listen出错!");

return 0;

}

while(1) {

sin_size = sizeof(struct sockaddr_in);

if ((client_fd = accept(sockfd, (struct sockaddr *)&remote_addr, &sin_size)) == -1) {

perror("accept出错");

continue;

}

printf("received a connection from %s\n", (char *)inet_ntoa(remote_addr.sin_addr));

if (!fork()) { /* 子进程代码段 */

if (send(client_fd, "Hello, you are connected!\n", 26, 0) == -1)

perror("send出错!");

close(client_fd);

return 0;

}

close(client_fd);

}

}

------解决方案--------------------探讨

引用:

C/C++ code#include

#include

#include

#include

#include

#include

#include

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值