Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

ALG の概要

ALG の説明

このトピックでは、Junos OS でサポートされているアプリケーション層ゲートウェイ (ALG) について説明します。ALG のサポートには、サポートされている ALG のピンホールと親子関係の管理が含まれます。

サポートされているALG

表 1 は、Junos OS でサポートされている ALG の一覧です。MS-DPC、MS-MPC、MS-MIC でサポートされている ALGについては、 Junos OS Address Aware NATで利用可能なALGを参照してください。

表 1: Junos OS でサポートされている ALG

サポートされるALG

v4 - v4

v6 - v4

v6 - v6

DS-Lite(Junos OSリリース18.1R1から、MS-MPCおよびMS-MICでのDS-liteを使用したALGのサポートが開始されます)

基本的なTCP ALG

はい

はい

はい

はい

ベーシックUPD ALG

はい

はい

はい

はい

Bootp

はい

いいえ

いいえ

いいえ

DCE RPC サービス

はい

いいえ

いいえ

いいえ

Dns

はい

はい

いいえ

はい

Ftp

はい

○(Junos OSリリース14.1R1以降)

いいえ

はい

ゲートキーパーRAS

○(Junos OSリリース17.1R1以降)

○(Junos OSリリース17.2R1以降)

いいえ

いいえ

H323

はい

○(Junos OSリリース17.2R1以降)

いいえ

いいえ

Icmp

はい

はい

はい

はい

IKE ALG(Junos OSリリース14.2R7、15.1R5、16.1R2、17.1R1以降)

はい

はい

いいえ

いいえ

Iiop

はい

いいえ

いいえ

いいえ

Ip

はい

いいえ

いいえ

いいえ

Netbios

はい

いいえ

いいえ

いいえ

ネットショー

はい

いいえ

いいえ

いいえ

Pptp

はい

○(Junos OSリリース14.1R1以降)

いいえ

はい

リアルオーディオ

はい

いいえ

いいえ

いいえ

Sun RPCおよびRPCポートマップサービス

はい

いいえ

いいえ

いいえ

Rtsp

はい

○(Junos OSリリース14.1R1以降)

いいえ

はい

Sip

はい

○(Junos OSリリース14.1R1以降)

いいえ

Junos OS Release 18.2R1以降、MS-MPCおよびMS-MIC上のDS-LiteでサポートされるSIP。

Snmp

はい

いいえ

いいえ

いいえ

ティッカー

はい

いいえ

いいえ

いいえ

Tftp

はい

○(Junos OSリリース14.1R1以降)

いいえ

はい

Traceroute

はい

はい

いいえ

はい

Unix リモート シェル サービス

はい

いいえ

いいえ

いいえ

ウィンフレーム

はい

いいえ

いいえ

いいえ

ALG サポートの詳細

このセクションでは、ALG の詳細について説明します。これには次のものが含まれます。

基本的なTCP ALG

この ALG は、TCP パケットの基本的なサニティ チェックを実行します。エラーが検出されると、次の異常イベントとシステムログメッセージが生成されます。

  • TCP 送信元または宛先ポート 0

  • TCP ヘッダー長のチェックに失敗しました

  • TCP シーケンス番号が 0 で、フラグが設定されていない

  • TCP シーケンス番号 0 と FIN/PSH/RST フラグが設定されている

  • TCP FIN/RST または SYN(URG|フィン|RST) フラグが設定されます

TCP ALG は、次の手順を実行します。

  1. ルーターが SYN パケットを受信すると、ALG は TCP の順方向および逆方向のフローを作成し、 カンバセーション内でグループ化します。TCP スリーウェイ ハンドシェイクを追跡します。

  2. SYN 防御メカニズムは、TCP 接続の確立状態を追跡します。TCP セッションは、短い時間間隔 (現在は 4 秒) 内に確立されることを想定しています。その時間内にTCPスリーウェイハンドシェイクが確立されない場合、セッションは終了します。

  3. キープアライブ メカニズムは、応答しないエンドポイントとの TCP セッションを検出します。

  4. ICMP エラーは、フローが ICMP データで指定されたセレクター情報と一致する場合にのみ許可されます。

基本的な UDP ALG

この ALG は、UDP ヘッダーの基本的なサニティ チェックを実行します。エラーが検出されると、次の異常イベントとシステムログメッセージが生成されます。

  • UDP 送信元または宛先ポート 0

  • UDP ヘッダー長のチェックに失敗しました

UDP ALG は以下のステップを実行します。

  1. 最初のパケットを受信すると、ALGは双方向フローを作成し、UDPセッションの正方向および逆方向のセッショントラフィックを受け入れます。

  2. 最大許容アイドル時間(デフォルトは 30 秒)を超えてセッションがアイドル状態になると、フローが削除されます。

  3. ICMP エラーは、フローが ICMP データで指定されたセレクター情報と一致する場合にのみ許可されます。

