关于网友提出的“ 偶的一个检测端口的代码。。运行时,,任意IP(不存在)的25端口都能连接上。。请教错误原因。。”问题疑问,本网通过在网上对“ 偶的一个检测端口的代码。。运行时,,任意IP(不存在)的25端口都能连接上。。请教错误原因。。”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 偶的一个检测端口的代码。。运行时,,任意IP(不存在)的25端口都能连接上。。请教错误原因。。
描述: n_port = 25;
remote_sock.sin_port = htons(n_port);
sock_id = socket(AF_INET, SOCK_STREAM, 0);
if(sock_id < 0)
{
perror("\nsocket");
exit(2);
}
/* 连接到主机上 */
rtn_err = connect(sock_id, (struct sockaddr *)&remote_sock, sizeof(remote_sock));
/* 如果连接成功就输出端口 */
if(rtn_err < 0){
fflush(stdout);
}
else
{
printf("%s:%d accepted.\n", argv[1], n_port);
/* 关闭输出、输入连接 */
if(shutdown(sock_id, 2) < 0)
{
perror("\nshutdown");
exit(2);
}
}
/* 关闭套接字。如果不关闭套接字或将这句放到循环外的话,会因为打开太多的套接字而操作失败。*/
closesocket(sock_id);
以上介绍了“ 偶的一个检测端口的代码。。运行时,,任意IP(不存在)的25端口都能连接上。。请教错误原因。。”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3196288.html