RTシリーズのNATとIPマスカレードに関するFAQ
NAT使用時のTCPパケットはどう処理されますか?
最終変更日 | 2022/Dec/28 |
文書サイズ | 31KB |
NAT使用時のTCPパケットはどう処理されますか?
[ 目次 ]
[ パケットが外側(インタフェース側)へ出てゆく (OUT方向) ]
テーブルに従って、NATの変換処理をする。
テーブルに新規登録して、NATの変換処理をする。
[ パケットが外側(インタフェース側)から入ってくる (IN方向) ]
テーブルに従って、NATの変換処理をする。
捨てる。
[ NAT変換 ]
グローバルアドレス空間 プライベートアドレス空間 ┣━━━━━━┫ ┠──────┨ IP(G1) IP(G2) IP(P2) IP(P1) ┏━━━━━┓ ┏━━━━━━━━━┓ ┏━━━━━┓ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┠←←←←←←┨ ┌ ┠←←←←←←┨ ┃ ┃IPホスト#A┃ ┃ │ NAT ┃ ┃IPホスト#B┃ ┃ ┠→→→→→→┨ └ ┠→→→→→→┨ ┃ ┃ ┃ ┃仮面 ┃ ┃ ┃ ┗━━━━━┛ ┗━━━━━━━━━┛ ┗━━━━━┛
プライベートアドレス機器がグローバルアドレス機器と通信をしようとしたとき、 NATは、プライベートアドレス機器にグローバルアドレスの 仮面(マスカレード)を被せる。
[ TCP/ECHOプロトコル(RFC862/STD20)のNATの変換例#1 ]
+-------------+ | IPホスト#A | (TCP/ECHOサーバ) +------+------+ | 133.176.200.47 133.176.200.0/24 -------+----------------------------------- | 133.176.200.67 +------+------+ | RT(A) | (ダイヤルアップ・サーバ) +-------------+ : 01/Celery : ISDN擬似交換機またはISDN回線 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 : : 02/Tomato +-------------+ (133.176.200.68) | RT(B) | (端末型ダイヤルアップ) ↑ NAT +------+------+ 192.168.0.1-192.168.0.254 | 192.168.0.1 192.168.0.0/24 -------+----------------------------------- | 192.168.0.2 +------+------+ | IPホスト#B | (TCP/ECHOクライアント) +-------------+
isdn local address 01/Celery ip lan address 133.176.200.67/24 ip lan proxyarp on pp select anonymous ip pp remote address pool 133.176.200.68 133.176.200.69 pp auth request chap-pap pp auth username test-user test-password ppp ipcp msext on pp enable anonymous
isdn local address 02/Tomato ip lan address 192.168.0.1/24 pp select 1 isdn remote address call 01/Celery ip pp route add net default 1 pp auth accept chap pap pp auth myname test-user test-password nat use on ppp ipcp ipaddress on ppp ipcp msext on pp enable 1
ip filter 1 pass-log * * * * * isdn local address 01/Celery ip lan address 133.176.200.67/24 ip lan proxyarp on ip lan secure filter in 1 ip lan secure filter out 1 pp select anonymous ip pp remote address pool 133.176.200.68 133.176.200.69 ip pp secure filter in 1 ip pp secure filter out 1 pp auth request chap-pap pp auth username test-user test-password ppp ipcp msext on pp enable anonymous syslog notice on
ip filter 1 pass-log * * * * * isdn local address 02/Tomato ip lan address 192.168.0.1/24 ip lan secure filter in 1 ip lan secure filter out 1 pp select 1 isdn remote address call 01/Celery ip pp route add net default 1 ip pp secure filter in 1 ip pp secure filter out 1 pp auth accept chap pap pp auth myname test-user test-password nat use on ppp ipcp ipaddress on ppp ipcp msext on pp enable 1 syslog notice on
isdn local address 01/Celery ip lan address 133.176.200.67/24 ip lan proxyarp on pp select anonymous ip pp remote address pool 133.176.200.68 133.176.200.69 pp auth request chap-pap pp auth username test-user test-password ppp ipcp msext on pp enable anonymous
isdn local address 02/Tomato ip lan address 192.168.0.1/24 nat descriptor type 1 nat pp select 1 isdn remote address call 01/Celery ip pp route add net default 1 pp auth accept chap pap pp auth myname test-user test-password ip pp nat descriptor 1 ppp ipcp ipaddress on ppp ipcp msext on pp enable 1
アドレス名 | IPアドレス |
---|---|
IP(G1) | 133.176.200.47 |
IP(G2) | 133.176.200.67 (133.176.200.68) |
IP(P1) | 192.168.0.2 |
IP(P2) | 192.168.0.1 |
ホスト名/機能名 | 機能 | ポート番号 |
---|---|---|
IPホスト#A | ECHOサーバ | 7(listen) |
IPホスト#B | ECHOクライアント | 1024 |
IP(G1) IP(G2) IP(P2) IP(P1) ┏━━━━━┓ ┏━━━━━━━━┓ ┏━━━━━┓ ┃IPホスト#A┠←←←←←←┨ NAT ┠←←←←←←┨IPホスト#B┃ ┗━━━━━┛ ┗━━━━━━━━┛ ┗━━━━━┛ 7 6 5 4 3 2 1
プトロコル | 送信先/Destination | 送信元/Source | 位置 | ||
---|---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | ||
IP/TCP | 133.176.200.47 | 7 | 192.168.0.2 | 1024 | 2 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | 4 | ||
133.176.200.47 | 7 | 133.17.200.68 | 1024 | 6 |
IP(G1) IP(G2) IP(P2) IP(P1) ┏━━━━━┓ ┏━━━━━━━━┓ ┏━━━━━┓ ┃IPホスト#A┠→→→→→→┨ NAT ┠→→→→→→┨IPホスト#B┃ ┗━━━━━┛ ┗━━━━━━━━┛ ┗━━━━━┛ 1 2 3 4 5 6 7
プトロコル | 送信元/Source | 送信先/Destination | 位置 | ||
---|---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | ||
IP/TCP | 133.176.200.47 | 7 | 133.176.200.68 | 1024 | 2 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | 4 | ||
133.176.200.47 | 7 | 192.168.0.2 | 1024 | 6 |
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┃ ┃# pp select 1 ┃pp1# show nat address ┃ グローバル プライベート TTL(秒) ┃ ipcp/133.176.200.68 192.168.0.2 - ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┃ ┃# show nat descriptor interface bind ┃NATディスクリプタ番号 OuterType Type ┃--------------------- --------- ---- ┃ 1 addresses NAT ┃PP[01](1) ┃Binding:1 PP:1 LAN:0 TUNNEL:0 ┃--------------------- --------- ---- ┃Defined NAT Descriptor:1 ┃# ┃# show nat descriptor address ┃参照NATディスクリプタ : 1, 適用インタフェース : PP[01](1) ┃ 外側アドレス(Outer) 内側アドレス(Inner) TTL(秒) ┃ ipcp/133.176.200.68 192.168.0.2 - ┃# ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
グローバルアドレス | プライベートアドレス | TTL |
---|---|---|
ipcp/133.176.200.68 | 192.168.0.2 | - |
[ TCP/ECHOプロトコル(RFC862/STD20)のNATの変換例#2 ]
ECHOサーバとECHOクライアントの位置がNAT処理に対して、 #1の場合と位置が反対であるとき。
+-------------+ | IPホスト#A | (TCP/ECHOクライアント) +------+------+ | 133.176.200.47 133.176.200.0/24 -------+----------------------------------- | 133.176.200.67 +------+------+ | RT(A) | (ダイヤルアップ・サーバ) +-------------+ : 01/Celery : ISDN擬似交換機またはISDN回線 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 : : 02/Tomato +-------------+ | RT(B) | (端末型ダイヤルアップ…NAT) +------+------+ | 192.168.0.1 192.168.0.0/24 -------+----------------------------------- | 192.168.0.2 +------+------+ | IPホスト#B | (TCP/ECHOサーバ) +-------------+
#1のconfigと同じ
サーバへの要求: 外側→内側(IN方向)
プトロコル | 送信元/Source | 送信先/Destination | ||
---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | |
IP/TCP | 133.176.200.47 | 1024 | 133.176.200.68 | 7 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | ||
133.176.200.47 | 1024 | 192.168.0.2 | 7 |
サーバからの応答: 内側→外側 (OUT方向)
プトロコル | 送信先/Destination | 送信元/Source | ||
---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | |
IP/TCP | 133.176.200.47 | 1024 | 192.168.0.2 | 7 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | ||
133.176.200.47 | 1024 | 133.17.200.68 | 7 |
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┃ ┃# pp select 1 ┃pp1# show nat address ┃ グローバル プライベート TTL(秒) ┃ ipcp/133.176.200.68 192.168.0.2 - ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┃ ┃# show nat descriptor interface bind ┃NATディスクリプタ番号 OuterType Type ┃--------------------- --------- ---- ┃ 1 addresses NAT ┃PP[01](1) ┃Binding:1 PP:1 LAN:0 TUNNEL:0 ┃--------------------- --------- ---- ┃Defined NAT Descriptor:1 ┃# ┃# show nat descriptor address ┃参照NATディスクリプタ : 1, 適用インタフェース : PP[01](1) ┃ 外側アドレス(Outer) 内側アドレス(Inner) TTL(秒) ┃ ipcp/133.176.200.68 192.168.0.2 - ┃# ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
グローバルアドレス | プライベートアドレス | TTL |
---|---|---|
ipcp/133.176.200.68 | 192.168.0.2 | - |
[ TCP/ECHOプロトコル(RFC862/STD20)のNATの変換例#3 ]
+-------------+ | IPホスト#A | (TCP/ECHOサーバ) +------+------+ | 133.176.200.47 133.176.200.0/24 -------+----------------------------------- | 133.176.200.67 +------+------+ | {LAN2] | (133.176.200.68) | RT | ↑ NAT | [LAN1] | 192.168.0.2 +------+------+ | 192.168.0.1 192.168.0.0/24 -------+----------------------------------- | 192.168.0.2 +------+------+ | IPホスト#B | (TCP/ECHOクライアント) +-------------+
ip lan1 address 192.168.0.1/24 ip lan2 address 133.176.200.67/24 ip lan2 nat descriptor 1 nat descriptor type 1 nat nat descriptor address outer 1 133.176.200.68 nat descriptor address inner 1 192.168.0.2 nat descriptor static 1 1 133.176.200.68=192.168.0.2
ip filter 1 pass-log * * * * * ip lan1 address 192.168.0.1/24 ip lan2 address 133.176.200.67/24 ip lan2 secure filter in 1 ip lan2 secure filter out 1 ip lan2 nat descriptor 1 nat descriptor type 1 nat nat descriptor address outer 1 133.176.200.68 nat descriptor address inner 1 192.168.0.2 nat descriptor static 1 1 133.176.200.68=192.168.0.2 syslog notice on
アドレス名 | IPアドレス |
---|---|
IP(G1) | 133.176.200.47 |
IP(G2) | 133.176.200.67 (133.176.200.68) |
IP(P1) | 192.168.0.2 |
IP(P2) | 192.168.0.1 |
ホスト名/機能名 | 機能 | ポート番号 |
---|---|---|
IPホスト#A | ECHOサーバ | 7(listen) |
IPホスト#B | ECHOクライアント | 1024 |
IP(G1) IP(G2) IP(P2) IP(P1) ┏━━━━━┓ ┏━━━━━━━━┓ ┏━━━━━┓ ┃IPホスト#A┠←←←←←←┨ NAT ┠←←←←←←┨IPホスト#B┃ ┗━━━━━┛ ┗━━━━━━━━┛ ┗━━━━━┛ 7 6 5 4 3 2 1
プトロコル | 送信先/Destination | 送信元/Source | 位置 | ||
---|---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | ||
IP/TCP | 133.176.200.47 | 7 | 192.168.0.2 | 1024 | 2 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | 4 | ||
133.176.200.47 | 7 | 133.17.200.68 | 1024 | 6 |
IP(G1) IP(G2) IP(P2) IP(P1) ┏━━━━━┓ ┏━━━━━━━━┓ ┏━━━━━┓ ┃IPホスト#A┠→→→→→→┨ NAT ┠→→→→→→┨IPホスト#B┃ ┗━━━━━┛ ┗━━━━━━━━┛ ┗━━━━━┛ 1 2 3 4 5 6 7
プトロコル | 送信元/Source | 送信先/Destination | 位置 | ||
---|---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | ||
IP/TCP | 133.176.200.47 | 7 | 133.176.200.68 | 60001 | 2 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | 4 | ||
133.176.200.47 | 7 | 192.168.0.2 | 1024 | 6 |
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┃ ┃# show nat descriptor interface bind ┃NATディスクリプタ番号 OuterType Type ┃--------------------- --------- ---- ┃ 1 addresses NAT ┃LAN2(1) ┃Binding:1 PP:0 LAN:1 TUNNEL:0 ┃--------------------- --------- ---- ┃Defined NAT Descriptor:1 ┃# ┃# show nat descriptor address ┃参照NATディスクリプタ : 1, 適用インタフェース : LAN2(1) ┃ 外側アドレス(Outer) 内側アドレス(Inner) TTL(秒) ┃ 133.176.200.68 192.168.0.2 - ┃# ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
外側アドレス | 内側アドレス | TTL |
---|---|---|
133.176.200.68 | 192.168.0.2 | - |
[ TCP/ECHOプロトコル(RFC862/STD20)のNATの変換例#4 ]
ECHOサーバとECHOクライアントの位置がNAT処理に対して、 #3の場合と位置が反対であるとき。
+-------------+ | IPホスト#A | (TCP/ECHOクライアント) +------+------+ | 133.176.200.47 133.176.200.0/24 -------+----------------------------------- | 133.176.200.67 +------+------+ | {LAN2] | (133.176.200.68) | RT | ↑ NAT | [LAN1] | 192.168.0.2 +------+------+ | 192.168.0.1 192.168.0.0/24 -------+----------------------------------- | 192.168.0.2 +------+------+ | IPホスト#B | (TCP/ECHOサーバ) +-------------+
#3のconfigと同じ
サーバへの要求: 外側→内側(IN方向)
プトロコル | 送信元/Source | 送信先/Destination | ||
---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | |
IP/TCP | 133.176.200.47 | 1024 | 133.176.200.68 | 7 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | ||
133.176.200.47 | 1024 | 192.168.0.2 | 7 |
サーバからの応答: 内側→外側 (OUT方向)
プトロコル | 送信先/Destination | 送信元/Source | ||
---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | |
IP/TCP | 133.176.200.47 | 1024 | 192.168.0.2 | 7 |
↓継承↓ | ↓書き換え↓ | ↓継承↓ | ||
133.176.200.47 | 1024 | 133.17.200.68 | 7 |
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┃ ┃# show nat descriptor interface bind ┃NATディスクリプタ番号 OuterType Type ┃--------------------- --------- ---- ┃ 1 addresses NAT ┃LAN2(1) ┃Binding:1 PP:0 LAN:1 TUNNEL:0 ┃--------------------- --------- ---- ┃Defined NAT Descriptor:1 ┃# ┃# show nat descriptor address ┃参照NATディスクリプタ : 1, 適用インタフェース : LAN2(1) ┃ 外側アドレス(Outer) 内側アドレス(Inner) TTL(秒) ┃ 133.176.200.68 192.168.0.2 - ┃# ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
外側アドレス | 内側アドレス | TTL |
---|---|---|
133.176.200.68 | 192.168.0.2 | - |
[ 関連情報 ]
[ FAQ for RT-Series ]
[ FAQ for NAT / files / TCP/IP / IPsec ]