Cisco機器のNAT設定 | 静的NAT(ポリシーベースNAT)

Cisco機器のNAT設定 | 静的NAT(ポリシーベースNAT)

Cisco機器でのポリシーベースNATの概要と設定方法について説明します。

NATの概要については、下記を参照してください。

目次

ポリシーベースNATとは

ポリシーベースNATとは、通信内容に応じて、NAT変換アドレスを使い分ける技術です。例えば、同じ送信元からの通信でも、送信先によって、NAT変換アドレスを変えることが可能です。

例)
内部サーバー(192.168.1.1)から通信を行う際に、送信先が外部サーバー1(100.100.1.1)の場合は「10.10.100.1」に、送信先が外部サーバー2(200.200.1.1)の場合は「10.10.200.1」にNATすることができます。

ポリシーベースNATの概要

通信内容の判定にはアクセスリストを利用するため、送信先アドレスだけではなく、プロトコルやポート番号での制御が可能です。

ポリシーベースNATの設定方法

上述のネットワーク構成を例に、設定方法を説明します。

ネットワーク構成

Cisco機器でポリシーベースNATを利用する場合、以下の手順で設定します。

STEP
インターフェースの設定

IPアドレスの設定、NATのゾーン(inside/outside)の設定を行います。

interface GigabitEthernet0/0
 ip address 192.168.1.254 255.255.255.0
 ip nat inside
 # NAT内部ゾーンとして設定

interface GigabitEthernet0/1
 ip address 100.100.1.254 255.255.255.0
 ip nat outside
 # NAT外部ゾーンとして設定

interface GigabitEthernet0/2
 ip address 200.200.1.254 255.255.255.0
 ip nat outside
 # NAT外部ゾーンとして設定
STEP
アクセスリストの設定

通信を特定するためにアクセスリストを設定します。

access-list 100 permit ip host 192.168.1.1 host 100.100.1.1
# 送信元:192.168.1.1、送信先:100.100.1.1を対象とするアクセスリスト

access-list 101 permit ip host 192.168.1.1 host 200.200.1.1
# 送信元:192.168.1.1、送信先:200.200.1.1を対象とするアクセスリスト
STEP
ルートマップの設定

アクセスリストの対象となった通信を分類するために、ルートマップを設定します。

route-map NAT-MAP-1 permit 10
 match ip address 100
# ACL100にマッチした場合は、NAT-MAP-1に分類

route-map NAT-MAP-2 permit 10
 match ip address 101
# ACL101にマッチした場合は、NAT-MAP-2に分類
STEP
NATの設定(ルートマップの適用)

ルートマップを適用したNATの設定を行います。

ip nat inside source static 192.168.1.1 10.10.100.1 route-map NAT-MAP-1
# NAT-MAP-1に分類された場合は、"10.10.100.1"にNAT

ip nat inside source static 192.168.1.1 10.10.200.1 route-map NAT-MAP-2
# NAT-MAP-1に分類された場合は、"10.10.200.1"にNAT

最終的なコンフィグ は下記の通りです。

interface GigabitEthernet0/0
 ip address 192.168.1.254 255.255.255.0
 ip nat inside

interface GigabitEthernet0/1
 ip address 100.100.1.254 255.255.255.0
 ip nat outside

interface GigabitEthernet0/2
 ip address 200.200.1.254 255.255.255.0
 ip nat outside

ip nat inside source static 192.168.1.1 10.10.100.1 route-map NAT-MAP-1
ip nat inside source static 192.168.1.1 10.10.200.1 route-map NAT-MAP-2

route-map NAT-MAP-2 permit 10
 match ip address 101

route-map NAT-MAP-1 permit 10
 match ip address 100

access-list 100 permit ip host 192.168.1.1 host 100.100.1.1
access-list 101 permit ip host 192.168.1.1 host 200.200.1.1

通信確認

内部サーバーから外部サーバーへ通信を行い、NATルーターのステータスやデバッグログ、パケットキャプチャを確認します。

機器ステータス

「show ip nat translations」コマンドで、NATのステータスを確認します。

通信前

Router#show ip nat translations
Pro Inside global      Inside local       Outside local      Outside global
--- 10.10.100.1        192.168.1.1        ---                ---
--- 10.10.200.1        192.168.1.1        ---                ---

通信発生時

Router#show ip nat translations
Pro Inside global      Inside local       Outside local      Outside global
icmp 10.10.100.1:846   192.168.1.1:846    100.100.1.1:846    100.100.1.1:846
icmp 10.10.200.1:847   192.168.1.1:847    200.200.1.1:847    200.200.1.1:847
--- 10.10.100.1        192.168.1.1        ---                ---
--- 10.10.200.1        192.168.1.1        ---                ---

送信先(Outsideのアドレス)によって、NATアドレス(Inside global)が変わっていることが確認できます。

デバッグログ

「debug ip nat detailed」コマンドで、NATの詳細デバッグを有効にしてログを確認します。

内部サーバー→外部サーバー1への通信時

10:45:34.477: NAT: map match NAT-MAP-1
10:45:34.477:  mapping pointer available mapping:0
10:45:34.477: NAT: New entry added to map hash table
10:45:34.477: NAT*: i: icmp (192.168.1.1, 834) -> (100.100.1.1, 834) [11781]
10:45:34.477: NAT*: s=192.168.1.1->10.10.100.1, d=100.100.1.1 [11781]

内部サーバー→外部サーバー2への通信時

10:46:14.991: NAT: map match NAT-MAP-2
10:46:14.991:  mapping pointer available mapping:0
10:46:14.991: NAT: New entry added to map hash table
10:46:14.991: NAT*: i: icmp (192.168.1.1, 836) -> (200.200.1.1, 836) [62260]
10:46:14.991: NAT*: s=192.168.1.1->10.10.200.1, d=200.200.1.1 [62260]

対象のルートマップにマッチし、適切にNAT処理されていることが確認できます。

パケットキャプチャ

内部サーバー→外部サーバー1への通信時

内部サーバー側のキャプチャ

内部サーバー→外部サーバー1への通信時の内部サーバー側のキャプチャ

外部サーバー1側のキャプチャ

内部サーバー→外部サーバー1への通信時の外部サーバー1側のキャプチャ

外部サーバー1側のキャプチャでは、10.10.100.1にNATされていることが確認できます。

内部サーバー→外部サーバー2への通信時

内部サーバー側のキャプチャ

内部サーバー→外部サーバー2への通信時の内部サーバー側のキャプチャ

外部サーバー2側のキャプチャ

内部サーバー→外部サーバー2への通信時の外部サーバー2側のキャプチャ

外部サーバー2側のキャプチャでは、10.10.200.1にNATされていることが確認できます。

以上で、「Cisco機器のNAT設定 | 静的NAT(ポリシーベースNAT)」の説明は完了です!

  • URLをコピーしました!
  • URLをコピーしました!
目次