我在一所大學,在Univeristy網絡上設置了服務器。該網絡有內部IP地址(10. 。。)IP地址和外部IP地址(129.。。)。我有一個基於ColdFusion的業務流程,即從外部服務器獲取FTP的數據。FTP到內部網絡服務器的外部地址
ColdFusion實例所基於的服務器有多個(大約10個)與之關聯的IP地址,包括內部和外部。它有一個主要地址,直到最近,它一直是外部的。
使用Wireshark,我們已經能夠看到哪個IP被使用,並且它從來不是主要的,但除此之外,似乎沒有遵循任何邏輯。
我們最近將服務器的主IP更改爲內部地址,以符合新的大學安全策略,並且Coldfusion的FTP連接停止工作。使用Wireshark,我們已經確認它將在內部IP地址(而不是主要IP地址)上發送(10. 。。*)。
有沒有辦法通過系統配置或編程控制哪些IP ColdFusion用於FTP連接?
代碼爲FTP電話:
var ftpService= new ftp(
username = partnerConfig.sftpLogin,
connection = "MyConnection",
password = partnerConfig.sftpPw,
fingerprint = partnerConfig.sftpFingerprint,
server = partnerConfig.sftpServer,
secure = "yes"
);
var result=ftpService.open();
var result2=ftpService.listdir(directory = partnerConfig.inFolder, name="dirlist");
var result3=result2.getResult();
編輯:我的服務器的傢伙告訴我,這個大學是如何配置子網相當獨特。 10. *子網不允許防火牆例外。 「公共」知識產權不是默認公開的,只是那些能夠有例外的公共知識產權。
進一步解釋:歸結於規則和IP地址在大學設立的主要IT組織。 10.x.x.x IP絕不允許在大學之外訪問(「內部」)。 129.x.x.x IP,可能有防火牆例外(「外部」)。如果我輸入ipconfig(它是Windows),我會看到大約10個靜態IP地址,其中一半是10.x.x.x,其中一半是129.x.x.x.當機器的「主要」IP是129.x.x.x地址時,Coldfusion爲連接的外出IP選擇了其中一個OTHER 129.x.x.x地址。隨着「主」IP切換到10.x.x.x IP,ColdFusion將爲傳出連接選擇其中一個10.x.x.x地址。據我所知,我的選擇是1)將主服務器切換回服務器的129.x.x.x; 2)將站點移動到主服務器爲129.x.x.x的其他服務器,並使服務器上的其他站點符合新策略; 3)看看我能否弄清楚如何控制IP Coldfusion從服務器上的10個靜態IP中選擇的IP。
你得到什麼樣的錯誤信息?根據您最近的IP更改,可能會將FTP服務器配置爲偵聽不再有效的IP地址。 – imthepitts