Python SimpleXMLRPCServer服务器地址

3

我正在使用Python编写一个简单的RPC服务器,用于实验室内部网络。当我使用下面的代码创建服务器:

server = SimpleXMLRPCServer(("", 8000))

服务器似乎同时监听了多个可用接口(即本地主机和计算机的公共IP地址),这正是我想要的。
是否有一种简单且最好是可移植的方法,可以让我的服务器脚本确定它正在侦听哪些IP地址?
通常它会在随机Windows机器上运行,具有动态地址和已安装Python 2.6,并且当服务器启动时,如果我的服务器可以打印出某种“侦听地址1:端口地址2:端口...”消息将会很有帮助。我已经看到了其他与获取客户端地址相关的问题,但我正在寻找服务器地址。
1个回答

1
import socket
print([(s.connect(('8.8.8.8', 80)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1])

我发现这个页面有几种其他有用的方法:使用Python标准库查找本地IP地址

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接