gpt4 book ai didi

无法将 TCP 套接字绑定(bind)到本地 IP

转载 作者:太空宇宙 更新时间:2023-11-04 02:04:07 25 4
gpt4 key购买 nike

我的服务器程序可以很好地绑定(bind)到 0.0.0.0 (INADDR_ANY) 或 127.0.0.1 (INADDR_LOOPBACK),但是我希望程序监听我的本地网络 IP (192.168.1.24),但我不断收到此错误:

打开监听端口 8888 时出错(原始 TCP 输出):无法分配请求的地址

相关代码如下:

#define LOCAL_IP ((unsigned long int) 0x1801A8C8) //192.168.1.24
#define PORT 8888

struct sockaddr_in sa;

sa.sin_family = AF_INET;
sa.sin_port = htons(PORT);
sa.sin_addr.s_addr = LOCAL_IP; /* Bind servers to local net*/
//sa.sin_addr.s_addr = htonl(INADDR_ANY);

我也试过 htonl(LOCAL_IP) 和 inet_addr("192.168.1.24") 但没有成功。

最佳答案

您使用的IP是:200.168.1.24

使用:

sa.sin_addr.s_addr = inet_addr("192.168.1.24");

相反。
确保该端口尚未被使用。 (使用程序 netstat)您是否在之前的测试中正确关闭了套接字?

关于无法将 TCP 套接字绑定(bind)到本地 IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22761414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com