Bootp

ブートストラップ プロトコル (BOOTP) クライアントは、ネットワーク経由でサーバーからネットワーク情報を取得します。一般的なブロードキャスト メッセージを送信して、BOOTP サーバーから返される情報を要求します。プロトコルの仕様については、を参照してください ftp://ftp.isi.edu/in-notes/rfc951.txt

ステートフルファイアウォールをサポートするには、UDP サーバーポート67およびクライアントポート68でBOOTP ALGを構成する必要があります。クライアントがブロードキャスト メッセージを送信する場合は、サービス ルールの from ステートメントでブロードキャスト アドレスを構成する必要があります。NAT ルールがトラフィックと一致しても、BOOTP トラフィックではネットワーク アドレス変換(NAT)は実行されません。ルータで BOOTP リレー機能が有効化されている場合、リモート BOOTP サーバは NAT 変換によってマスクされたクライアントにアドレスを割り当てると見なされます。

DCE RPC サービス

分散コンピューティング環境 (DCE) リモート プロシージャ コール (RPC) サービスは、主にマイクロソフトのアプリケーションによって使用されます。ALG は、ポート マッピング サービスに既知の TCP ポート 135 を使用し、プログラム番号の代わりにユニバーサル一意識別子 (UUID) を使用してプロトコルを識別します。主なアプリケーション ベースの DCE RPC は、Microsoft Exchange プロトコルです。

ステートフル ファイアウォールと NAT サービスをサポートするには、TCP ポート 135 で DCE RPC ポートマップ ALG を構成する必要があります。DCE RPC ALG は、アプリケーション固有の UUID で TCP プロトコルを使用します。

Dns

通常、ポート 53 で実行されるドメイン ネーム システム (DNS) は、ドメイン名の検索と IP アドレスへの変換に関連するデータを処理します。MX シリーズ DNS ALG は、DNS クエリーと応答パケットを監視し、UDP と TCP DNS トラフィックを個別にサポートします。DNS ALGはNATのペイロード変換をサポートしていませんが、オペレーターはこれを使用して、DNSサーバーが応答を送信した後、NATまたはステートフルファイアウォールDNSセッションをメモリから効率的に削除できます。DNS ALG は、応答を受信した場合、またはアイドル タイムアウトに達した場合にのみセッションを閉じます。

DNS トラフィックが標準の要求および応答の種類だけではない場合、TCP-DNS-ALG を使用すると、TCP DNS トラフィックに問題がある可能性があります。たとえば、TCP-DNS-ALG は、DNS レプリケーションやゾーン転送など、TCP を使用する DNS サーバー間通信を中断する可能性があります。TCPハンドシェイクが完了し、各サーバーが1つのパケットをもう1つのパケットに送信した後にTCP-DNS-ALGがセッションを閉じるため、このタイプのトラフィックはNATまたはステートフルファイアウォールプラグインによってドロップされる可能性があります。このような場合は、TCP-DNS-ALG を使用しないでください。

メモ:

TCP-DNS-ALG は、MS-DPC サービス カードではサポートされていません。

Ftp

FTP は、RFC 959 で指定されたファイル転送プロトコルです。メインの制御接続に加えて、クライアントとサーバー間のデータ転送に対してもデータ接続が行われます。ホスト、ポート、および方向は、制御チャネルを介してネゴシエートされます。

非パッシブモードFTPの場合、Junos OSステートフルファイアウォールサービスは、クライアントがクライアントからサーバーへのアプリケーションデータをスキャンして、サーバーが接続するIPアドレスとポート番号を提供するPORTコマンドを探します。パッシブモードFTPの場合、Junos OSステートフルファイアウォールサービスは、PASVコマンドのクライアントからサーバーへのアプリケーションデータをスキャンし、次にサーバーからクライアントへの応答をスキャンして、クライアントが接続するIPアドレスとポート番号を含む227応答を探します。

さらに複雑な問題があります:FTPはこれらのアドレスとポート番号をASCIIで表します。その結果、アドレスとポートが書き換えられると、TCP シーケンス番号が変更される可能性があり、その後、NAT サービスは、後続のすべてのパケットに対してシーケンス NAT を実行することによって、SEQ 番号と ACK 番号のこのデルタを維持する必要があります。

ステートフル ファイアウォールと NAT サービスをサポートするためには、TCP ポート 21 で FTP ALG を構成して FTP 制御プロトコルを有効にする必要があります。ALG は次のタスクを実行します。

  • 動的データ接続用のデータポートとファイアウォール権限を自動的に割り当てます

  • 動的にネゴシエートされたデータ接続のフローを作成します。

  • アクティブモードとパッシブモードの両方で制御接続を監視します

  • 制御パケットを適切なNATアドレスとポート情報で書き換えます。

