この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、CUBE(Cisco Unified Border Element)として動作しているルータでの NAT(ネットワークアドレス変換)動作、CME または CUCME(Cisco Unified Cummunication Manager Express)、ゲートウェイおよび CUSP(Cisco Unified SIP Proxy)について説明します。
次の項目に関する知識があることが推奨されます。
このドキュメントの情報は、次に基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
ネットワーク アドレス変換は、異なるアドレス空間を使用してネットワーク間を行き来するパケットの IP アドレスを変換する一般的な手法です。このドキュメントの目的は、NAT を再確認することではありません。シスコの VoIP ネットワークで使用される NAT の包括的な評価を行います。 さらに、範囲は MS 音声テクノロジーを構成するコンポーネントに限定しています。
図 1:
注:NATは、プライベートアドレス空間を使用してIPパケットをネットワークにルーティングする際の補助手段と考えると役立つ場合があります。つまり、NAT はルーティングできないアドレスをルーティング可能にします。
図 2 は、次の図で参照されるトポロジを示しています。
図 2
この用語集は、NAT の
注:これらの用語を理解してください。NAT のメモやドキュメントはこれらを参照しています。
これは NAT の最もシンプルな形式で、各々の内部アドレスは静的に外部アドレスに変換されます(その逆も同様です)。
図 3
上記の変換のための設定の CLI は次のとおりです。
interface Ethernet0/0
ip address 10.1.1.3 255.255.255.0
ip nat inside
!
interface Serial0/0
ip address 200.1.1.251 255.255.255.252
ip nat outside < – 必須![2]
ip nat inside source static 10.1.1.2 200.1.1.2
ip nat inside source static 10.1.1.1 200.1.1.1
ダイナミック NAT では、各内部ホストはアドレス プールからのアドレスにマッピングされます。
次の CLI は、ダイナミック NAT の設定を示しています
(IP アドレスの)プールが、変換される必要のあるアドレスのセットより小さい場合、この機能が役立ちます。
図 4 は PAT を示しています。
図 4
シスコの NAT 導入は、オプションのホストが非常に多様です。少数については下記で示していますが、拡張の詳細な一覧については、「http://www.cisco.com/en/US/partner/technologies/tk648/tk361/tk438/technologies_white_paper09186a0080091cb9.html 」を参照してください。
NAT 用語のピンホールは、<host IP port> および <global address, global port> タプル間のマッピングを参照します。 これによって、NAT デバイスは受信メッセージの(グローバル ポートとなる)宛先ポート番号を使用し、セッションを発信したホスト IP およびポートに宛先をマッピングし直すことができます。ピンホールは不使用期間後にタイムアウトし、パブリック アドレスは NAT プールに戻されることに注意してください。
では、VoIP ネットワークにおける NAT の問題や関心事項は何ですか。もちろん、これまでディスカッションしてきた(基本的な NAT と呼ばれる)NAT は IP パケットのヘッダー内の IP アドレスのみを変換し、チェックサムを再計算することを思い起こしてください。ですが、VoIP シグナリングは、シグナリング メッセージの本文に組み込まれたアドレスを運びます。つまり、レイヤ 5 で発生することです。
図 5 は、組み込まれた IP アドレスが変換されないままにされている影響を示しています。コール シグナリングは正常に完了していますが、サービス プロバイダーの SIP プロキシは、コール エージェントにより送信されたメディアのアドレスにメディア パケット(RTP)をルーティングしようとするのに失敗しています。
図 5:
もう 1 つの例は、SIP エンドポイントの SDP の [Contact:]フィールドの使用です。これは、エンドポイントが新しい要求のシグナリング メッセージを受信することを希望するアドレスに通信するために行います。
これらの問題は、アプリケーション レイヤ ゲートウェイ(ALG)という機能によって処理されます。
ALG は、(たとえば SIP)をサポートし、プロトコル パケット検査およびそれを介したトラフィックの「フィックスアップ」を行う、特定のアプリケーションで使用されるプロトコルを理解しています。さまざまなフィールドが SIP コール シグナリングに対してフィックスアップされる仕組みの詳細については、「http://www.voip-info.org/wiki/view/Routers+SIP+ALG」を参照してください。
シスコのルータでは、ALG SIP のサポートは、標準の TCP ポート 5060 でデフォルトで有効にされています。SIP シグナリングに対して標準でないポートをサポートするためには、ALG を設定することができます。「http://www.cisco.com/en/US/docs/ios-xml/ios/ipaddr_nat/configuration/15-mt/nat-tcp-sip-alg.html」を参照してください。
注意:注意が必要です。さまざまな VoIP プロトコルに対して、組み込まれたどのフィールドが変換される必要があるかを詳述する RFC や他の標準はありません。その結果、実装は機器のベンダー間で異なり、相互運用性の問題(および TAC のケース)を招いてます。
ゲートウェイは、定義上は、IP-to-IP デバイスではないため、NAT は適用されません。
ドキュメントのこのセクションでは、CME とのコール シナリオを再確認し、なぜ NAT を使用する必要があるかを理解します。
シナリオ 1ローカル フォン
シナリオ 2 リモート フォン(パブリック IP アドレスを持つ)
シナリオ 3 リモート テレワーカー
注:すべての場合、音声を流すためには、CMEのIPアドレスがルーティング可能である必要があります
このシナリオ(図 6)では、コールに関連する 2 台の電話は、プライベート IP アドレスを持つ skinny フォンです。
図 6
注:同じCMEシステム内の別のSkinny電話機とのコールで接続されているSkinny電話機は、メディアパケットを別の電話機に直接送信することに注意してください。つまり、ローカル フォンどうしの RTP は、CME を通過しません。
したがってこの場合では、NAT は適用されないか必要とされません。
注:CMEは、コールに関係する2台の電話が両方ともskinnyと同じネットワークセグメント内にあるかどうかに基づいて、メディア(RTP)を直接実行する必要があるかどうかを判断します。そうでない場合は、CME は RTP パスに自身を挿入します。
このシナリオ(図 7)では、CME は、電話からの RTP が CME で終了されるように RTP ストリームに自身を挿入します。CME は、他の電話へのストリームを再発信します。CME は、内部(プライベート)ネットワークおよび外部ネットワーク両方の一員であり、その内部アドレスを内部の電話に、外部(パブリック)アドレスを外部の電話に送信するため、ここでも NAT は不要です。
ただし、UDP/TCP ポートは(RTP だけでなくシグナリングも)、リモート IP フォンと CME 送信元 IP アドレス間でオープンである必要があることに注意してください。これは、ファイアウォールまたはその他のフィルタリング デバイスは、問題になっているポートを許可するように設定されるということです。
図 7
注:シグナリング[メッセージ]は常にCMで終端されることに注意してください
これは WAN を超えて CME に接続する IP フォンを参照し、CME ルータからリモートにあるオフィスを持つテレワーカーをサポートします。最も一般的な設計は、ルーティング可能な IP アドレスを持つ電話と、プライベート IP アドレスを持つ電話を必要とするものです。
コールに関わる両方の電話がパブリックで、ルーティング可能な IP アドレスで設定されると、メディアは図 8 の電話間で直接フローできます。 したがって、再度、NAT は必要ではありません。
図 8
このシナリオでは、コールはプライベート IP アドレスで設定された skinny 電話間で信号が送信されます。 ホーム オフィス(SOHO)のルータは、一般に「SCCP 認識型」ではない傾向があります。つまり、SCCP メッセージに組み込まれた IP アドレスの変換ができません。これは、コールのセットアップ完了時に、電話は相互のプライベート IP アドレスで終了することを意味しています。 両方の電話がプライベートであるため、CME は、音声が電話間で直接フローするように、それらの間でコールに信号を送ります。ただし、次の回避策のいずれかを実行しない限り、片方向または無方向の音声が発生します(プライベートIPアドレスは定義上、インターネット上でルーティングできません)。
·SOHO ルータでスタティック ルートを設定する
·電話に IPsec VPN 接続を確立する
これを解決するより優れた方法は、「mtp」を設定することです。mtp コマンドによって、リモート フォンからのメディア(RTP)パケットが CME ルータを介してトランジットされるようになります(図 9)。
図 9
「mtp」ソリューションは、ファイアウォール ポートを開通した複雑さゆえに優れています。WAN を超えてフローするメディア パケットは、ファイアウォールによって遮断される場合があります。これはファイアウォールでポートを開く必要があるということですが、どのポートでしょうか。CME が音声をリレーしていれば、ファイアウォールは RTP パケットを通過させるように簡単に設定することができます。 CME ルータは、特定の UDP ポート(2000)をメディア パケット用に使用します。したがって、ポート 2000 へ、およびポート 2000 からパケットを許可するだけで、すべての RTP トラフィックが通過できます。
図 10 では mtp を設定する方法を示しています。
ephone 1
mac 1111.2222.3333
type 7965
mtp
button 1:1
図 10
mtp ですべてがうまくいくとは限りません。mtp が望ましくない場合がある状況があります。
マルチキャスト パケットを転送できる WAN 設定があり、ファイアウォールを介して RTP パケットを許可できる場合は、MTP を使用しないように決定できます。
SIP フォンが上述のシナリオで述べられなかったことに注意してください。これは、電話の 1 つが SIP フォンである場合、CME は音声パスに自身を挿入するという事実によるためです。つまり、NAT が不要な、上述されている local-to-remote のシナリオになります。
CUBE は、すべてのセッションを終了し再発信して、NAT および PAT 機能を本質的に実行します。CUBE は、自身のアドレスを通信相手のエンドポイントのアドレスに代替し、効率的にこのエンドポイントのアドレスを非表示に(変換)します。
したがって、NAT は CUBE 機能では必要ありません。NAT が CUBE で必要な VoIP サービスのシナリオを、次のセクションで説明します。
ホスト型テレフォニー サービスの簡単なバックグラウンドがわかれば、この機能の原理を理解できます。
ホスト型テレフォニー サービスは、ほとんどの周辺機器がサービス プロバイダーの場所にある VoIP サービスの新しい形式です。これらは、基本的な NAT のみ(つまり L3/L4 での NAT)を実装するホーム ゲートウェイ(HGW)と連携します。たとえば、Verizon は自宅で FiOS サービスを提供する光ネットワーク ターミナル(ONT)をインストールします。音声コールは、ONT に組み込まれている SIP プロセスを使用して信号が送信されます。SIP シグナリングは、Verizon のプライベート IP ネットワークを新しいソフト スイッチに作り直し、サービスと制御を提供して、他の FiOS のデジタル音声の顧客または従来の電話の顧客に対して音声通信を確立します。
ホスト型テレフォニー サービス用の主要プロバイダーの要件を次に示します。
上述を前提とすると、このようなサービスを実装するのにどのようなオプションがありますか。
NAT SBC オプションは、上記のプロバイダー要件を満たしています。
NAT SBC は次のように機能します(図 11)。
図 11
一般的な NAT SBC の設定例は次のとおりです。
ip nat sip-sbc
proxy 200.200.200.10 5060 15.3.33.22 5060 protocol udp
call-id-pool call-id-pool
session-timeout 300
mode allow-flow-around
override port
!
ip nat pool sbc1 15.3.33.61 15.3.33.69 netmask 255.255.0.0
ip nat pool sbc2 15.3.33.91 15.3.33.99 netmask 255.255.0.0
ip nat pool call-id-pool 1.1.1.1 1.1.255.254 netmask 255.255.0.0
ip nat pool outside-pool 200.200.200.100 200.200.200.200 netmask 255.255.255.0
ip nat inside source list 1 pool sbc1 overload
ip nat inside source list 2 pool sbc2
ip nat outside source list 3 pool outside-pool add-route
ip nat inside source list 4 pool call-id-pool
!
access-list 1 permit 10.1.1.0 0.0.0.255
access-list 1 permit 171.1.1.0 0.0.0.255
access-list 2 permit 20.1.1.0 0.0.0.255
access-list 2 permit 172.1.1.0 0.0.0.255
access-list 3 permit 15.4.0.0 0.0.255.255
access-list 3 permit 15.5.0.0 0.0.255.255
access-list 4 permit 10.1.0.0 0.0.255.255
access-list 4 permit 20.1.0.0 0.0.255.255
図 13 と図 14 では変換に関するコール フローを示します。次の点に注意する必要があります。
--SIP フォン A – 15.3.33.62 2001
--SIP フォン B – 15.3.33.62 2002
図 13
図 14
以前のバージョン(SBC NATの)では、SIPエンドポイントはキープアライブパケットを送信して、SIP登録ピンホールを開いたままにしておく(着信コールなどのトラフィックをout->inフローに許可する)必要がありました。キープアライブパケットは、エンドポイントまたはレジストラ(ソフトスイッチ)によって送信された任意のSIPパケットである可能性があります。 最新のバージョンではこの必要性が取り除かれ、ピンホールを開けたままにするため、(ソフト スイッチとは対照的に)NAT-SBC 自体によるエンドポイントの頻繁な再登録が強制されています。
注:期限切れの登録ピンホールの兆候は、コール シグナリングがランダムに失敗し、不明瞭である場合があります。
CUSPは論理ネットワークという概念を持っています。論理ネットワークとは、同様に扱われるローカルインターフェイスの集合を指します(たとえば、 インターフェイス、ポート、トランスポート(リスニング用)ルーティングの目的で使用されます。論理ネットワークを CUSP で設定する場合、NAT を使用するように設定できます。設定されると、SIP ALG が自動的に有効になります。これは特定の論理ネットワークの場合に便利です。
一方向または両方向でコールが失敗するのは、明らかな症状である場合があります。より明らかでない症状には次があります。
複数のシナリオのデバッグ出力を次に示します。これらはほとんど説明を必要としません。
基本的な NAT の設定とデバッグ行を次に示します。
debug ip nat sip からの出力行を示します。この場合、送信パケットに組み込まれている IP アドレスが変換されます。
概要:
VoiP と NAT
NAT 機能のマトリックス
ホスト型 NAT トラバーサル:
NAT SBC
ALG:
CME
改定 | 発行日 | コメント |
---|---|---|
1.0 |
23-May-2017 |
初版 |