FutureNet

NXR,WXRシリーズ

NAT・フィルタ編

3. NAT/フィルタ応用設定

3-5. NATでのサーバ公開5(IP nat-loopbackの利用)設定

IP nat-loopback機能を利用してDNATで外部に公開しているサーバにルータ配下の端末からグローバルIPアドレスでアクセスする設定例です。

コンテンツ
構成図 設定フロー 設定例 設定例解説 端末の設定例 付録

 

【 構成図 】

  • IP nat-loopback機能は、グローバルIPアドレスを持つインタフェース以外からグローバルIPアドレスに対してアクセスが行われた場合、ルータ自身で受信せずに一度ルーティングテーブルに従って転送します。その後インターネット側から戻ってきたパケットをDNATすることで、NAT配下の端末からもグローバルIPアドレスに対してアクセスできるようになります。
    (☞) IP nat-loopback機能はPPPインタフェース上でのみ利用することが可能です。
  • IP nat-loopback機能を設定しているインタフェース上でステートフルパケットインスペクション(SPI)が有効な場合、フィルタ設定で通過させたいパケットをあらかじめ許可しておく、またはSPIを無効にする必要があります。
  • IP nat-loopback機能を設定しているインタフェース上では、IPマスカレード機能を有効に設定する必要があります。

 

【 設定フロー 】

 

【 設定例 】

nxrg100#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
nxrg100(config)#interface ethernet 0
nxrg100(config-if)#ip address 192.168.10.1/24
nxrg100(config-if)#exit
nxrg100(config)#ip route 0.0.0.0/0 ppp 0
nxrg100(config)#ip dnat ppp0_dnat tcp any any 192.0.2.1 80 192.168.10.10
nxrg100(config)#ip access-list ppp0_forward-in permit any 192.168.10.10 tcp any 80
nxrg100(config)#ppp account username test1@example.jp password test1pass
nxrg100(config)#interface ppp 0
nxrg100(config-ppp)#ip address 192.0.2.1/32
nxrg100(config-ppp)#ip nat-loopback
nxrg100(config-ppp)#ip dnat-group ppp0_dnat
nxrg100(config-ppp)#ip access-group forward-in ppp0_forward-in
nxrg100(config-ppp)#ip masquerade
nxrg100(config-ppp)#ip spi-filter
nxrg100(config-ppp)#ip tcp adjust-mss auto
nxrg100(config-ppp)#ppp username test1@example.jp
nxrg100(config-ppp)#exit
nxrg100(config)#interface ethernet 1
nxrg100(config-if)#no ip address
nxrg100(config-if)#pppoe-client ppp 0
nxrg100(config-if)#exit
nxrg100(config)#dns
nxrg100(config-dns)#service enable
nxrg100(config-dns)#exit
nxrg100(config)#fast-forwarding enable
nxrg100(config)#exit
nxrg100#save config

 

【 設定例解説 】

1. <LAN側(ethernet0)インタフェース設定>
nxrg100(config)#interface ethernet 0
nxrg100(config-if)#ip address 192.168.10.1/24

ethernet0インタフェースのIPアドレスを設定します。

 

2. <スタティックルート設定>
nxrg100(config)#ip route 0.0.0.0/0 ppp 0

デフォルトルートを設定します。

 

3. <DNAT設定>
nxrg100(config)#ip dnat ppp0_dnat tcp any any 192.0.2.1 80 192.168.10.10

DNAT名をppp0_dnatとします。そして宛先IPアドレス192.0.2.1,宛先TCPポート番号80のパケットの宛先IPアドレスを192.168.10.10に変換します。
(☞) DNATを設定しただけでは宛先IPアドレスの変換機能は有効になりません。宛先IPアドレスの変換を行うインタフェースでの登録が必要になります。

 

4. <IPアクセスリスト設定>
nxrg100(config)#ip access-list ppp0_forward-in permit any 192.168.10.10 tcp any 80

IPアクセスリスト名をppp0_forward-inとします。そして宛先IPアドレス192.168.10.10,宛先TCPポート番号80のパケットを許可します。
(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングを行うインタフェースでの登録が必要になります。

 

5. <PPPアカウント設定>
nxrg100(config)#ppp account username test1@example.jp password test1pass

ppp0インタフェースで使用するISP接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で指定します。

 

6. <WAN側(ppp0)インタフェース設定>
nxrg100(config)#interface ppp 0
nxrg100(config-ppp)#ip address 192.0.2.1/32

ppp0インタフェースのIPアドレスを設定します。

nxrg100(config-ppp)#ip nat-loopback

ip nat-loopback機能を有効にします。

nxrg100(config-ppp)#ip dnat-group ppp0_dnat
nxrg100(config-ppp)#ip access-group forward-in ppp0_forward-in
nxrg100(config-ppp)#ip masquerade
nxrg100(config-ppp)#ip spi-filter
nxrg100(config-ppp)#ip tcp adjust-mss auto

ppp0_dnatをDNATグループに、IPアクセスリストppp0_forward-inをforward-inフィルタに適用します。またIPマスカレード、ステートフルパケットインスペクションを有効に設定します。そしてTCP MSSの調整機能をオートに設定します。

nxrg100(config-ppp)#ppp username test1@example.jp

ISP接続用ユーザIDを設定します。
(☞) PPPアカウント設定で登録したアカウントを設定します。

 

7. <ethernet1インタフェース設定>
nxrg100(config)#interface ethernet 1
nxrg100(config-if)#no ip address
nxrg100(config-if)#pppoe-client ppp 0

PPPoEクライアントを設定します。また使用するPPPインタフェースとしてppp0を指定します。

 

8. <DNS設定>
nxrg100(config)#dns
nxrg100(config-dns)#service enable

DNSサービスを有効にします。

 

9. <ファストフォワーディング設定>
nxrg100(config)#fast-forwarding enable

ファストフォワーディングを有効にします。ファストフォワーディングを有効にすることでパケット転送を高速に処理することができます。
(☞) ファストフォワーディングの詳細および利用時の制約については、NXR,WXRシリーズのユーザーズガイド(CLI版)に記載されているファストフォワーディングの解説をご参照ください。

 

【 端末の設定例 】

端末 WWWサーバ
IPアドレス 192.168.10.100 192.168.10.10
サブネットマスク 255.255.255.0
デフォルトゲートウェイ 192.168.10.1
DNSサーバ 192.168.10.1

 

【 付録 】