MS-MPC、MS-MIC では、FTP アプリケーション層ゲートウェイ(ALG)を有効にせずに(および [edit services nat rule rule-name term term-name from] 階層レベルで ステートメントを指定しapplication junos-ftpないことによって)パッシブ FTP が正しく動作するためには、アドレス プーリング ペア(APP)機能を有効にする必要があります(階層レベルで ステートメント[edit services stateful-firewall rule rule-name term term-name from][edit services nat rule rule-name term term-name then translated]を含めるaddress-poolingことによって)。このような構成では、データ FTP セッションと制御 FTP セッションが同じ NAT アドレスを受信します。

ゲートキーパーRAS

Junos OS リリース 17.1R1 以降、ゲートキーパーの登録、管理、ステータス(RAS)ALG により、H.323 コールのゲートキーパー モードを完全にサポートできるようになりました。エンドポイントはゲートキーパーに登録し、その管理を要求します。コールを発信する前に、エンドポイントはゲートキーパーにコールの発信許可を求めます。登録フェーズと承認フェーズの両方で、RAS チャネルが使用されます。IPv4 および IPv6 ステートフルファイアウォールルールまたは NAPT-44 ルールでは、ゲートキーパー RAS ALG および H323 ALG を使用します。Junos OS リリース 17.2R1 以降では、NAT-64 ルールもサポートされます。Junosのデフォルトアプリケーションセット junos-h323-suite には、H323 ALGとゲートキーパーRAS ALGが含まれています。

H323

H323は、音声およびビデオ会議およびコラボレーションアプリケーション向けのITUプロトコルスイートです。H323は、H.225コールシグナリングプロトコルとメディア通信用のH.245制御プロトコルで構成されています。H.225 ネゴシエーション中に、エンドポイントは制御チャネルでコール シグナリング メッセージを交換してコールを作成し、H.245 の新しい制御チャネルをネゴシエートします。H.245 メッセージに対して新しい制御接続が作成されます。メッセージは H.245 制御チャネルで交換され、メディア チャネルを開きます。

ステートフルファイアウォールは、H.225制御チャネルを監視して、H.245制御チャネルを開きます。H.245 チャネルが作成されると、ステートフル ファイアウォールはこのチャネルのメディア チャネル情報も監視し、メディア トラフィックがファイアウォールを通過できるようにします。

H323 ALG は、H.225 および H.245 メッセージ内の適切なアドレスとポートを書き換えることにより、静的宛先、静的、動的送信元 NAT をサポートします。

H.323 コールのゲートキーパー モードをサポートするには、IPv4 および IPv6 ステートフル ファイアウォール ルールまたは NAPT-44 ルールで H323 ALG とゲートキーパー RAS ALG を使用します。Junos OS リリース 17.2R1 以降では、NAT-64 ルールもサポートされます。Junosのデフォルトアプリケーションセット junos-h323-suite には、H323 ALGとゲートキーパーRAS ALGが含まれています。

Icmp

Internet Control Message Protocol(ICMP)は、RFC 792で定義されています。Junos OSステートフルファイアウォールサービスでは、ICMPメッセージを特定のタイプまたは特定のタイプコード値でフィルタリングできます。特別に設定されたタイプとコードがない ICMP エラー パケットは、反対方向の既存のフローと照合され、エラー パケットの正当性が確認されます。フィルター一致を通過した ICMP エラー パケットは、NAT 変換の対象となります。

ICMP ALGは、ICMPシーケンス番号を使用して、常にpingトラフィックをステートフルに追跡します。各エコー応答は、対応するシーケンス番号を持つエコー要求がある場合にのみ転送されます。どの ping フローでも、エコー応答を受信せずに転送できるエコー要求は 20 個のみです。ダイナミックNATを設定すると、NATプール内の他のホストが同じ識別子を使用できるように、PINGパケット識別子が変換されます。

ステートフル ファイアウォールと NAT サービスをサポートするためには、プロトコルが必要な場合は ICMP ALG を設定する必要があります。追加のフィルタリング用に ICMP タイプとコードを設定できます。

Iiop

Oracle Application Server Name Server Internet Inter-ORB Protocol(IIOP)。この ALG は、分散コンピューティングに基づく共通オブジェクト リクエスト ブローカー アーキテクチャ (CORBA) で使用されます。CORBA および IIOP はオブジェクト管理グループ (OMG) 標準ですが、IIOP には固定ポートが割り当てられていません。CORBA を実装する各ベンダーがポートを選択します。Java仮想マシンはデフォルトでポート1975を使用しますが、ORBIXはデフォルトでポート3075を使用します。

ステートフルファイアウォールとNATを使用するには、Java VM IIOP用のTCPポート1975と、Iona TechnologiesのCORBAフレームワークであるORBIX用のTCPポート1975用にALG IIOPを設定する必要があります。

IKE ALG

