【IPCOM】NATアドレス変換の状態確認。NAT失敗の原因と対策まとめ。

スポンサーリンク




ネトエンの仕事の話
  • NAT設定が正しくできているか不安
  • 通信が失敗するのでNATされているか確認したい

この記事では、そんな方にNATのアドレス変換を確認する方法を紹介します。

みずしぶき
みずしぶき

この記事を読めば、NATの成功例と失敗例を載せているので、状態がすぐに分かります。

スポンサーリンク

NAT条件

NAT変換の条件は大きく2種類

  • 送信元IPのNAT
  • 送信先IPのNAT

それぞれの設定例を紹介します。

送信元IPのNAT

interface channel0
    rule src-nat 400 192.168.1.1 to 10.1.1.1 set-org-ip
Tips
  • src-natはIPCOMで指定したインタフェースから出る時にNATされます。

送信先IPのNAT

interface channel0
    rule dst-nat 500 10.1.1.1 to 192.168.1.1
Tips
  • dst-natはIPCOMで指定したインタフェースへ入る時にNATされます。

NATを見る2つの方法 

NAT変換の情報を見る方法は2つあります。

  • IPCOM実機
  • ログサーバ ※ログ出力の設定をしている場合
NATのログ設定

IPCOMにこちらの設定があればNATのログがサーバに転送されます。

転送ログ指定いずれか1つ ※指定なしの場合は全て転送されるのでそれでもOK

filter session
filter session nat
filter message
filter message nat

転送先サーバ情報(必須)

syslog 192.168.1.100 interface channel1 protocol 514/tcp

※192.168.1.100(ログサーバのIP)

※channel1(ログサーバが接続されているインタフェース)

ログサーバ側でログ受信と保存用の設定が別途必要です。

IPCOM実機は現時点の情報しか確認できません。
ログサーバであれば過去の情報も確認できます。

現在の変換情報過去の変換情報
IPCOM実機×
ログサーバ
スポンサーリンク

【IPCOM】確認コマンド

変換前・後のIPやポートを指定して検索できます。

コマンド①:変換前IP

show nat address original 192.168.1.1

コマンド②:変換後IP

show nat address translated 10.1.1.1

コマンド③:変換前+変換後IP

show nat address original 192.168.1.1 translated 10.1.1.1

コマンド④:変換前+変換後IP+ポート

show nat address original 192.168.1.1 59000 translated 10.1.1.1 59000

結果(NAT成功)

The translation address list.
Time:xxxx/xx/xx(aaa)hh:mm:dd
----------- --------------------------------------
interface  channel0             ・・・①
rule       400                ・・・②
type       src-nat              ・・・③
protocol   tcp                ・・・④
original   192.168.1.1:59000        ・・・⑤
translated 10.1.1.1:59000          ・・・⑥
peer       10.1.1.10:21           ・・・⑦
----------- --------------------------------------
  1. IPが変換されたインタフェースです。
    src-natならIPCOMから出ていくインタフェースで、dst-natならIPCOMに入るインタフェースになります。
    コンフィグの「interface channel0」にあたります。
  2. NATルール番号です。
    この例の場合コンフィグを見るとinterface channel0の中に「rule src-nat 400 192.168.1.1 to 10.1.1.1 set-org-ip」と書かれているはずです。
  3. 送信元・送信先どちらのIPを変換するか書かれています。
    この例の場合コンフィグを見るとinterface channel0の中に「rule src-nat 400 192.168.1.1 to 10.1.1.1 set-org-ip」と書かれているはずです。
  4. 実際に送られてきたパケットのプロトコルタイプです。
  5. 変換前のIPアドレスとそのポート番号です。
    src-natの場合は送信元のポート番号が表示されるので、1024より大きい値になっていることがほとんどです。
  6. 変換後のIPアドレスとそのポート番号です。
    src-natやdst-natの場合はポート変換は行わないので⑤と同じポート番号になります。
  7. 実際に送られてきたパケットの宛先IPアドレスです。
    NAT変換に直接影響はありません。

結果(NAT失敗例)

The translation address list.
Time:xxxx/xx/xx(aaa)hh:mm:dd
----------- --------------------------------------
no information
----------- --------------------------------------

【ログサーバ】確認コマンド

ログはLinux系のサーバにテキストで保存されることが多いので、その例を紹介します。
ログサーバの例

  • サーバOS     ・・Linux系
  • ログファイル形式 ・・テキスト

確認コマンド

cat filename | grep mapping | grep 192.168.1.1

