是否有一種簡單的方法來指定xml-rpc客戶端連接應該源自的源端口範圍?python xmlrpc.client.ServerProxy - 如何指定本地端口範圍
假設客戶端和xml-rpc服務器之間有一個防火牆,它僅將流量從特定套接字(由IP和端口範圍定義)傳遞到服務器。
默認情況下,xmlrpc.client.ServerProxy
允許操作系統決定使用哪個本地端口。因此,每個xml-rpc調用都將打開與源自它自己的套接字的服務器的連接,該套接字將保持TIME_WAIT狀態,直到超時過期。在Windows netstat -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
我想實現的是一個可配置的範圍端口(15XX從上面的例子)調用服務器上的RPC方法時xmlrpc.client.ServerProxy
會使用。
謝謝,但問題不在於篩選netstat輸出;這是關於配置ServerProxy對象,以便在與xml-rpc服務器通信時使用配置的本地端口範圍。可能一個自定義傳輸必須用重寫的socket.bind()函數來定義,但我希望有人已經實現了這樣的選項。 –