使用
0.0.0.0将仅绑定到启用IPv4的接口。但是,如果绑定到
::,则假定您的TCP /
IP堆栈(和Java)启用了IPv4兼容的IPv6套接字,则该协议应涵盖所有IPv4和IPv6接口。
您需要查看内核(或套接字库(如果在Windows上,则为套接字库))以获取“为什么”的解释。在我的OS X系统上,
man页面对此进行了说明。
从 man 4 inet`开始 :
可以使用本地地址创建套接字,
INADDR_ANY以对传入消息进行“通配符”匹配。在一个地址 连接(2) 或 SENDTO(2)
呼叫可被给定为INADDR_ANY指“该主机”。INADDR_BROADCAST如果配置的第一个网络支持广播,则将可分辨地址用作主网络上广播地址的简写。
来自 man 4 inet6 :
可以使用本地地址
::(等于IPv6 address0:0:0:0:0:0:0:0)创建套接字,以影响传入消息的“通配符”匹配。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)