Linuxのコマンドを組み合わせています。

  • cat  ・・テキストファイルの内容を表示
  • |   ・・パイプ(条件を追加する)
  • grep ・・指定文字の行を検索

結果(送信元NAT成功)

Mar dd hh:mm:ss hostname IPCOM: nat: INFO[00606002]: Address mapping src=192.168.1.1:51000->10.1.1.1:51000 dst=10.1.1.10:21 proto=tcp interface=channel1 rule=400

結果(送信先NAT成功)

Mar dd hh:mm:ss hostname IPCOM: nat: INFO[00606002]: Address mapping src=10.1.1.10:21 dst=10.1.1.1:51000->192.168.1.1:51000 proto=tcp interface=channel1 rule=400
スポンサーリンク

NAT失敗の原因・対策

NATを含む通信失敗の原因は大きく4つです。

  • インタフェースの誤り
  • 変換前IPの重複
  • ファイアウォール設定の誤り
  • ルーティングの誤り

①インタフェースの誤り

NATのインタフェースは下記ルールで設定します。

  • src-natはIPCOMから出ていくインタフェース
  • dst-natはIPCOMに入るインタフェース

この図はsrc-natしています。この時は●がある方、パケットが出ていくインタフェースになります。

行き

送信元
192.168.1.1

パケット(変換前)

【送信元IP】
192.168.1.1
【送信先IP】
10.1.1.10

IPCOM

パケット(変換後)

【送信元IP】
192.168.1.1→10.1.1.1
【送信先IP】
10.1.1.10

送信先
10.1.1.10

②変換前IPの重複

こんな設定をしたとします。

interface channel0
    rule src-nat 400 192.168.1.1 to 10.1.1.1 set-org-ip
    rule src-nat 410 192.168.1.1 to 10.1.1.2 set-org-ip

変換前のIPが同じです。

この場合はNAT番号が若い方が優先されます。
送信元IPが同じなので400の方が適用されてNATのチェックは終わります。410は使われません。

interface channel0
    rule src-nat 400 192.168.1.1 to 10.1.1.1 set-org-ip ←こっちが適用
    rule src-nat 410 192.168.1.1 to 10.1.1.2 set-org-ip ←使われない

④ルーティングの誤り

送信元IPの変換を行う場合、ルーティングによる影響が出る可能性があります。

ルーティング誤りによる失敗原因

送信元IPの変換を行なってもルーティングには影響しません。なので行きの通信は送信先に届きます。

行き

送信元
192.168.1.1

パケット(変換前)

【送信元IP】
192.168.1.1
【送信先IP】
10.1.1.10

IPCOM

パケット(変換後)

【送信元IP】
192.168.1.1→10.1.1.1
【送信先IP】
10.1.1.10

送信先
10.1.1.10

そして戻ってくる時は、送信元と送信先が入れ替わります。10.1.1.1が送信先IPになります。
この10.1.1.1がIPCOMに届くように経路のルーティング装置の設定をしましょう。

戻り

送信先
192.168.1.1

パケット(変換後)

【送信元IP】
10.1.1.10
【送信先IP】
192.168.1.1

IPCOM

パケット(変換前)

【送信元IP】
10.1.1.10
【送信先IP】
10.1.1.1

送信
10.1.1.10

まとめ

NATのアドレス変換を確認する方法を紹介しました。
NATは送信元・送信先と2つ変換ポイントがあるので整理が難しい仕組みです。何を確認するのか明確にしてから情報を確認しましょう。

PowerAutomateのおすすめ記事
人気ページ
Apply to eachの使い方
アレイのフィルター処理の使い方
日付関数の使い方
エラーを無視する方法
メールの内容をExcelへ転記
メール本文から名前を抽出

>>PowerAutomateの記事一覧を見る<<

お気に入り必須!公式ページ
Microsoft Power Automate
式関数のリファレンス
コネクタのリファレンス
Excel Online (Business)のリファレンス

最後まで読んで頂き、ありがとうございます。

「この記事が参考になった」「お礼でコーヒー代をプレゼントしよう」という方がいましたらチップ(15円〜)をお願いいたします。

Amazonギフト券- Eメールタイプ - Amazonベーシック

メールのあて先は 「mizusibuki8080@gmail.com」です。
※上記のアドレスは投げ銭受け取り専用です。他のメールは受け取れない設定にしてあるのでご注意ください。

ネトエンの仕事の話
ネットワークエンジニアになった人
タイトルとURLをコピーしました