Junos OS リリース 17.4R1 以前は、MX シリーズ ルーターの Junos VPN Site Secure IPsec 機能スイートでは、ネットワーク アドレス変換トラバーサル(NAT-T)はサポートされていません。Junos OS Release 14.2R7、15.1R5、16.1R2、17.1R1以降、IKE ALGでは、NAT-Tに準拠していないIPsecピア間で、NAPT-44およびNAT64ルールを介してIKEv1およびIPsecパケットを渡すことができます。この ALG は、ESP トンネル モードのみをサポートします。

この ALG を NAT ルールで使用し、UDP プロトコルとポート 500 を指定します。

この ALG は、次の処理を実行します。

  • IKEv1 接続開始要求を追跡して、NAT 処理が必要かどうかを判断します。

  • IKEv1 の送受信要求に対して NAT 変換を実行し、IKE セッションを作成します。

  • 確立された IKE セッションに関連する IPsec パケットを識別し、ピア間にセキュリティ アソシエーションを確立します。

  • IPsec パケットの NAT 変換を実行します。

Ip

IP ALGは、単方向フローの作成にのみ使用されます。TCPトラフィックの場合、3ウェイハンドシェイクプロセスはチェックされません。この ALG は、ステートフル ファイアウォールのみのサービス セットで、トラフィックが一方向にのみ流れるようにする場合に便利です。と組み合わせて match-direction input-output 構成すると、リターントラフィックがステートフルファイアウォールも通過できるようになります。一般的なシナリオとしては、静的 NAT、宛先 NAT、または非対称ルーティングが存在する場合にトラフィックがステートフル ファイアウォールを通過することが予想されるシナリオが挙げられます。Junos IP ALGは、ドロップフローの作成によって一致するトラフィックが破棄されるNAPTでの使用を目的としていません。

Netbios

NetBIOS ALG は、NAT の使用時に NetBIOS の IP アドレスとポート番号を変換します。

NetBIOS は、TCP および UDP トランスポート プロトコルをサポートしています。ステートフル ファイアウォールと NAT サービスをサポートするには、UDP ポート 138 および TCP ポート 139 で NetBIOS ALG を構成する必要があります。

ネットショー

Microsoftプロトコルms-streaming は、MicrosoftのメディアサーバーであるNetShowで使用されています。このプロトコルは、TCP、UDP、および HTTP という複数のトランスポート プロトコルをサポートしています。クライアントはポート 1755 で TCP 接続を開始し、PORT コマンドをサーバーに送信します。次に、サーバーはそのポートでクライアントに対してUDPを開始します。ステートフルファイアウォールとNATサービスをサポートするためには、UDPポート1755でNetShow ALGを設定する必要があります。

ONC RPCサービス

オープン ネットワーク コンピューティング(ONC)RPC サービスは、DCE RCP サービスと同様に機能します。ただし、ONC RPC ALG はポート マッピング サービスに TCP/UDP ポート 111 を使用し、UUID ではなくプログラム番号を使用してプロトコルを識別します。

ステートフル ファイアウォールと NAT サービスをサポートするには、TCP ポート 111 で ONC RPC ポートマップ ALG を構成する必要があります。ONC RPC ALG は、アプリケーション固有のプログラム番号を持つ TCP プロトコルを使用します。

Pptp

ポイントツーポイントトンネリングプロトコル(PPTP)ALGは、TCPベースのALGです。PPTPを使用すると、ポイントツーポイントプロトコル(PPP)をIPネットワークを介してトンネリングできます。PPTP は、クライアント サーバー アーキテクチャ、PPTP ネットワーク サーバー、および PPTP アクセス コンセントレータを定義します。PPTP ALG には、制御接続とデータ トンネルが必要です。制御接続は、TCP を使用して PPP セッションを確立および切断し、ポート 1723 で実行されます。データトンネルは、IP上で伝送される汎用ルーティングカプセル化(GRE)パケットでPPPトラフィックを伝送します。

リアルオーディオ

Real Networks PNA プロトコル RealVideo は独立したサービスではありません。これはRealPlayerの一部であり、ほとんどの場合、ビデオに別のチャネルを使用します。RealPlayer バージョン G2、7、および 8 では、PNA と RTSP が使用されています。このバージョンが機能するためには、ALG は PNA(7070) と RTSP(554) の両方を許可する必要があります。メディアの場合、サーバーは UDP ポート (6970 から 7170)、TCP ポート 7071、または HTTP の範囲から選択します。クライアントは、特定のポートを使用するように構成できます。RealPlayer バージョン 4.0 および 5.0 では、コントロール チャネル 7070 メディア UDP ポート 6970 から 7170、TCP ポート 7071、または HTTP を使用します。RealAudio プレーヤー バージョン 3.0 は、コントロール チャネル 7070 メディア、UDP ポート 6770-7170、または TCP ポート 7071 を使用します。

実際の製品では、 表 2 に示すポートとポート範囲を使用します。

表 2: RealAudio 製品のポートの使用状況

