我已經把21埠改掉了,而且也都NAT也對應了 但就是會出現以下訊息↓ 『伺服器以無法路由的 IP Address 送出了被動式回應. 改為使用伺服器 IP Address』 能否告訴我是哪裡做錯了?有限定埠號範圍嗎?如果回復成21就可以正常連線
因為 ftp 不是一個單純的協定, 傳輸資料使用的 port 會在執行時決定, 所以 NAT 的機器必須一直監看用來傳送指令與回應的那個 port (也就是 21), 才會幫你後續的資料 port 做 NAT 處理.也就是 NAT 的機器必須支援你所使用非標準的 ftp port 才可以.如同在 linux 下頭, 使用 ip_nat_ftp 模組時要加上 ports 參數去指定才可以.
與你的 NAT 設備有關. 改了不能用或找不到有設定的地方, 應該就是不支援吧.如果一定要用, 強迫 ftpd 只使用某個範圍的 port, 然後把那些 port 都在 NAT 上頭對應到你的 ftp 機器吧.