有没有一种简单的方法来指定 xml-rpc 客户端连接应该来自的源端口范围?
假设在客户端和 xml-rpc 服务器之间有一个防火墙,它只从特定的套接字(由 IP 和端口范围定义)将流量传递到服务器。
默认情况下,xmlrpc.client.ServerProxy
让操作系统决定使用哪个本地端口。结果,每个 xml-rpc 调用都会打开与服务器的连接,该连接源自其自己的套接字,该套接字保持 TIME_WAIT 状态,直到超时到期。在 windowsnetstat -b
上显示这样的连接:
C:\tmp>netstat -b | grep 51000
TCP ZIBI:51000 localhost:1552 TIME_WAIT 0
TCP ZIBI:51000 localhost:1562 TIME_WAIT 0
TCP ZIBI:51000 localhost:1561 TIME_WAIT 0
TCP ZIBI:51000 localhost:1553 TIME_WAIT 0
TCP ZIBI:51000 localhost:1559 TIME_WAIT 0
TCP ZIBI:51000 localhost:1558 TIME_WAIT 0
TCP ZIBI:51000 localhost:1557 TIME_WAIT 0
我想要实现的是xmlrpc.client.ServerProxy
在服务器上调用 rpc 方法时将使用的端口(上例中的 15XX)的可配置范围。