1
http://docs.oracle.com/javase/tutorial/networking/nifs/definition.html 說:「當您創建套接字並將其綁定到該地址時,系統將使用關聯的接口」。我試圖在Linux和Android系統上的頁面上做這個例子,但是兩者都不起作用。綁定的IP地址設置爲IP報頭上的源IP地址,但發送接口不會更改。很多人在堆棧溢出中提到URL。它真的工作嗎?Socket.bind的首選網絡接口
如果你有例如你是做什麼2個NIC,並且您想要將特定NIC上的兩個不同應用程序的接口中的每一個綁定到因爲一個用於連接遠程數據庫,另一個用於連接客戶端? – Cratylus
Linux並不真的支持這一點。對於出去的數據包,你無法控制。對於傳入連接,您可以做的最好的做法是爲客戶端提供與數據庫使用的IP地址不同的IP地址。 –
過去我做的一件事就是讓數據庫通過自己的網絡連接起來(實際上一根電纜直接連接到每臺機器的後面,沒有交換機)因爲這使用了一個具有不同IP地址的獨立網絡,所以Linux別無選擇,使用給定的IP地址。但是,如果Linux可以找到兩種方法來獲取IP地址,則無法控制它使用哪一個。 –