小编dxr*_*dxr的帖子

如何判断 TCP 端口是否打开?

我正在尝试用 C 实现套接字编程。当我尝试从客户端连接到服务器 (Ubuntu) 时,它显示了一个类似“连接失败”的错误。

所以我认为问题出在端口上。我正在使用 5454/tcp 端口进行套接字编程。

如何知道 5454 端口是否正在侦听?如果不是,那么我可以使用哪些端口在 Ubuntu 中使用 C 进行 TCP 套接字编程?是仅端口问题还是我的代码有问题或 LINUX Ubuntu 中需要任何设置?

编辑: 代码片段:

  int socket_send;
   struct sockaddr_in address;
printf("\n Initialization Socket....");

socket_send = socket(AF_INET,SOCK_STREAM,0);
if(socket_send == -1)
{
    perror("\n Socket not created.Error:");
    return 1;
}
printf("\n Socket created");

address.sin_family=AF_INET;
address.sin_addr.s_addr=inet_addr(ip);
address.sin_port=htons(5454);

if(connect(socket_send,(struct sockaddr*)&address,sizeof(struct sockaddr))<0)
{
    perror("\nConnetion failed.Error:");
    return 1;
}
printf("\n Connected");

if(send(socket_send,(char*)buffer,size,flag)<0)
{
    perror("\nSending failed.Error:");
    return 1;
}
printf("\n Data successfully sent");
 close(socket_send);
Run Code Online (Sandbox Code Playgroud)

编辑:问题出在端口上,所以我刚刚重新安装了 Ubuntu,它正在运行。谢谢大家。

linux tcp socket

9
推荐指数
2
解决办法
4万
查看次数

标签 统计

linux ×1

socket ×1

tcp ×1