実際の製品

ポート使用量

4.0および5.0サーバー/プレーヤー

TCPポート7070の制御チャネル(双方向)。TCPポート7070またはUDPポート6970-7170でのサーバーからプレーヤーへのデータチャネル。

4.0および5.0サーバー/エンコーダ

TCPポート7070の制御チャネル(双方向)。TCPポート7070上のエンコーダーまたはサーバーからのデータチャネル。

G2サーバー/プレイヤー

TCPポート80、554、7070、または8080の制御チャネル(双方向)。TCPポート80、554、7070、8080またはUDPポート6970-32,000でのサーバーからプレーヤーへのデータチャネル。

G2 サーバー/3.1、および 5.x エンコーダー

TCPポート7070の制御チャネル(双方向)。TCPポート7070上のエンコーダーからサーバーへのデータチャネル。

G2サーバー/G2プロデューサー

TCPポート4040の制御チャネル(双方向)。TCPポート4040およびUDPポート6970-32,000のエンコーダーからサーバーへのデータチャネル。

2 サーバー/G2 プロデューサー (TCP のみ)

TCP ポート 4040 上の制御チャネル (双方向) TCP ポート 4040 上のエンコーダーからサーバーへのデータ チャネル。注: TCP ONLY オプションは、バージョン 6.1 以降で使用できます。

メモ:

RealAudioはRealPlayersによるオリジナルのプロトコルでした。新しいバージョンの RealPlayer では RTSP が使用されています。ステートフルファイアウォールとNATを使用するには、TCPポート7070でALGリアルオーディオをプログラムする必要があります。

Sun RPC および RPC ポートマップ サービス

リモート プロシージャ コール (RPC) ALG は、ポート マッピングに既知のポート TCP 111 と UDP 111 を使用し、RPC サービス用にポートを動的に割り当てて開きます。RPC ポートマップ ALG は、ポート要求を追跡し、これらの要求されたポートのファイアウォールを動的に開きます。RPC ALG は、許可されたプログラム番号を指定することで、RPC プロトコルをさらに制限できます。

ALG には、 表 3 に示す RPC サービスが含まれています。

表 3: サポートされる RPC サービス

名前

説明

コメント

rpc-mountd

ネットワーク・ファイル・サーバー (NFS) マウント・デーモン。詳細については、 の UNIX のマニュアルページ rpc.mountd(8)を参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。

rpc-nfsprog

NFS の一部として使用されます。詳細については、RFC 1094 を参照してください。NFS v3 の RFC1813 も参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。

rpc-nisplus

NISを置き換えるために設計されたネットワーク情報サービスプラス(NIS+)。これは Sun Solaris のデフォルトのネーミングサービスであり、古い NIS とは関係ありません。プロトコル情報はありません。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。

rpc-nlockmgr

ネットワーク ロック マネージャー。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが作成されると、 rpc-nlockmgr RPC プログラム 100021に基づいてサービスを許可またはブロックできます。

rpc-pcnfsd

カーネル統計サーバー。詳細については、 および rpc.rstatdrstatd UNIX のマニュアルページを参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが構築されたら、 rpc-rstat RPC プログラム 150001に基づいてサービスを許可またはブロックできます。

rpc-rwall

ユーザーにメッセージを書き込むために使用されます。詳細については、 の UNIX のマニュアルページ rpc.rwalldを参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが作成されると、 rpc-rwall RPC プログラム 150008に基づいてサービスを許可またはブロックできます。

rpc-ypbind

NIS バインド プロセス。詳細については、 の UNIX のマニュアルページ ypbindを参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが作成されると、 rpc-ypbind RPC プログラム 100007に基づいてサービスを許可またはブロックできます。

rpc-yppasswd

NIS パスワード サーバー。詳細については、 の UNIX のマニュアルページ yppasswdを参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが作成されると、 rpc-yppasswd RPC プログラム 100009に基づいてサービスを許可またはブロックできます。

rpc-ypserv

NIS サーバー。詳細については、 の UNIX のマニュアルページ ypservを参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが構築されたら、 rpc-ypserv RPC プログラム 100004に基づいてサービスを許可またはブロックできます。

rpc-ypupdated

ネットワーク更新ツール。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが作成されると、 rpc-ypupdated RPC プログラム 100028に基づいてサービスを許可またはブロックできます。

rpc-ypxfrd

NIS マップ転送サーバー。詳細については、 の UNIX のマニュアルページ rpc.ypxfrdを参照してください。

基本サポートは、RPC v2 とポート 111 のポート マッパー サービスです (RFC 1050 を参照)。RPC プログラム テーブルが作成されると、 rpc-ypxfrd RPC プログラム 100069に基づいてサービスを許可またはブロックできます。

