Dell Networking SONiC: NAT(ネットワーク アドレス変換)
概要: この記事では、Dell Networking SONiCのネットワーク アドレス変換(NAT)について説明します。この文書では、Dell SONiC 4.1を実行しているスイッチを使用します。
手順
|
必要条件
標準インターフェイスの命名は、概念を示すために使用されます。デルの記事202172 Dell Networking Sシリーズを参照してください。基本的なインターフェイス構成 - インターフェイス の命名に関する詳細については、SONiC 4.0を参照してください。 |
索引
- 概要
- NATの有効化
- NAT構成順序
- NATゾーン
- 静的NATエントリー
- 静的NATの例
- 動的NAT
- NATアドレス プール
- NATバインド
- ダイナミックNATタイムアウト
- 動的NATの例
- NAT設定表示コマンド
概要
ネットワーク アドレス変換は、ネットワーク外のリソースにアクセスするデバイスにパブリックIPアドレスを割り当てるプロセスを有効にします。NATは、ローカル ネットワークでのIPアドレスの使用量を節約します。
NATは、プライベートIPアドレス間のトラフィックをルーティングするためにネットワーク内で必要ありません。NATゲートウェイは、リモート デバイスと通信するときに、ローカル ネットワーク デバイスのプライベートIPアドレスをグローバルに一意のパブリックIPアドレスに変換します。
NATの有効化
NATを有効にし、NAT構成モードでNAT構成コマンドを入力するには、次の手順を実行します。- NATを有効にするには、次の手順を実行します。
sonic(config-nat)# enable admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# enable
-
NATを無効にするには、次の手順を実行します。
DELLSONiC(config-nat)# no enable
NAT構成順序
NATを有効にすると、次の手順を任意の順序で実行できます。- NATゾーンの構成
- 静的NATエントリーの追加
- L4ポートを使用した静的NATエントリーの追加
- NATアドレス プールの作成
- NATバインディングの構成
- 動的NATタイムアウトの構成
NATゾーンの作成
パケットが構成済みインターフェイス上のゾーンを通過する際に、NATアドレス変換がパケットで実行されるように、L3インターフェイス上でNATゾーンを構成します。NATゾーンは、IPアドレスで構成されたEthernet、VLAN、ポート チャネル、ループバック インターフェイスで構成できます。NATゾーン番号の範囲は0~3です。パケットのソース ゾーンは、パケットが受信されるインバウンド インターフェイスのゾーンです。パケットの宛先ゾーンは、宛先アドレスのL3ルート ルックアップからのL3ネクスト ホップ インターフェイスのゾーンです。
- ソース インターフェイスに入力されるインバウンド トラフィックは、静的な宛先ネットワーク アドレス変換(DNAT)変換を使用してL3転送されます。
- デスティネーション インターフェイスで送信されるアウトバウンド トラフィックは、ソース ネットワーク アドレス変換(SNAT)が動的に変換されます。
- L3インターフェイスは、デフォルトでNATゾーン0にあります。NATゾーン0は、内部ゾーンと見なされます。
- NATゾーンを作成するには、次の手順を実行します。
sonic(conf-if-interface)# nat-zone <0..3> admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC (config)# interface Eth1/2 DELLSONiC (conf-if-Eth1/2)# ip address 20.20.20.20/24 DELLSONiC (conf-if-Eth1/2)# nat-zone 1 DELLSONiC (conf-if-Eth1/2)# exit DELLSONiC (config)# interface Vlan 5 DELLSONiC (conf-if-Vlan5)# ip address 23.23.23.23/24 DELLSONiC (conf-if-Vlan5)# nat-zone 1 DELLSONiC (conf-if-Vlan5)# exit DELLSONiC (config)# interface PortChannel 2 DELLSONiC (conf-if-po2)# ip address 25.25.25.25/24 DELLSONiC (conf-if-po2)# nat-zone 1 DELLSONiC (conf-if-po2)# exit DELLSONiC (config)# interface Loopback 1 DELLSONiC (conf-if-lo1)# ip address 10.10.10.10/32 DELLSONiC (conf-if-lo1)# nat-zone 2
-
NATゾーンを削除します。
sonic(conf-if-interface)# no nat-zone <0..3> DELLSONiC (conf-if-lo1)# no nat-zone 2
静的NATエントリーを作成します。
インターネット経由でネットワーク外と通信するために、ユーザーは静的NATエントリーを手動で構成して、ローカルIPアドレスをグローバルに一意のIPアドレスに置き換えることができます。静的NATは、L4ポート変換の有無にかかわらず作成できます。L4ポート参照を使用する静的NATは、ローカルIPアドレスとTCPまたはUDPポート番号をTCPまたはUDPポート番号を持つグローバルIPアドレスに変換できます。- L4ポート変換なしで静的NATを作成するには、次の手順を実行します。
sonic(conf-nat)# static basic global-ip local-ip [snat | dnat] [twice_nat_id value]
- Source NAT(SNAT): ローカル ネットワーク内のソースIPアドレスを、外部ネットワークに送信されるグローバルIPアドレスに変換します。外部ネットワーク内のリモート デバイスは、グローバル アドレスを使用してローカル デバイスにアクセスします。
- Destination NAT(DNAT) - 外部ネットワークから受信したパケットの宛先IPアドレスを、ローカル ネットワークで使用されるローカルIPアドレスに変換します。DNATがデフォルトです。
- twice_nat_id値 - 同じ値を持つ静的エントリーのソースIPアドレスと宛先IPアドレスの両方でアドレス変換を実行します。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# static basic 125.4.4.4 12.1.1.1 DELLSONiC(config-nat)# static basic 100.100.100.100 15.15.15.15 snat twice-nat-id 5 DELLSONiC(config-nat)# static basic 200.200.200.5 17.17.17.17 dnat twice-nat-id 5
- L4ポート変換を使用して静的NATを作成するには、次の手順を実行します。
sonic(conf-nat)# static {tcp | udp} global-ip global-port local-ip local-port [snat | dnat] [twice_nat_id value]
- Source NAT(SNAT): ローカル ネットワーク内のソースIPアドレスとTCP/UDPポートを、外部ネットワークに送信されるグローバルIPアドレスとTCP/UDPポートに変換します。外部ネットワーク内のリモート デバイスは、グローバル アドレスとL4ポートを使用してローカル デバイスにアクセスします。
- Destination NAT(DNAT): 外部ネットワークから受信し、ローカル ネットワークをトラバースするパケット内の宛先IPアドレスとTCP/UDPポートを、ローカル ネットワークで使用されるローカルIPアドレスとTCP/UDPポートに変換します。DNATがデフォルトです。
- twice_nat_id値 - 同じID 値を持つ静的エントリーのソースIPアドレスと宛先IPアドレスの両方でアドレス変換を実行します。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# static udp 148.56.7.7 8991 10.11.1.12 2000 DELLSONiC(config-nat)# static tcp 123.3.4.1 901 11.11.1.1 1000 DELLSONiC(config-nat)# static tcp 65.55.46.6 106 20.0.0.6 206 dnat twice-nat-id 200 DELLSONiC(config-nat)# static tcp 65.55.45.5 100 20.0.0.5 200 snat twice-nat-id 200
- NAT静的エントリーを削除します。
sonic(conf-nat)# no static basic global-ip
sonic(conf-nat)# no static {tcp | udp} global-ip global-port
DELLSONiC(config-nat)# no static basic 125.4.4.4
DELLSONiC(config-nat)# no static basic 100.100.100.100
DELLSONiC(config-nat)# no static basic 200.200.200.5
DELLSONiC(config-nat)# no static udp 148.56.7.7 8991
DELLSONiC(config-nat)# no static tcp 123.3.4.1 901
DELLSONiC(config-nat)# no static tcp 65.55.46.6 106
DELLSONiC(config-nat)# no static tcp 65.55.45.5 100
静的NATの例
次の例は、NATが有効になっているルーターを使用しているネットワークAを示しています。LANセグメント上のホスト100.100.100.101が外部送信先(200.200.200.201)にトラフィックを送信すると、トラフィックはNATルーターに向かって送信され、インターネットからホスト200.200.200.201にルーティングされます。NATルーターは、ソースIP(SRC IP)100.100.100.101を新しいソースIP 1.1.1.2に変換します。NATルーターは、100.100.100.101の内部プライベート アドレスが1.1.1.2の外部向けアドレスに変換されるソース ネットワーク アドレス変換(SNAT)を実行しています。NATルーターは、ホスト200.200.200.201からネットワークAからホスト100.100.100.101へのリターン トラフィックに対してデスティネーション ネットワーク アドレス変換(DNAT)を実行します。
- NATゾーンを構成します。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC (config)# interface Eth1/10 DELLSONiC (conf-if-Eth1/10)# ip address 100.100.100.1/24 DELLSONiC (conf-if-Eth1/10)# nat-zone 0 DELLSONiC (conf-if-Eth1/10)# exit DELLSONiC (config)# interface Eth1/20 DELLSONiC (conf-if-Eth1/20)# ip address 1.1.1.2/30 DELLSONiC (conf-if-Eth1/20)# nat-zone 1 DELLSONiC (conf-if-Eth1/20)# exit
-
NATを有効にする:
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# enable
- L4ポート変換なしで静的NATを作成します。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# static basic 1.1.1.2 100.100.100.101
動的NATを作成します。
動的NATは、ローカル アドレスをグローバル アドレスのプールのアドレスに置き換えます。
動的変換は、プライベート ネットワーク上の複数のユーザーがインターネットにアクセスする場合に便利です。
NATアドレス プールの構成
グローバルIPアドレス範囲を定義し、必要に応じてローカル アドレス変換に使用するTCP/UDPポート範囲を定義して、使用可能なグローバル アドレスのプールを構成します。
- NATアドレス プールの作成:
sonic(conf-nat)# pool pool-name global-ip-range [global-port-range]
- グローバルIPアドレスの範囲を ip-address-ip-address の形式で入力します。
- TCP/UDPポート番号の範囲を port-number-port-number の形式で入力します。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# pool Pool1 19.19.19.19 DELLSONiC(config-nat)# pool Pool2 20.0.0.7 1024-65535 DELLSONiC(config-nat)# pool Pool3 65.55.45.10-65.55.45.15 500-1000
- NATアドレス プールを削除します。
sonic(conf-nat)# no pool pool-name DELLSONiC(config-nat)# no pool Pool1
- すべてのNATアドレス プールを削除します。
sonic(conf-nat)# no pools
NATバインドの構成
- NATアドレス プールへのNATバインドを作成します。
sonic(conf-nat)# binding binding-name pool-name [acl-name] [snat | dnat] [twice_nat_id value]
- SNAT :ソースIPアドレスをプール内のグローバルIPアドレスに変換します。SNATは、NATバインディングのデフォルト設定です。
- DNAT - デスティネーションIPアドレスをプール内のグローバルIPアドレスに変換します。
- twice_nat_id 値 -同じID 値を持つ静的エントリーのアドレス プールを使用して、ソースIPアドレスと宛先IPアドレスの両方でアドレス変換を実行します。
- acl-name :グローバルNATアドレス プール内のIPアドレスを制限するには、ACL(アクセス制御リスト)を使用できます。許可ステートメントでは、許可ルールで構成された属性を持つIPアドレスを許可します。拒否ステートメントは、拒否ルールで構成された属性を持つパケットを拒否します。ACLでは、 do_not_nat エントリーを使用すると、パケットを変換する代わりにルーティングできます。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# binding Bind1 Pool1 10_ACL_IPV4 DELLSONiC(config-nat)# binding Bind2 Pool2 12_ACL_IPV4 snat twice-nat-id 25 DELLSONiC(config-nat)# binding Bind3 Pool3 15_ACL_IPV4 dnat twice-nat-id 25
- NATバインドの削除:
sonic(conf-nat)# no binding binding-name DELLSONiC(config-nat)# no binding Bind1
- すべてのNATバインドを削除します。
sonic(conf-nat)# no bindings
動的NATタイムアウトの構成
デフォルトでは、動的アドレス変換構成は、アクティブなトラフィック
がない場合の10分(600秒)後にのみタイムアウトします。静的NATエントリーのタイムアウトはありません。動的NATタイムアウト値を変更するには、新しい値を秒単位で指定します(300~432000)。
- 動的アドレス変換設定のタイムアウトの変更:
sonic(conf-nat)# timeout <300..432000> admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# timeout 1200
L4 UDPおよびTCP NATエントリーのNATエントリー タイムアウトも調整できます。
アドレス変換のTCPタイムアウトを変更するには、新しいタイムアウト値を秒単位で入力します(300~432000、デフォルトは86400)。アドレス変換のUDPタイムアウトを変更するには、新しい値を秒単位で入力します(120~600、デフォルトは300)。
- 動的アドレス変換構成のUDP/TCPタイムアウトを変更します。
sonic(conf-nat)# udp-timeout <120..600> sonic(conf-nat)# tcp-timeout <300..432000> admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# udp-timeout 600 DELLSONiC(config-nat)# tcp-timeout 66460
動的NATの例
次の例は、NATが有効になっているルーターを使用しているネットワークAを示しています。LANセグメント上のホスト100.100.100.101が外部送信先(200.200.200.201)にトラフィックを送信すると、トラフィックはNATルーターに向かって送信され、インターネットからホスト200.200.200.201にルーティングされます。NATルーターは、ソースIP(SRC IP)100.100.100.101を新しいソースIP 1.1.1.2に変換します。NATルーターは、100.100.100.101の内部プライベート アドレスが1.1.1.2の外部向けアドレスに変換されるソース ネットワーク アドレス変換(SNAT)を実行しています。NATルーターは、ホスト200.200.200.201からネットワークAからホスト100.100.100.101へのリターン トラフィックに対してデスティネーション ネットワーク アドレス変換(DNAT)を実行します。PC3とのPC2通信でも、同じNAT変換が行われます。

