1

bind () 错误:无法分配请求的地址。

new_socket=socket(AF_INET, SOCK_DGRAM, 0);

localIP = "128.1.1.64";

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

// Fill the socket structure
socket_data.sin_family      = AF_INET;
socket_data.sin_addr.s_addr = inet_addr(localIP);
socket_data.sin_port        = htons(PortNumber);

bind(new_socket, (struct sockaddr*) &socket_data, sizeof(socket_data))

有谁知道为什么 bind() 失败了?

4

2 回答 2

0

你有一个已经绑定到该地址/端口组合的套接字是我的猜测

于 2013-01-09T17:11:12.930 回答
0

我猜 128.1.1.64 是一个任意 IP,在您的任何网络接口中都不存在。如果要欺骗源IP,可能需要使用RAW_SOCKET。

于 2013-07-24T09:02:39.797 回答