2010-01-25 29 views
0

我有一個帶有多個NIC和IP的多宿主系統。將JVM綁定到默認IP以外的IP

我不是%100確定我的Sun JVM如何選擇表示'this'系統的IP(當使用Socket或URLConnection連接到另一個系統時,這是「源IP」)。它是否會選擇系統默認NIC,或者它可能會對系統名稱進行反向查找?等等。

在任何情況下,有沒有一種方法可以將JVM顯式綁定到特定的IP?

或者,如果有人知道如何從Axis Webservices框架中做到這一點,那將非常有用。

非常感謝..

回答

4

它由操作系統而不是JVM完成。它使用路由表來確定哪個接口可以路由到您嘗試訪問的目標,然後使用它。

如果你有多個接口可以路由到給定的目的地,理論上你應該能夠選擇你要使用的源地址,但是我不知道你是否真的可以 - 也許在綁定之前綁定會做?但是,由於您無法訪問路由表,您如何確定哪些接口可以到達目的地?