図2:動的ネットワーク アドレス変換の例
- NATゾーンを構成します。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC (config)# interface Vlan 100 DELLSONiC (conf-if-Vlan100)# ip address 100.100.100.1/24 DELLSONiC (conf-if-Vlan100)# nat-zone 0 DELLSONiC (conf-if-Vlan100)# exit DELLSONiC (config)# interface Vlan 300 DELLSONiC (conf-if-Vlan300)# ip address 300.300.300.1/24 DELLSONiC (conf-if-Vlan300)# nat-zone 0 DELLSONiC (conf-if-Vlan300)# exit DELLSONiC (config)# interface Eth1/20 DELLSONiC (conf-if-Eth1/20)# ip address 1.1.1.2/30 DELLSONiC (conf-if-Eth1/20)# nat-zone 1 DELLSONiC (conf-if-Eth1/20)# exit
- NATを有効にする:
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# enable
- NATプールを作成します。
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# pool Pool1 1.1.1.2
- NATバインドの作成:
admin@DELLSONiC:~$ sonic-cli DELLSONiC# configure terminal DELLSONiC(config)# nat DELLSONiC(config-nat)# binding Bind1 Pool1
NAT 構成の表示
次のコマンドを使用して、NATの構成と操作、NATテーブルのエントリーを表示します。
- NAT変換テーブルの表示:
S5296F-Mid-SPINE# show nat translations Protocol Source Destination Translated Source Translated Destination ---------------------------------------------------------------------------------------------------------------------------- all 10.32.20.3 ---- 100.100.100.1 ---- all ---- 100.100.100.1 ---- 10.32.20.3 udp ---- 10.32.20.2:311 ---- 100.100.100.100:63 udp 100.100.100.100:63 ---- 10.32.20.2:311 ----
- NAT変換エントリーをクリアするには、次の手順を実行します。
DELLSONiC# clear nat translations
- NAT変換統計の表示:
DELLSONiC# show nat statistics ----------------------------------------------------------------------------- Protocol Source Destination Packets Bytes ----------------------------------------------------------------------------- udp 100.100.100.100:63 --- 15522575563164 993444836042496
- NATおよびNAT構成の表示:
DELLSONiC# show nat config static --------------------------------------------------------------------------------------------------------------------- Nat Type IP Protocol Global IP Global L4 Port Local IP Local L4 Port Twice-Nat Id ---------------------------------------------------------------------------------------------------------------------------- dnat all 100.100.100.1 ---- 10.32.20.3 ---- ----
- NATプールの表示:
DELLSONiC# show nat config pool Pool Name Global IP Range Global L4 Port Range ----------------------------------------------------------------------------- POOL1 100.100.100.2 1024-6034 POOL2 100.100.100.3-100.100.100.4 ----
- NATバインディング構成の表示:
DELLSONiC# show nat config bindings Binding Name Pool Name Access-List Nat Type Twice-Nat Id ----------------------------------------------------------------------------- EXT1 POOL1 ---- ---- --- EXT2 POOL2 NAT_IPS ---- ---
- グローバルNAT構成の表示:
DELLSONiC# show nat config globalvalues Admin Mode : enabled Global Timeout : 600 secs TCP Timeout : 86400 secs UDP Timeout : 300 secs
- L3インターフェイス ゾーンの表示:
DELLSONiC# show nat config zones Port Zone ------------------------------------------------- Eth1/1 2 PortChannel12 2 Vlan200 1 Loopback1 1
-
NAT変換数の表示:
DELLSONiC# show nat translations count Static NAT Entries ................. 2 Static NAPT Entries ................. 0 Dynamic NAT Entries ................. 0 Dynamic NAPT Entries ................. 2 Static Twice NAT Entries ................. 0 Static Twice NAPT Entries ................. 0 Dynamic Twice NAT Entries ................. 0 Dynamic Twice NAPT Entries ................ 0 Total SNAT/SNAPT Entries ................ 2 Total DNAT/DNAPT Entries ................ 2 Total Entries .......................... 4