FTPファイル送信時に、システム接続IPアドレスと異なるIPアドレスが使用されてしまう
Question
FTPを用いて、ファイルの受信を行っております。
今まではデータを受信する運用のみだったので、特に問題ありませんでした。ところが、こちらからデータを送信した場合に、相手先に届かない現象が発生しています。
システムで使用しているIPは、192.168.10.10というIPアドレスですが、FTPで送信時のログを確認したところ、なぜか192.168.10.20というIPアドレスが、ファイルを送信しているような記録がありました。
それぞれのシステム間では、FTPのために許可するIPアドレスを定めていて、192.168.10.20のIPアドレスから送信される原因がわからない為、相手先で許可するべきアドレスを192.168.10.20と定めてしまっていいのかわかりません。
稀に別のIPアドレスで送信していることもあるようなのですが、何が原因で別のIPアドレスが用いられているのでしょうか。
Answer
貴社のシステムはVirtual IPアドレスを用いたチーミングを行っていませんでしょうか。
システムの冗長化の為、チーミングを行う事は往々にございますが、今回のようにファイルの送受信時に制限を掛ける場合には注意が必要です。
上記参考の通り、チーミングとは仮想IPアドレスは1つ、実IPアドレスは2つ以上を用意し、表面上、仮想IPアドレスにアクセスすることで、優先順位に則って、実際には実IPアドレスで通信するという挙動をします。
今回のFTPの場合ですと、受信する際にはこの仮想IPアドレスに対して通信を要求されることで、何れかの実IPアドレスで受け取ることになります。この時、実際にファイルを送信しているのは、用意された実IP2つのうちのどちらかから、送信がなされます。
例えば今回、仮想:192.168.10.10、実:192.168.10.20 & 192.168.10.30が用意されていた場合には、受信であれば3つのIPアドレス何れでも受信できますが、送信するIPアドレスは、192.168.10.20もしくは192.168.10.30のどちらかということになります。
尚、このときどちらの実IPアドレスがFTPで用いられているかは、システムが自動的に決定しているようです。
解決方法は2つあります。
- Virtual IPアドレスの関連ローカルインターフェースを設定する。
- 相手先に送信の許可するIPアドレスを192.168.10.20 & 192.168.10.30とする。
今回の場合何れの方法でも解決することが出来るかと思います。
by 大熊猫橋