我有一個使用JDBC驅動程序連接到數據庫的Java應用程序。它恰好是一個Postgres實例,但如果它存在,我正在尋找一個通用解決方案。我可以爲JDBC連接指定*源* IP地址嗎?
運行應用程序的服務器有多個IP地址,全部在同一個子網中。 JDBC連接使用服務器的「主」IP來建立。
我可以play with Linux networking stack與數據庫的傳出連接使用輔助IP地址。
有沒有辦法以編程方式指定源IP地址將用於我的JDBC連接?
語境:我們要在不接觸數據庫,其中有規則限制IP地址,將接受來自連接移動應用程序。
我看到的唯一一個黑客會做一個SSL連接,並返回一個新的套接字綁定到從IP地址從自定義SSLSocketFactory。
有一個'ClientHostname'屬性設定通過'java.sql.Connection.setClientInfo()',那不是做在某些情況下把戲? – Aaron
值得一看@Aaron,但我恐怕這是爲了幫助數據庫做它的事情,而不是幫助我達成目標。我需要用防火牆玩技巧,而不是數據庫。 – ixe013
是的,這絕對只是JDBC元數據,我非常懷疑它會改變網絡層面的一件事情。 – Aaron