bind failed: Address already in use

添加代码

这是个很常见的问题:在bind函数之前添加如下代码即可。

cpp 复制代码
    int yes = 1;  
    if (setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(int)) == -1) {  
        perror("setsockopt");  
        exit(1);  
    } 

查看端口

如果还是不能结果,那么说明是真的冲突了,例如查看当前UDP ipv4使用的端口号,如下所示:如果发现端口已被使用,则kill掉相关进程,或者使用其他的端口号

netstat -a4un //查看UDP端口

netstat -a4tn //查看TCP端口

bash 复制代码
$ netstat -a4un
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
udp        0      0 0.0.0.0:37745           0.0.0.0:*
udp        0      0 0.0.0.0:5353            0.0.0.0:*
udp        0      0 0.0.0.0:55408           0.0.0.0:*
udp        0      0 0.0.0.0:48385           0.0.0.0:*
udp        0      0 127.0.0.53:53           0.0.0.0:*
udp        0      0 0.0.0.0:69              0.0.0.0:*
udp        0      0 0.0.0.0:111             0.0.0.0:*
udp        0      0 0.0.0.0:620             0.0.0.0:*
udp        0      0 0.0.0.0:631             0.0.0.0:*
udp        0      0 0.0.0.0:59068           0.0.0.0:*
udp        0      0 192.168.0.11:9990       192.168.0.3:37143       ESTABLISHED
udp        0      0 0.0.0.0:42876           0.0.0.0:*
udp        0      0 0.0.0.0:2049            0.0.0.0:*
bash 复制代码
$ netstat -a4tn
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:6011          0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:6012          0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:6013          0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:56063           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:37699           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:37195           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:48533           0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN
tcp        0      0 192.168.0.11:22         192.168.0.5:60730       ESTABLISHED
tcp        0      0 192.168.0.11:2049       192.168.0.3:730         ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:57805       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:53147       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:57305       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:54349       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:53241       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:60727       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:57306       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:56891       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:54348       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:56892       ESTABLISHED
tcp        0      0 192.168.0.11:22         192.168.0.5:57405       ESTABLISHE

小结

相关推荐
赖small强32 分钟前
【Linux驱动开发】Linux SDIO 底层原理与实现细节详解
linux·驱动开发·sdio
晨非辰35 分钟前
【数据结构初阶系列】归并排序全透视:从算法原理全分析到源码实战应用
运维·c语言·数据结构·c++·人工智能·python·深度学习
llxxyy卢3 小时前
通关upload-labs(14-21)加分析源码
linux·运维·服务器
JosieBook4 小时前
【Rust】基于Rust 设计开发nginx运行日志高效分析工具
服务器·网络·rust
e***98574 小时前
Nginx搭建负载均衡
运维·nginx·负载均衡
电话交换机IPPBX-3CX5 小时前
电话交换机IPPBX-3CX的呼叫记录导出
运维·服务器·网络
松涛和鸣5 小时前
11.C 语言学习:递归、宏定义、预处理、汉诺塔、Fibonacci 等
linux·c语言·开发语言·学习·算法·排序算法
C-DHEnry7 小时前
Linux 不小心挂载错磁盘导致无法启动系统咋办
linux·运维·服务器·雨云
JosieBook7 小时前
【若依框架】若依前后端分离项目怎么部署到服务器?
运维·服务器
q***7487 小时前
Nginx环境安装
运维·nginx