ポート マッピングを使用するステートフル ファイアウォールと NAT サービスをサポートするためには、TCP/UDP 宛先ポート 111 で RPC ポートマップ ALG を構成し、TCP と UDP の両方に対して RPC ALG を構成する必要があります。1 つ以上の rpc-program-number 値を指定して、許可される RPC プロトコルをさらに制限できます。

Rtsp

リアルタイム ストリーミング プロトコル (RTSP) は、オーディオやビデオなどのリアルタイム プロパティを使用してデータの配信を制御します。RTSP によって制御されるストリームは RTP を使用できますが、必須ではありません。メディアは、同じ RTSP 制御ストリームで送信できます。これはHTTPのようなテキストベースのプロトコルですが、クライアントとサーバーはセッション情報を保持します。セッションは、SETUP メッセージを使用して確立され、TEARDOWN メッセージを使用して終了します。トランスポート(メディア プロトコル、アドレス、およびポート番号)は、セットアップとセットアップ応答でネゴシエートされます。

ステートフル ファイアウォールと NAT サービスをサポートするには、TCP ポート 554 用に RTSP ALG を構成する必要があります。

ALG は制御接続を監視し、メディア(RTP/RTSP)ストリームのフローを動的に開き、NAT アドレスとポートの書き換えを実行します。

Sip

セッション開始プロトコル (SIP) は、メディア セッションを確立、維持、および終了できるアプリケーション層プロトコルです。これは、広く使用されているボイスオーバーIP(VoIP)シグナリングプロトコルです。SIP ALGはSIPトラフィックを監視し、シグナリングパスとメディアパスにピンホールを動的に作成および管理します。ALG は、適切なパーミッションを持つパケットのみを許可します。SIP ALG は、次の機能も実行します。

  • 親子セッション関係を管理します。

  • セキュリティ ポリシーを適用します。

  • VoIPトラフィックのピンホールを管理します。

SIP ALG は、次の機能をサポートしています。

  • ステートフルファイアウォール

  • 静的ソース NAT

  • 動的アドレスのみの送信元 NAT

  • ネットワーク アドレス ポート変換 (NAPT)

メモ:

SIP セッションは、MS-MIC および MS-MPC インターフェイス カードでの NAT 処理に 12 時間(720 分)に制限されています。MS-DPC の SIP セッションには時間制限はありません。

Snmp

SNMP は、個々のネットワーク デバイスと集約デバイスの両方を含む TCP/IP ネットワークを管理するための通信プロトコルです。プロトコルは RFC 1157 で定義されています。SNMP は UDP 上で実行されます。

Junos OSステートフルファイアウォールサービスは、SNMP ALGを実装してSNMPタイプを検査します。SNMP はステートフル フローを強制しません。各SNMPタイプは、特に有効にする必要があります。ステートフル ファイアウォール サービスを完全に SNMP サポートするには、UDP ポート 161 で SNMP ALG を構成する必要があります。これにより、SNMP とget-nextコマンド、およびそれらの応答トラフィックが逆方向で有効になります: UDP ポート 161 は SNMP get get-response コマンドを有効にします。SNMPトラップが許可されている場合は、UDPポート162でSNMPtrapコマンドを有効にして設定できます。

SQLNet

SQLNet プロトコルは、ロード バランシングやアプリケーション固有のサービスなど、クライアントから SQL コマンドを実行するために Oracle SQL サーバーによって使用されます。

ステートフル ファイアウォールと NAT サービスをサポートするには、TCP ポート 1521 用に SQLNet ALG を構成する必要があります。

ALG は制御パケットを監視し、データ トラフィックのフローを動的に開放し、NAT アドレスとポートの書き換えを実行します。

Tftp

Trivial File Transfer Protocol(TFTP)は、RFC 1350で規定されています。最初の TFTP 要求は、UDP 宛先ポート 69 に送信されます。追加のフローを作成して、個々のファイル を取得 または 配置 できます。ステートフル ファイアウォールと NAT サービスをサポートするには、UDP 宛先ポート 69 の TFTP ALG を設定する必要があります。

Traceroute

traceroute は、パケットがネットワーク ホストに移動するルートを表示するためのツールです。IP TTL(Time-to-live)フィールドを使用して、ルーターまたはゲートウェイから ICMP time-exceeded メッセージをトリガーします。使用されていないと思われる宛先ポートにUDPデータグラムを送信します。宛先ポートには、+ nホップ – 1 の式を使用して番号が付けられます。デフォルトのベースポートは33434です。ファイアウォールを通過するトレースルートをサポートするには、次の 2 種類のトラフィックを通過する必要があります。

  1. UDP プローブ パケット(UDP 宛先ポート > 33000、IP TTL < 30)

  2. ICMP 応答パケット(ICMP タイプの時間超過)

NAT が適用される場合は、ICMP エラー パケット内の IP アドレスとポートも変更する必要があります。

ステートフル ファイアウォールと NAT サービスをサポートするためには、UDP 宛先ポート 33434 から 33450 のトレースルート ALG を設定する必要があります。さらに、TTL しきい値を構成して、大きな TTL 値による UDP フラッド攻撃を防ぐことができます。

