Dell Networking SONiC: NAT(ネットワーク アドレス変換)

概要: この記事では、Dell Networking SONiCのネットワーク アドレス変換(NAT)について説明します。この文書では、Dell SONiC 4.1を実行しているスイッチを使用します。

この記事は次に適用されます: この記事は次には適用されません: この記事は、特定の製品に関連付けられていません。 すべての製品パージョンがこの記事に記載されているわけではありません。

手順

 
必要条件
標準インターフェイスの命名は、概念を示すために使用されます。デルの記事202172 Dell Networking Sシリーズを参照してください。基本的なインターフェイス構成 - インターフェイス の命名に関する詳細については、SONiC 4.0を参照してください。


索引

概要

メモ: NAT(ネットワーク アドレス変換)は、Cloud Standard、Cloud Premium、Enterprise Standard、Enterprise Premiumバンドルでのみ使用できます。NATは、Edge Standardバンドルでは使用できません。

ネットワーク アドレス変換は、ネットワーク外のリソースにアクセスするデバイスにパブリックIPアドレスを割り当てるプロセスを有効にします。NATは、ローカル ネットワークでのIPアドレスの使用量を節約します。

NATは、プライベートIPアドレス間のトラフィックをルーティングするためにネットワーク内で必要ありません。NATゲートウェイは、リモート デバイスと通信するときに、ローカル ネットワーク デバイスのプライベートIPアドレスをグローバルに一意のパブリックIPアドレスに変換します。
 
メモ: Z9432F-ONでは、ネットワーク アドレス変換はサポートされていません。
 

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)を実行します。
Statis NATの例
図1: 静的ネットワーク アドレス変換の例
  • 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]
  1. グローバルIPアドレスの範囲を ip-address-ip-address の形式で入力します。
  2. 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 エントリーを使用すると、パケットを変換する代わりにルーティングできます。
メモ: ACL-NAME はオプションの引数です。ACL-NAME引数が指定されていない場合、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変換が行われます。

動的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

対象製品

Enterprise SONiC Distribution, PowerSwitch S5212F-ON, PowerSwitch S5224F-ON, PowerSwitch S5232F-ON, PowerSwitch S5248F-ON, PowerSwitch S5296F-ON, PowerSwitch Z9264F-ON, PowerSwitch Z9332F-ON
文書のプロパティ
文書番号: 000220835
文書の種類: How To
最終更新: 08 2月 2024
バージョン:  5
質問に対する他のDellユーザーからの回答を見つける
サポート サービス
お使いのデバイスがサポート サービスの対象かどうかを確認してください。