Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 与任何人绑在一起_Linux_Sockets_Bind - Fatal编程技术网

Linux 与任何人绑在一起

Linux 与任何人绑在一起,linux,sockets,bind,Linux,Sockets,Bind,如果我将套接字绑定到INADDR_ANY,我知道它将接受服务器上配置的任何IP上的传入连接。假设在进行bind()调用时配置了1个IP,然后配置了一个新IP。是bind()还是只对调用bind()时存在的IP有效?在Linux上,当您绑定到INADDR\u ANY时,套接字将保持绑定到0.0.0,并将接受到任何本地IP地址的连接,无论该地址如何更改。只有在建立TCP连接时,单个连接才会绑定到它接收到的IP地址。任何地址上仍可能接收到其他连接。是,它将接受新创建或新配置接口上的连接 通过创建虚拟接

如果我将套接字绑定到INADDR_ANY,我知道它将接受服务器上配置的任何IP上的传入连接。假设在进行bind()调用时配置了1个IP,然后配置了一个新IP。是bind()还是只对调用bind()时存在的IP有效?

在Linux上,当您绑定到
INADDR\u ANY
时,套接字将保持绑定到
0.0.0
,并将接受到任何本地IP地址的连接,无论该地址如何更改。只有在建立TCP连接时,单个连接才会绑定到它接收到的IP地址。任何地址上仍可能接收到其他连接。

是,它将接受新创建或新配置接口上的连接

通过创建虚拟接口,您可以自己尝试:

/sbin/ifconfig dummy0 172.17.42.99 netmask 255.255.255.255

或者什么的;然后尝试连接到该IP。

您可以使用
netstat-l
进行检查-它应该为端口n上的侦听套接字打印0.0.0.0:n(或:对于ipv6为:n)。如果看到每个IP都有多个侦听套接字,则可能无法工作。