UNIX リモートシェルサービス

3つのプロトコルがUNIXリモートシェルサービスの基礎を形成します。

  • Exec:リモート コマンド実行。クライアント・システム上のユーザーがリモート・システム上でコマンドを実行できるようにします。クライアント () からサーバー (rcmdrshd) への最初のコマンドは、既知の TCP ポート 512 を使用します。2 番目の TCP 接続は、 のrcmd要求に応じて開くことができます。2 番目の接続のクライアント ポート番号は、ASCII 文字列としてサーバーに送信されます。

  • ログイン - よく知られている rlogin; は、既知の TCP ポート 513 を使用します。詳細については、RFC 1282 を参照してください。特別なファイアウォール処理は必要ありません。

  • シェル:リモートコマンド実行。クライアント・システム上のユーザーがリモート・システム上でコマンドを実行できるようにします。クライアント () からサーバー (rcmdrshd) への最初のコマンドは、既知の TCP ポート 514 を使用します。2 番目の TCP 接続は、 のrcmd要求に応じて開くことができます。2 番目の接続のクライアント ポート番号は、ASCII 文字列としてサーバーに送信されます。

ステートフルファイアウォールサービスをサポートするには、TCP ポート 512 で Exec ALG、TCP ポート 513 でログイン ALG、TCP ポート 514 でシェル ALG を設定する必要があります。NAT リモートシェルサービスでは、割り当てられる動的送信元ポートがポート範囲 512 〜 1023 内にある必要があります。NAT プールを設定する場合、このポート範囲はリモート シェル アプリケーション専用に予約されます。

ウィンフレーム

WinFrameアプリケーションサーバーソフトウェアは、あらゆる種類のクライアントへのあらゆるタイプのネットワーク接続を介して、事実上すべてのWindowsアプリケーションへのアクセスを提供します。

このプロトコルは、主にCitrix Windowsアプリケーションで使用されます。

ステートフル ファイアウォールと NAT を使用するには、TCP 宛先ポート 1494 および UDP ポート 1604 で ALG Winframe を構成する必要があります。

ジュニパーネットワークスのデフォルト

Junos OS には、ルーターの設定に自動的に適用される と呼ばれる junos-defaults デフォルトの非表示の設定グループが用意されています。この junos-defaults グループには、一般的なアプリケーション用に事前定義された値を含む事前設定されたステートメントが含まれています。一部のステートメントは、FTP や Telnet などのアプリケーションなど、有効にするために参照する必要があります。端末設定などの他のステートメントも自動的に適用されます。事前設定されたステートメントはすべて、予約名 junos-で始まります。

メモ:

Junos OS のデフォルト設定値は上書きできますが、削除や編集はできません。コンフィギュレーションを削除した場合、新しいコンフィギュレーションが追加されたときにデフォルト に戻ります。

Junos OS defaults グループで ステートメントを使用することはできません apply-groups

Junos OSのデフォルトグループから利用可能なプリセットステートメントの全セットを表示するには、 設定モードコマンドを発行します show groups junos-defaults 。以下の例では、ALG(アプリケーション プロトコル)を使用する Junos OS デフォルト グループのリストを表示します。

グループから junos-defaults 使用可能なステートメントを参照するには、選択した junos-default-name ステートメントを該当する階層レベルで含めます。アプリケーション プロトコルを構成するには、「 アプリケーションのプロパティの構成」を参照してください。特定のプロトコルの詳細については、「 ALG の説明」を参照してください。

例:Junos OS デフォルト グループからのプリセット ステートメントの参照

次の例は、ステートフルファイアウォールでFTPに使用できるJunos OSデフォルトグループのプリセットステートメントです。

Junos OSデフォルトグループからプリセットされたJunos OSデフォルトステートメントを参照するには、該当する階層レベルにステートメントを含め junos-default-name ます。例えば、ステートフルファイアウォールでFTP向けのJunos OSデフォルトステートメントを参照するには、階層レベルでステートメント junos-ftp を含めます [edit services stateful-firewall rule rule-name term term-name from applications]

以下の例は、デフォルトの Junos IP ALG の設定を示しています。

ステートフルファイアウォールルールでIP ALGを設定すると、すべてのIPトラフィックと一致しますが、他のより具体的なアプリケーションが同じトラフィックに一致する場合、IP ALGは一致しません。例えば、以下の設定では、ICMP ALGとIP ALGの両方が設定されていますが、ICMPパケットの方がより具体的に一致するため、トラフィックは一致します。

MS-MIC および MS-MPC 向けの ICMP、Ping、トレースルート ALG

