Cisco IOS® ソフトウェア バージョン 11.3(3) と 11.2(13) では、非標準 File Transfer Protocol(FTP)ポート番号をサポートするために Network Address Translation(NAT)対応の機能が導入されました。初期の Cisco IOS ソフトウェア バージョンでは、NAT 対応ルータが NAT 変換する必要のある IP アドレスを持ったパケットを受け取り、標準 TCP ポート番号が FTP 制御接続(21)用である場合に、ルータはそのパケットを FTP パケットとして認識し、パケットのペイロード内で必要な変換を実行します。ただし、FTP サーバが非標準 FTP ポート番号を使用している場合には、NAT はパケットのペイロードを無視します。これは、FTP データ接続の確立を妨げることがあります。
標準外の FTP ポート番号の使用をサポートするためには、ip nat service コマンドを使用する必要があります。次の表は、このコマンドで使用可能なオプションをまとめたものです。
オプション | 定義 |
---|---|
list | グローバル アドレスを記述しているアクセス リストを指定する |
name | サーバ ローカル アドレスのアクセス リスト名 |
番号 | グローバル アドレスのアクセス リスト番号 |
FTP | FTP プロトコル |
tcp | TCP プロトコル |
port | 特定の非標準ポート |
ポート番号 | 特定の非標準ポートの番号 |
次に、構文例を示します。
router-6(config)#ip nat service list 10 ftp tcp port 2021
注意すべき重要事項:
上記コマンドのアクセス リスト アドレスは、非標準 FTP 制御ポートを持つ FTP サーバの内部ローカル IP アドレスに合致していなければなりません。
非標準 FTP 制御ポートが FTP サーバに設定されている場合、NAT はその FTP サーバ用のポート 21 を使用している FTP 制御接続のチェックを中止します。他のすべての FTP サーバは、引き続き正常に機能します。
非標準制御ポートを使用している FTP サーバを持つホストも、標準 FTP 制御ポート(21)を使用している FTP クライアントを保持することができます。
FTP サーバがポート 21 と非標準ポートの両方を使用している場合は、ip nat service list <acl> ftp tcp <port> コマンドを使ってこれらの両方のポートを設定する必要があります。以下に、いくつかの例を示します。
ip nat service list 10 ftp tcp port 2021 ip nat service list 10 ftp tcp port 21
ただし、同一のポートと同一のサービスに対して複数のアクセス リストを設定することはできません。以下に、いくつかの例を示します。
router-6(config)#ip nat service list 17 ftp tcp port 2021 router-6(config)#ip nat service list 10 ftp tcp port 2021 % service "ftp tcp port 2021" is already configured for access-list 17
このドキュメントに特有の要件はありません。
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
Cisco IOS ソフトウェア リリース 11.2(13) おおよび 11.3(3) 以降
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。
次の各例では、NAT が FTP 制御接続として処理するフローが、設定に続く表の中に記述されています。各表に示されている「任意のローカル アドレス」とは、10.1.1.1 以外の任意のアドレスを指しています。
ローカル ネットワークで次の FTP サーバが稼働しているものとします。
TCP ポート番号 2021 で稼働する IP アドレス 10.1.1.1 の 1 基の FTP サーバ。
TCP ポート番号 21 での「任意の」IP アドレス(10.1.1.1 以外)の追加 FTP サーバ。
ip nat service list 10 ftp tcp port 2021 access-list 10 permit 10.1.1.1
送信元アドレス | 送信元 TCP ポート | 送信先アドレス | 宛先 TCP ポート |
---|---|---|---|
任意のローカル アドレス | 任意のポート | 10.1.1.1 | 2021 |
任意のローカル アドレス | 任意のポート | 任意のローカル アドレス | 21 |
10.1.1.1 | 任意のポート | 任意のローカル アドレス | 21 |
注:どのローカルアドレスも10.1.1.1に等しくありません。
上記の表で詳細が指定されている NAT プロセスの説明を、次のリストに示します。
1 行目:任意の送信元アドレスと任意のポート番号を持ち、宛先 TCP ポート番号 2021 で FTP サーバ(10.1.1.1)を宛先とするパケットでは、ペイロードの NAT 変換が必要です。
2 行目:任意の送信元アドレスと任意のポート番号を持ち、宛先 TCP ポート番号 21(通常の FTP コントロール ポート)で任意のローカル アドレス(10.1.1.1 以外)を宛先とするパケットでは、ペイロードの NAT 変換が必要です。このように、通常のポート 21 で稼働するすべての FTP サーバ(10.1.1.1 以外)で、ペイロードの必要な NAT 変換を有効にします。
3 行目:任意のポート番号を持ち、宛先 TCP ポート 21 で任意のローカル アドレス(10.1.1.1 以外)を宛先として 10.1.1.1 から送信されるパケットでは、ペイロードの NAT 変換が必要です。
ローカル ネットワークで次の FTP サーバが稼働しているものとします。
TCP ポート番号 21 と 2021 で稼働する IP アドレス 10.1.1.1 の 1 基の FTP サーバ。
TCP ポート番号 21 での「任意の」IP アドレス(10.1.1.1 以外)の複数の FTP サーバ。
ip nat service list 10 ftp tcp port 21 ip nat service list 10 ftp tcp port 2021 access-list 10 permit 10.1.1.1
送信元アドレス | 送信元 TCP ポート | 送信先アドレス | 宛先 TCP ポート |
---|---|---|---|
任意のローカル アドレス | 任意のポート | 10.1.1.1 | 2021 |
任意のローカル アドレス | 任意のポート | 10.1.1.1 | 21 |
任意のローカル アドレス | 任意のポート | 任意のローカル アドレス | 21 |
任意のローカル アドレス | 任意のポート | 任意のローカル アドレス | 21 |
上記の表で詳細が指定されている NAT プロセスの説明を、次のリストに示します。
1 行目:任意の送信元アドレスと任意のポート番号を持ち、宛先 TCP ポート番号 2021 で FTP サーバ(10.1.1.1)を宛先とするパケットでは、ペイロードの NAT 変換が必要です。
2 行目:任意の送信元アドレスと任意のポート番号を持ち、宛先 TCP ポート番号 21 で FTP サーバ(10.1.1.1)を宛先とするパケットでは、ペイロードの NAT 変換が必要です。
3 行目:任意の送信元アドレスと任意のポート番号を持ち、宛先 TCP ポート番号 21(通常の FTP コントロール ポート)で任意のローカル アドレスを宛先とするパケットでは、ペイロードの NAT 変換が必要です。このように、通常のポート 21 で稼働するすべての FTP サーバで、ペイロードの必要な NAT 変換を有効にします。
4 行目:任意のポート番号を持ち、宛先 TCP ポート 21 で任意のローカル アドレスを宛先として 10.1.1.1 から送信されるパケットでは、ペイロードの NAT 変換が必要です。
ローカル ネットワークで次の FTP サーバが稼働しているものとします。
TCP ポート番号 21 で稼働する IP アドレス 10.1.1.1 の 1 基の FTP サーバ。
TCP ポート番号 2021 での IP アドレス 10.1.1.0/24(10.1.1.1 以外)の複数の FTP サーバ。
ip nat service list 10 ftp tcp port 2021 access-list 10 deny 10.1.1.1 access-list 10 permit 10.1.1.0 0.0.0.255
送信元アドレス | 送信元 TCP ポート | 送信先アドレス | 宛先 TCP ポート |
---|---|---|---|
任意のローカル アドレス | 任意のポート | 10.1.1.1 | 21 |
任意のローカル アドレス | 任意のポート | 10.1.1.x(注を参照) | 2021 |
10.1.1.x(注を参照) | 任意のポート | 10.1.1.x 以外の任意のアドレス(注を参照) | 21 |
注:10.1.1.xは10.1.1.1と等しくありません。
上記の表で詳細が指定されている NAT プロセスの説明を、次のリストに示します。
1 行目:任意の送信元アドレスと任意のポート番号を持ち、宛先 TCP ポート番号 21 で FTP サーバ(10.1.1.1)を宛先とするパケットでは、ペイロードの NAT 変換が必要です。
注:ポート2021を持つ10.1.1.1宛てのパケットは、アクセスリストのdeny 10.1.1.1文が原因でNATペイロード変換されません。
2 行目:任意の送信元アドレスと任意のポート番号を持ち、宛先 TCP ポート番号 2021 で任意のローカル アドレス(10.1.1.1 以外)を宛先とするパケットでは、ペイロードの NAT 変換が必要です。
3 行目:任意のポート番号を持ち、宛先 TCP ポート 21 で任意のアドレス(10.1.1.x 以外)を宛先として 10.1.1.x(上記の表の下にある注を参照)(10.1.1.1 以外)から送信されるパケットでは、ペイロードの NAT 変換が必要です。
非標準 FTP 制御ポートが FTP サーバに対して設定されている場合、NAT は、特定のサーバ用のポート 21 を使用している FTP 制御セッションを停止する点に留意する必要があります。FTP サーバが標準ポートと非標準ポートの両方を使用している場合は、ip nat service コマンドを使って両方のポートを設定する必要があります。
TCP ポート番号 2021 の FTP サーバ 10.1.1.1 が内部ネットワークで稼働しています。NAT ルータは、ポート 2021 でコントロール接続のために FTP トラフィックに NAT が実行されるように設定されています。
ネットワーク図
設定:
interface Ethernet0 ip address 10.1.1.2 255.255.255.0 ip nat inside ! interface Serial0 ip address 192.168.10.1 255.255.255.252 ip nat outside ! ip nat service list 10 ftp tcp port 2021 ip nat inside source static 10.1.1.1 20.20.20.1 !--- Static NAT translation for inside local address 10.1.1.1 !--- to inside global address 20.20.20.1. ! access-list 10 permit 10.1.1.1
改定 | 発行日 | コメント |
---|---|---|
1.0 |
10-Aug-2005 |
初版 |