python socket bind 可以指定IP, 但如果socket.bind(("192.168.22.112",8099)), 这样的话,127.0.0.1:8099, 或者localhost:8099都无法访问,
bash-3.2# telnet 127.0.0.1 8099
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
bind 0.0.0.0就可以绑定这机器上的所有IP
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind(("0.0.0.0",8099))
s.listen(5)
bash-3.2# telnet 127.0.0.1 8099
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
^P^Z
本文探讨了Python中使用socket.bind()时遇到的IP绑定冲突问题,详细解释了如何通过绑定0.0.0.0来解决127.0.0.1和localhost无法访问的问题,并提供了相关代码示例。

881

被折叠的 条评论
为什么被折叠?