Junos OS リリース 14.2 以降、MS-MIC および MS-MPC に事前インストールおよび事前設定された Junos OS 拡張プロバイダ パッケージは、uKernel サービスが提供するサポートと同等の一貫した方法で ping、traceroute、ICMP ALG をサポートします。これらのALGに対して、MS-MIC/MS-MPC と uKernel サービス間でパリティとサポートの統一性が確立されます。Junos OS リリース 14.1 までは、ICMP ALG、PING ALG、およびトレースルート ALG は、uKernel PIC 上のステートフルファイアウォール(SFW)によるネットワークアドレス変換(NAT)を有効にする uKernel サービスと比較して、MS-MIC および MS-MPC を備えた MX シリーズルーターで完全にはサポートされていませんでした。既存のフローと逆方向のフローに一致するICMPエラーレスポンスパケットの処理や、pingパケットのNAT処理によるICMPパケットのNAT処理をサポートしました。

MS-MICとMS-MPCを搭載したMXシリーズルーターでは、ICMPシーケンス番号を使用したpingトラフィック状態の追跡(たとえば、対応するシーケンス番号を持つエコーリクエストが特定された場合にのみエコー応答を転送する)がサポートされています。ICMP アプリケーション レイヤー ゲートウェイ(ALG)が拡張され、詳細なロギング情報が得られるようになりました。また、トレースルートALGを使用すると、UDP 宛先ポート番号が 33000 より大きく、IP TTL(Time-to-live)が 30 秒未満の UDP プローブ パケットを処理できます。トレースルートALGは、ICMPタイプが時間超過したICMP応答パケットの処理を可能にし、トレースルーティングのネットワーク浸透の許容レベルを制御するtraceroute TTLしきい値をサポートします。

ICMP および ping メッセージを 、 、 および 階層レベルでステートメントapplication junos-icmp-allで設定し、[edit services stateful-firewall rule rule-name term term-name from] application junos-icmp-pingapplication icmp-code [edit services nat rule rule-name term term-name from]ステートフルファイアウォールとNATルールの一致条件を定義することができます。Junos OS リリース 14.1 までは、ICMP メッセージに対して定義できるアプリケーションの制限や検証はありませんでした。MS-MIC と MS-MPC は uKernel サービスと同じように機能し、ICMP シーケンス番号を使用して ping トラフィックがステートフルに追跡されます(エコー応答は、対応するシーケンス番号を持つエコーリクエストが一致する場合にのみ転送されます)。また、MS-MIC および MS-MPC は、未処理の ping 要求に制限を課し、上限に達すると後続の ping 要求をドロップします。

同様に、トレースルート メッセージの場合、 および 階層レベルで および ステートメント[edit services stateful-firewall rule rule-name term term-name from]を構成し[edit services nat rule rule-name term term-name from]て、application junos-tracerouteステートフル ファイアウォールおよび application junos-traceroute-ttl-1 NAT ルールのトレースルート メッセージの一致条件を定義できます。

トレースルートと ICMP メッセージは、IPv4 パケットと IPv6 パケットの両方でサポートされます。トレースルート機能が機能するために必要なのは、ユーザー定義アプリケーションが非アクティブ・タイムアウト期間で期待通りに動作していること、および TTL しきい値が 階層レベルの ステートメント[edit services application-identification application application-name]を使用してsession-timeout seconds構成したものと同じ期間に設定されていることを確認することだけです。ICMP メッセージのロギング中は、uKernel ロギングの場合と同様に、ping および ICMP ユーティリティの ALG 情報が、 や などのshow sessionsshow conversations関連する show コマンドの出力に表示されます。

変更履歴テーブル

機能のサポートは、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がプラットフォームでサポートされているかどうかを判断します。

リリース
説明
18.2R1
Junos OS Release 18.2R1以降、MS-MPCおよびMS-MIC上のDS-LiteでサポートされるSIP。
18.1R1
Junos OSリリース18.1R1から、MS-MPCおよびMS-MICでのDS-liteを使用したALGのサポートが開始されます
17.2R1
(Junos OS リリース 17.2R1 以降)
17.2R1
(Junos OS リリース 17.2R1 以降)
17.2R1
Junos OS リリース 17.2R1 以降では、NAT-64 ルールもサポートされます。
17.2R1
Junos OS リリース 17.2R1 以降では、NAT-64 ルールもサポートされます。
17.1R1
(Junos OS リリース 17.1R1 以降)
17.1R1
Junos OS リリース 17.1R1 以降、ゲートキーパーの登録、管理、ステータス(RAS)ALG により、H.323 コールのゲートキーパー モードを完全にサポートできるようになりました。
14.2R7
IKE ALG(Junos OSリリース14.2R7、15.1R5、16.1R2、17.1R1以降)
14.2R7
Junos OS Release 14.2R7、15.1R5、16.1R2、17.1R1以降、IKE ALGでは、NAT-Tに準拠していないIPsecピア間で、NAPT-44およびNAT64ルールを介してIKEv1およびIPsecパケットを渡すことができます。