Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

アダプティブサービスと次世代サービスの設定違い

概要

次世代サービスでは、MSタイプカード(MS-MPC、MS-MIC、MS-DPC)で実行されるアダプティブサービスで使い慣れているものとは異なる方法でサービスを構成する必要があります。SPC3 サービス カードの設定は、サービス ゲートウェイの設定方法とより密接に一致します。このより統一されたアプローチに慣れれば、これら2つのプラットフォーム上でサービスをよりシームレスに構成できるようになり、最終的にはトレーニングのオーバーヘッドが減り、構成エラーのリスクが低下します。

CLIの違いとは別に、マルチサービス(MS)タイプ(MS-DPC、MS-MPC、MS-MIC)カードとSPC3サービスカードの基本的なハードウェアの違いにも注意する必要があります。MS タイプのカードには 4 つの CPU コンプレックスが含まれていますが、SPC3 カードはより強力ですが 2 つの CPU コンプレックスが含まれています。各 CPU コンプレックスは 1 つの PIC に対応します。つまり、MS タイプのカードは 4 つの PIC をサポートするのに対し、SPC3 は 2 つの PIC をサポートします。MSタイプのカードは特別なマルチサービス(MS)PICとアダプティブサービス(AS)PICを使用しますが、SPC3カードのPICは統合されています。

PICの数はインターフェイスの数に直接影響するため(表1)、インターフェイスの数を4つに増やすには、SPC3の各インターフェイスに論理ユニットを追加する必要がある場合があります。例えば、現在 MS タイプ カードで 4 つのインターフェイスすべてを使用していて、インターフェイスごとにサービス セットがある場合、SPC3 でインターフェイスごとに 2 つの論理ユニットを作成してインターフェイスの総数を 4 にし、4 つのサービス セットをこれら 4 つの論理インターフェイスに再関連付けることができます。

表1:ハードウェアの違い:MSタイプカードとSPC3カード

MSカード

SPC3

CPUコンプレックス数

4

2

CPUコンプレックスあたりのPIC数

1

1

PICあたりのインターフェイス数

1

1

カード上のインターフェイスの合計数

4

2

次のセクションでは、MSタイプカードのサービスとSPC3カードのサービスとの基本的な設定の違いの概要を説明します。これらのセクションの目的は、基本的な例を使用して主な変更を説明することで、開始できるようにすることです。これらの例は、CLI設定オプションの一部を示しており、ルーティングデバイス用次世代サービスインターフェイスユーザーガイドおよびJunos OS CLIリファレンスガイドに記載されている主題のより正式な扱いに取って代わるものではありません。

これらのセクションの設定例は、2つの違いを簡単に確認できるように、並べて示されています。これらの例は、SPC3で既存のMSタイプカード機能を設定する方法を示すことを目的としています。この例は、SPC3にしかない新機能を設定する方法を示すものではありません。読みやすさと比較の容易さのために、表示されるステートメントの順序は、CLIに表示される実際のステートメントの順序とは若干異なる場合があります。

既存のアダプティブ サービスのセットが多数ある場合、これらの変更が不便になる可能性があることを認識しています。MSタイプカードからSPC3への移行に役立つように、以下の手順に進めることをお勧めします。

  • このガイドの例を見て、必要な変更の全体像を把握します。

  • ナレッジ ベースの記事 KB35348 の一連の構成例を見てください。

  • このガイドとJunos OS CLIリファレンスガイドに目を通して、すべての機能、設定オプション、構文を理解してください。

  • 移行に関するサポートについては、JTACにお問い合わせください。

MS タイプ カードでアダプティブ サービスを引き続き実行する場合は、これらの設定を変更する必要はありません。ただし、SPC3 をルーターに展開した後は、そのルーター上のすべての MS タイプ カードを交換し、次世代サービスの設定パラダイムに合わせてサービスを再設定する必要があります。

インターフェイス

MS タイプのカードはインターフェイス命名規則 ms-1/0/0を使用しますが、SPC3 インターフェイスは仮想マルチサービスまたは vms-1/0/0 インターフェイス命名規則を使用して指定します。 amsmams インターフェイスの名前に変更はありません。

さらに、msインターフェイスのservices-optionsで設定された多くのパラメータは、サービスセットのservice-set-optionsで設定されます。

表2は 、これらの変更の例を示しています。

表2:インターフェイスとサービスオプション

MSタイプカード

SPC3

[edit interfaces]
ms-5/1/0 {
    <...>
}
[edit interfaces]
# Change interface name to vms.
vms-5/1/0 {
    <...>
}
[edit interfaces]
ms-5/1/0 {
    services-options {
        open-timeout 40;
        close-timeout 40;
        inactivity-tcp-timeout 10;
        inactivity-asymm-tcp-timeout 10;
        tcp-tickles 8;
        ignore-errors tcp;
    }
}
[edit services]
service-set sset1 {
    service-set-options {
        # Set tcp parameters under tcp-session.
        tcp-session {
            open-timeout 40;
            close-timeout 40;
            inactivity-tcp-timeout 10;
            inactivity-asymm-tcp-timeout 10;
            tcp-tickles 8;
            ignore-errors tcp;
        }
    }
}
[edit interfaces]
ms-5/1/0 {
    services-options {
        inactivity-non-tcp-timeout 40;
        session-timeout 10;
    }
}
[edit services]
service-set sset1 {
    # Set non-tcp parameters directly under 
    # service-set-options.
    service-set-options {
        inactivity-non-tcp-timeout 40;
        session-timeout 10;
    }
}
[edit interfaces]
ms-5/1/0 {
    services-options {
        fragment-limit 10;
        reassembly-timeout 5;
    }
}
[edit interfaces]
vms-5/1/0 {
    services-options {
        fragment-limit 10;
        reassembly-timeout 5;
    }
}
[edit interfaces]
ms-5/1/0 {
    services-options {
        session-limit {
            maximum 100;
            cpu-load-threshold 12;
            rate 10;
        }
    }
}
[edit services]
# Maximum number of sessions can be 
# specified per service-set.
service-set sset1 {
    service-set-options {
        session-limit {
            maximum 100;
        }
    }
}
[edit interfaces]
# All session-limit parameters continue to be 
# configurable per interface. If the maximum
# number of sessions is different from the associated 
# service-set, the smaller number takes effect.
vms-5/1/0 {
    services-options {
        session-limit {
            maximum 100;
            cpu-load-threshold 12;
            rate 10;
        }
    }
}
[edit interfaces]
ms-5/1/0 {
    services-options {
        pba-interim-logging-interval 10;
    }
}
[edit interfaces]
# Set interim-logging-interval under the nat branch.
nat {
    source {
        pool src-pool {
            port {
                block-allocation {
                    interim-logging-interval 10;
                }
            }
        }
[edit interfaces]
ms-5/1/0 {
    services-options {
        syslog {
            host {
                <...>
            }
        }
    }
}

service-set syslog stream hostを参照してください。

[edit interfaces]
ms-5/1/0 {
    services-options {
        syslog {
            message-rate-limit 10;
        }
    }
}
[edit services]
service-set sset1 {
    syslog {
        event-rate 10;
    }
}
[edit interfaces]
ms-5/1/0 {
    services-options {
        ignore-errors alg;
        disable-global-timeout-override;
        trio-flow-offload {
            minimum-bytes 1000;
        }
    }
}

未対応

サービスセット

表3 は、一部の service-set パラメータの設定方法のマイナーな変更を示しています。

表3:サービスセット

MSタイプカード

SPC3

[edit services]
service-set sset1 {
    tcp-mss 1460;
    service-set-options {
        tcp-non-syn drop-flow-send-rst;
        tcp-fast-open drop;
    }
}
[edit services]
service-set sset1 {
    service-set-options {
        # Set tcp parameters under tcp-session.
        tcp-session {
            tcp-mss 1460;
            tcp-non-syn drop-flow-send-rst;
            tcp-fast-open drop;
        }
    }
}
[edit services]
service-set sset1 {
    replicate-services {
        replication-threshold 180;
    }
}
[edit interfaces]
# Set replication-threshold on the interface.
vms-5/1/0 {
    redundancy-options {
        replication-threshold 180;
    }
}
[edit services]
service-set sset1 {
    syslog {
        host 10.1.1.1 {
            port 514;
        }
    }
}
[edit services]
service-set sset1 {
    syslog
        # Process security logs in the dataplane.
        mode stream;
        stream s1 {
            # Specify host to send security logs to.
            host {
                10.1.1.1;
                port 514;
            }
        }
    }
}
[edit services]
service-set sset1 {
    syslog {
        host local;
    }
}
[edit services]
service-set sset1 {
    syslog
        # Process security logs in the control plane,
        # saving logs to local file specified by rtlog.
        mode event;
    }
}
rtlog {
    traceoptions {
        # Specify filename for logs.
        file rtlog size 1g;
        flag all;
    }
}
[edit services]
service-set sset1 {
    service-order  <...>
}

サービスの順序は固定されています。

[edit services]
service-set sset1 {
    sampling-service  <...>
}

J-Flowロギングはインラインでサポートされています。

[edit services]
service-set sset1 {
    tag-rule-sets <...>
    tag-rules  <...>
    hcm-profile  <...>
    hcm-url-rule-sets  <...>
    hcm-url-rules  <...>
    service-set-options {
        bypass-traffic-on-pic-failure;
    }
}

現在サポートされていません

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

ルールとポリシー

SPC3のステートフルファイアウォールルールは、MSタイプカードのサービスのステートフルファイアウォールルールとは少し異なる構造になっています。SPC3では、ルールを policies ラッパー内で囲み、ルールに含まれる policy でルールの一致条件とアクションを定義します。

MSタイプカード上のステートフルファイアウォールサービスと同様に、インターフェイスをルールセットに関連付けるサービスセットを作成します。ルールセットには、1つ以上のルールへの参照が含まれています。ルールは、一致が発生してアクションが実行されるまで、リストした順序で順番に適用されます。

各ルールには、一致条件とアクションの1つ以上のペアが含まれています。SPC3では、一致条件とアクションの各ペアをポリシーと呼びます。ポリシーは、一致が発生してアクションが実行されるまで、指定した順序で順番に適用されます。

表4は 、MSカードとSP3のステートフルファイアウォールルールの設定の違いを示しています。特に、 permit/deny/reject アクションの定義が異なることに注意してください。

表4:ステートフルファイアウォールのルールとポリシー

MSカード

SP3

[edit services]
[edit services]
service-set s1 {
    stateful-firewall-rule-sets rule-set-basic-sfw;
    interface-service {
        service-interface ms-1/1/0;
    }
}
service-set s1 {
    policies stateful-firewall-rule-sets rule-set-basic-sfw;
    interface-service {
        service-interface vms-1/1/0;
    }
}
stateful-firewall {
# Enclose stateful firewall rules within the policies wrapper.
policies { 
    rule Rule1 {
        match-direction input;
        term ping-https-apps {
            from {
                source-address {
                    any
                }
                destination-address {
                    any
                }
                applications [junos-icmp-ping junos-https];
            }
            then {
                accept/reject/discard
                skip-ids;
                syslog;
            }
        }
        term accept {
            then {
                accept;
            }
        }
    } # end Rule1
    policies stateful-firewall-rule Rule1 {
        match-direction input;
        # Define match terms and actions in a policy.
        policy ping-https-apps { 
            # Unlike the from statement, the match statement (and
            # source-address, destination-address, and application)
            # are mandatory.
            match {
                source-address any;
                destination-address any;
                application [ junos-icmp-ping  junos-https ];
            }
            then {
                # permit = allow
                # deny = silently drop
                # reject = drop and send ICMP unreachable or TCP RST
                permit/deny/reject
                # skip-ids is not supported. One possible way of 
                # achieving this same goal is to create two 
                # service-sets, one with IDS and one without IDS, 
                # and route your next-hop-service
                # traffic to the desired service set via the associated
                # inside or outside interface.
                log;
            }
        }
        policy accept { 
            match {
                source-address any;
                destination-address any;
                application any;
            }
            then {
                permit;
            }
        }
    } # end Rule1
    rule Rule2 {
        match-direction output;
        term local {
            from {
                source-address {
                    10.1.3.2/32;
                }
                application-sets APPL-SET1;
            }
            then {
                accept;
            }
        }
    } # end Rule2
    policies stateful-firewall-rule Rule2 {
        match-direction output;
        policy local {
            match {
                source-address 10.1.3.2/32;
                destination-address any;
                # application can refer to an application set.
                application APPL-SET1;
            }
            then {
                permit;
            }
        } 
        
    } # end Rule2
    rule-set rule-set-basic-sfw {
        rule Rule1;
        rule Rule2;
    }
} # end stateful-firewall
    # Use the stateful-firewall-rule-set element to list the 
    # firewall rules in the order that you want them applied. 
    stateful-firewall-rule-set rule-set-basic-sfw {
        stateful-firewall-rule Rule1;
        stateful-firewall-rule Rule2;
    }
} # end policies

アドレスリストと範囲

ステートフルファイアウォールルールには、アドレス範囲とリストを参照する一致用語を含めることができます。

MS カードでは、source-address-range 要素と destination-address-range 要素を使用してアドレス範囲を指定し、policy-options の下にある prefix-list 要素を使用してアドレスリストを指定します。prefix-list要素は、ステートフルファイアウォールルールにのみ使用するものではありません。また、prefix-list要素を使用して、ルーティングポリシー内で使用するアドレスリストを指定することもできます。

SP3では、ステートフルファイアウォールルールにprefix-list要素は使用されていません。servicesの下のaddress-bookを使用して、ステートフルファイアウォールルール内で使用するアドレスリストと範囲を定義します。prefix-list要素はまだ存在しますが、ルーティングポリシーにのみ使用されます。そのため、ステートフルファイアウォールルールのアドレスリストとルーティングポリシーのアドレスリストを指定する場合は、address-book要素とprefix-list要素の両方を設定する必要があります。

表5は 、MSカードとSP3カードでステートフルファイアウォールルールのアドレスを指定する方法の違いを示しています。

表5:アドレス

MSカード

SP3

[edit]
policy-options {
    prefix-list p1 {
        10.1.22.45/32;
        192.168.0.11/32;
    }
}
[edit services]
    stateful-firewall {
        rule sfw-rule {
            match-direction input;
            term banned-addresses {
                from {
                    source-prefix-list {
                        p1;
                    }
                    source-address-range {
                        low 10.1.22.100 high 10.1.22.109;
                    }
                }
                then {
                    reject;
                    syslog;
                }
            }
        <...>
[edit services]
# Define address lists and address ranges in an address book.
address-book {
    global {
        address-set p1 {
            address p1-a;
            address p1-b;
        }
        address p1-a 10.1.22.45/32;
        address p1-b 192.168.0.11/32;
        address p2 { 
            address-range 10.1.22.100/32 {
                to {
                    10.1.22.109/32;
                }
            } 
        } 
    } 
} # end address-book
policies { 
    stateful-firewall-rule sfw-rule {
    match-direction input;
        policy banned-addresses { 
            match {
                # Refer to the addresses defined in the address book.
                source-address [ p1 p2 ];
                destination-address any;
                application any;
            }
            then {
                deny;
                log;
            }
        <...>

アプリケーション

SP3 は、MS カードよりも多くの組み込み Junos アプリケーションをサポートしています。ステートフルファイアウォールルールを作成する際に、これらの組み込みアプリケーションに一致させることができます。

組み込みアプリケーションの全リストを表示するには、 show groups junos-defaults applications 設定モードコマンドを使用します。次に例を示します。

traceオプションとカウンター

SP3の次世代サービス向けのステートフルファイアウォールでは、トラフィックのデバッグとカウントを支援する追加機能がサポートされています。

  • traceoptions - ポリシー・ルックアップやルール・ベースのイベントなど、ポリシー関連のイベントをトレースするために使用します。イベントは、表示用に指定されたファイルにキャプチャされます。

  • count - 着信/発信バイト数やパケット数などのトラフィック関連イベントのカウントに使用します。showコマンドを使用してカウンターを表示します。

    • show services policies detail - ポリシーで count オプションを指定した場合、出力にトラフィック関連のカウンターが含まれます

    • show services policies hit-count - ヒットカウントは、ポリシーで count オプションを使用しているかどうかに関係なく常に利用可能です。

表6はtraceoptions 要素と count 要素の使用方法を示しています。

表6:トレースオプションとカウント

MSカード

SP3

未対応

[edit services]
policies { 
# Enable traceoptions to trace policy-related events.
    traceoptions {
        file policylogs size 10m files 5;
        flag all;
    }
    stateful-firewall-rule Rule1 {
        match-direction input;
        policy my-policy { 
            match {
                source-address any;
                destination-address any;
                application [ junos-dns-udp junos-dns-tcp ];
            }
            then {
                permit
                # Enable counting of traffic events.
                count;
            }
        } # end my-policy
    ...

キャリアグレードのネットワークアドレス変換(CGNAT)

SP3での次世代サービス向けNATの設定は、MSカード上のレガシーサービスでのNATの設定と、多くの点で異なります。

  • SP3 では、送信元NATと宛先NAT別に設定します。送信元NATは、設定ツリーの送信元ブランチで設定し、宛先NATは設定ツリーの送信先ブランチで設定します。送信元 NAT と宛先 NAT は、それぞれ、設定ツリーのそれぞれのブランチに独自のアドレス プールとルールのセットを持っています。

  • SP3 では、送信元 NAT と宛先 NAT の両方を構成すると、最初に宛先 NAT が適用され、次に送信元 NAT が宛先 NAT 変換結果に適用されます。つまり、元のパケットに基づいてではなく、宛先の NAT 変換結果に基づいて送信元 NAT ルールを作成します。

  • SP3 では、 translation-typeを明示的に設定しません。変換のタイプは、設定によって暗黙的に決定されます。

  • SP3では、ポート変換が動的マッピングのデフォルトの動作です(異なるNAT前アドレスが、時間の経過とともに同じNAT後のアドレスにマッピングされる可能性があります)。プール定義にportステートメントを明示的に含めない場合、ポート範囲[1024, 65535]でポート変換が行われ、ポートはラウンドロビン方式で選択されます。ポート変換を実行しない場合は、no-translationオプションを含むportステートメントを追加する必要があります。このデフォルトは、NAT前のアドレスが常に同じNAT後のアドレスにマッピングされる静的NATマッピングには適用されません。

表7 から 表19 は、SP3でさまざまな変換タイプがどのように設定されているかを示すものです。

表7: 例:basic-NAT44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-basic-nat44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-basic-nat44;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.10.10.0/24;
    }
    
        pool src-pool {
            address {
                10.10.10.0/24;
            }
            # host-address-base indicates a type of static mapping 
            # where the base address 10.45.1.0/0 maps to the 
            # lowest address in the pool, namely 10.10.10.0/0,
            # and the other addresses map sequentially from there
            # e.g. 10.45.1.1 maps to 10.10.10.1, and so on.
            # Since this is a static mapping, there is no port translation
            # by default.
            # Note that host-address-base does not have to be the 
            # lowest address allowed by the subsequent source rule. 
            # Any packet with a source address allowed by the source rule
            # but is lower than the host-address-base is discarded. 
            host-address-base 10.45.1.0/0;
        }
    rule rule-basic-nat44 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    10.45.1.0/24
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    translation-type {
                        basic-nat44;
                    }
                }
            }
        }
    }
        rule-set rule-basic-nat44 {
            match-direction input;
            rule r1 {
                match {
                    source-address 10.45.1.0/24;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source
} # end nat
表8:例:basic-NAT66

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-basic-nat66;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-basic-nat66;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 2001:DB8:2222::0/96;
    }
    
        pool src-pool {
            address {
                2001:DB8:2222::0/96;
            }
        }
    rule rule-basic-nat66 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    2001:DB8:1111::0/96;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    translation-type {
                        basic-nat66;
                    }
                }
            }
        }
    }
        rule-set rule-basic-nat66 {
            match-direction input;
            rule r1 {
                match {
                    source-address 2001:DB8:1111:::0/96;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source
} # end nat
表9:例:Dynamic-NAT44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-dynamic-nat44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-dynamic-nat44;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address-range low 10.10.10.2 high 10.10.10.10;
    }
    
        pool src-pool {
            address {
                10.10.10.2/32 to 10.10.10.10/32;
            }
            # Since this is implicitly a dynamic mapping, 
            # there is port translation by default , so we need to
            # explictly specify that we don’t want port translation.
            port {
                no-translation;
            }
        }
    rule rule-dynamic-nat44 {
        match-direction input;
        term t0 {
            from {
                applications junos-icmp-all;
            }
            then {
                no-translation;
            }
        }
        term t1 {
            from {
                destination-address {
                    10.99.0.2/32;
                }
                source-address-range {
                    low 10.45.0.2 high 10.45.0.10;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    translation-type {
                        dynamic-nat44;
                    }
                }
            }
        }
    }
        rule-set rule-dynamic-nat44 {
            match-direction input;
            rule r0 {
                match {
                    source-address 0.0.0.0/0;
                    application junos-icmp-all;
                }
                then {
                    source-nat {
                        off;
                    }
                }
            }
            rule r1 {
                match {
                    source-address-name addr1;
                    destination-address 10.99.0.2/32;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source
} # end nat

address-book {
    global {
        address addr1 {
            address-range 10.45.0.2/32 {
                to {
                    10.45.0.10/32;
                }
            }
        }
    }
}
表10: 例:NAPT-44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-napt44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-napt44;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.10.10.0/24;
        port {
            automatic;
        }
    }

    
        pool src-pool {
            address {
                10.10.10.0/24;
            }
            # Since this is implicitly a dynamic mapping,
            # and there is no explicit port statement
            # to indicate otherwise, the default port 
            # mapping behavior takes effect.
        }
    

    rule rule-napt44 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    10.45.1.0/24
                }
                application-sets accept-algs;
            }
            then {
                translated {
                    source-pool src-pool;
                    translation-type {
                        napt44;
                    }
                }
            }
        }
    }
    
        rule-set rule-napt44 {
            match-direction input;
            rule r1 {
                match {
                    source-address 10.45.1.0/24;
                    application accept-algs;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source
} # end nat
表11: 例:napt-66

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-napt66;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-napt66;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 2001:DB8:2222::0/112;
        port {
            range low 20000 high 30000;
        }
    }

    
        pool src-pool {
            address {
                2001:DB8:2222::0/112;
            }
            port {
                range {
                    20000;
                    to {
                        30000;
                    }
                }
            }
        }
    

    rule rule-napt66 {
        match-direction input;
        term t1 {
            from {
                source-address {
                     2001:DB8:1111::0/96;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    translation-type {
                        napt66;
                    }
                }
            }
        }
    }
    
        rule-set rule-napt66 {
            match-direction input;
            rule r1 {
                match {
                    source-address 2001:DB8:1111::0/96;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source
} # end nat
表12:例:決定論的NAT-44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-dnat-44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-dnat-44;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    destination {

    pool dest-pool {
        address 10.10.10.2/32;
    }
    
        pool dest-pool {
            address {
                10.10.10.2/32;
            }
        }
    rule rule-dnat-44 {
        match-direction input;
        term t1 {
            from {
                destination-address {
                    10.45.0.2/32
                }
            }
            then {
                translated {
                    destination-pool dest-pool;
                    translation-type {
                        dnat-44;
                    }
                }
            }
        }
    }
        rule-set rule-dnat-44 {
            match-direction input;
            rule r1 {
                match {
                    destination-address 10.45.0.2/32;
                }
                then {
                    destination-nat {
                        pool {
                            dest-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end destination
} # end nat
表13: 例:ステートフル-NAT464

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-stateful-nat464;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-stateful-nat464-src;
    nat-rule-sets rule-stateful-nat464-dest;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.10.10.0/24;
        port {
            automatic;
        }
    }
    
        pool src-pool {
            address {
                10.10.10.0/24;
            }
            port {
                automatic {
                    round-robin;
                }
            }
        }
    rule rule-stateful-nat464 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    2001:DB8:1111::0/96;
                }
                destination-address {
                    2001:DB8:2222::0/96;
                }
                applications [junos-icmp-all junos-icmp-ping junos-traceroute junos-traceroute-ttl 1];
            }
            then {
                translated {
                    source-pool src-pool;
                    clat-prefix 2001:DB8:1111::0/96;
                    destination-prefix 2001:DB8:2222::0/96;
                    translation-type {
                        stateful-nat464;
                    }
                }
            }
        }
    }
    # This source rule applies after the destination rule.
        rule-set rule-stateful-nat464-src {
            match-direction input;
            rule r1 {
                match {
                    source-address 2001:DB8:1111::0/96;
                    # Since destination NAT happens first, the 
                    # destination IPv6 prefix has  been stripped off, 
                    # resulting in an IPv4 destination address.
                    destination-address 0.0.0.0/0;
                    application [junos-icmp-all junos-icmp-ping junos-traceroute junos-traceroute-ttl 1];
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                            }
                        clat-prefix 2001:DB8:1111::0/96;
                    }
                }
            }
        }
} # end nat
    
    } # end source

    destination {

    # This destination rule applies before the source rule.
        rule-set rule-stateful-nat464-dest {
            match-direction input;
            rule r1 {
                match {
                    destination-address 2001:DB8:2222::0/96;
                }
                then {
                    destination-nat {
                        destination-prefix 2001:DB8:2222::0/96;
                    }
                }
            }
        }

    
    } # end destination
} # end nat

表14: 例:ステートフルNAT64

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-stateful-nat64;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-stateful-nat64-src;
    nat-rule-sets rule-stateful-nat64-dest;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.10.10.0/24;
        port {
            automatic;
                random-allocation;
            }
        }
        mapping-timeout 500;
    }
    
        pool src-pool {
            address {
                10.10.10.0/24;
            }
            port {
                automatic {
                    random-allocation;
                }
            }
            mapping-timeout 500;
        }
    rule rule-stateful-nat64 {
        match-direction input;
        term t1 {
            from {
                destination-address {
                    2001:DB8:2222::0/64;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    destination-prefix 2001:DB8:2222::0/64;
                    translation-type {
                        stateful-nat64;
                    }
                }
            }
        }
        term t2 {
            from {
                destination-address {
                    2001:DB8:3333::0/64;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    destination-prefix 2001:DB8:3333::0/64;
                    translation-type {
                        stateful-nat64;
                    }
                }
            }
        }
    }
    # This source rule applies after the destination rule.
        rule-set rule-stateful-nat64-src {
            match-direction input;
            rule r1 {
                match {
                    source-address 0::/0;
                    # Since destination NAT applies first, the 
                    # destination address is now IPv4.
                    destination-address 0.0.0.0/0;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source

    destination {

    # This destination rule applies before the source rule.
        rule-set rule-stateful-nat64-dest {
            match-direction input;
            rule r1 {
                match {
                    destination-address 2001:DB8:2222::0/64;
                }
                then {
                    destination-nat {
                        destination-prefix 2001:DB8:2222::0/64;
                    }
                }
            }
            rule r2 {
                match {
                    destination-address 2001:DB8:3333::0/64;
                }
                then {
                    destination-nat {
                        destination-prefix 2001:DB8:3333::0/64;
                    }
                }
            }
        }

    
    } # end destination
} # end nat
表15:例:twice-basic-NAT-44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-twice-basic-nat-44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-twice-basic-nat-44-src;
    nat-rule-sets rule-twice-basic-nat-44-dest;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.98.10.0/24;
    }
    pool dest-pool {
        address 10.99.10.0/24;
    }
    
        pool src-pool {
            address {
                10.98.10.0/24;
            }
            # host-address-base indicates a type of static mapping where
            # the base address 10.10.10.0/0 maps to the lowest 
            # address in the pool, namely 10.98.10.0/0,
            # and the other addresses map sequentially from there
            # e.g. 10.10.10.1 maps to 10.98.10.1, and so on.
            # Since this is a static mapping, there is no port translation 
            # by default.
            # Note that host-address-base does not have to be the 
            # lowest address allowed by the subsequent source rule. 
            # Any packet with a source address allowed by the source rule
            # but is lower than the host-address-base is discarded. 
            host-address-base 10.10.10.0/0;
        }
    rule rule-twice-basic-nat-44 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    10.10.10.0/24;
                }
                destination-address {
                    10.20.10.0/24;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    destination-pool dest-pool;
                    translation-type {
                        twice-basic-nat-44;
                    }
                }
            }
        }
    }
    # This source rule applies after the destination rule.
        rule-set rule-twice-basic-nat-44-src {
            match-direction input;
            rule r1 {
                match {
                    source-address 10.10.10.0/24;
                    # Since destination NAT happens first, the destination
                    # address refers to the NAT’d address.
                    destination-address 10.99.10.0/24;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source

    destination {

    
        pool dest-pool {
            address {
                10.99.10.0/24;
            }
        }

    # This destination rule applies before the source rule.
        rule-set rule-twice-basic-nat-44-dest {
            match-direction input;
            rule r1 {
                match {
                    destination-address 10.20.10.0/24;
                }
                then {
                    destination-nat {
                        pool {
                            dest-pool;
                        }
                    }
                }
            }
        }

    
    } # end destination
} # end nat
表16:例:Twice-Dynamic-NAT-44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-twice-dynamic-nat-44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-twice-dynamic-nat-44-src;
    nat-rule-sets rule-twice-dynamic-nat-44-dest;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.98.10.0/24;
    }
    pool dest-pool {
        address 10.99.10.0/24;
    }
    
        pool src-pool {
            address {
                10.98.10.0/24;
            }
            port {
                no-translation;
            }
        }
    rule rule-twice-dynamic-nat-44 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    10.10.10.0/24;
                }
                destination-address {
                    10.20.10.0/24;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    destination-pool dest-pool;
                    translation-type {
                        twice-dynamic-nat-44;
                    }
                }
            }
        }
    }
    # This source rule applies after the destination rule.
        rule-set rule-twice-dynamic-nat-44-src {
            match-direction input;
            rule r1 {
                match {
                    source-address 10.10.10.0/24;
                    # Since destination NAT happens first, the destination
                    # address refers to the NAT’d address.
                    destination-address 10.99.10.0/24;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source

    destination {

    
        pool dest-pool {
            # By default, address mapping in destination pools is static.
            address {
                10.99.10.0/24;
            }
        }

    # This destination rule applies before the source rule.
        rule-set rule-twice-dynamic-nat-44-dest {
            match-direction input;
            rule r1 {
                match {
                    destination-address 10.20.10.0/24;
                }
                then {
                    destination-nat {
                        pool {
                            dest-pool;
                        }
                    }
                }
            }
        }

    
    } # end destination
} # end nat
表17:例:Twice-NAPT-44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-twice-napt-44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-twice-napt-44-src;
    nat-rule-sets rule-twice-napt-44-dest;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.98.10.0/24;
        port {
            automatic;
            secured-port-block-allocation block-size 256 max-blocks-per-address 1 active-block-timeout 300;
        }
    }
    pool dest-pool {
        address 10.99.10.2/32;
    }
    
        pool src-pool {
            address {
                10.98.10.0/24;
            }
            port {
                automatic {
                    round-robin;
                }
                block-allocation {
                    block-size 256;
                    maximum-blocks-per-host 1;
                    active-block-timeout 300;
                }
            }
        }
    rule rule-twice-napt-44 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    10.10.10.0/24;
                }
                destination-address {
                    10.20.10.2/32;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    destination-pool dest-pool;
                    translation-type {
                        twice-napt-44;
                    }
                }
            }
        }
    }
    # This source rule applies after the destination rule.
        rule-set rule-twice-napt-44-src {
            match-direction input;
            rule r1 {
                match {
                    source-address 10.10.10.0/24;
                    # Since destination NAT happens first, the
                    # destination address refers to the NAT’d address.
                    destination-address 10.99.10.2/32;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source

    destination {

    
        pool dest-pool {
            address {
                10.99.10.2/32;
            }
        }

    # This destination rule applies before the source rule.
        rule-set rule-twice-napt-44-dest {
            match-direction input;
            rule r1 {
                match {
                    source-address 10.10.10.0/24;
                    destination-address 10.20.10.2/32;
                }
                then {
                    destination-nat {
                        pool {
                            dest-pool;
                        }
                    }
                }
            }
        }

    
    } # end destination
} # end nat
表18: 例:Deterministic-NAPT44

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-deterministic-napt44;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-deterministic-napt44;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.10.10.0/24;
        port {
            range low 1024 high 19999;
            deterministic-port-block-allocation block-size 256;
        }
        mapping-timeout 120;
    }
    
        pool src-pool {
            address {
                10.10.10.0/24;
            }
            port {
                range {
                    1024;
                    to {
                        19999;
                    }
                }
                deterministic {
                    block-size 256;
                    # host address specifies the subnet that you
                    # want to apply to this pool.
                    host address 10.2.0.0/20;
                }
            }
            mapping-timeout 120;
        }
    rule rule-deterministic-napt44 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    10.2.0.0/18;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    translation-type {
                        deterministic-napt44;
                    }
                    mapping-type endpoint-independent;
                }
            }
        }
    }
        rule-set rule-deterministic-napt44 {
            match-direction input;
            rule r1 {
                match {
                    source-address 10.2.0.0/18;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                        mapping-type endpoint-independent;
                    }
                }
            }
        }
} # end nat
    
    } # end source
} # end nat
表19:例:Deterministic-NAPT64

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-deterministic-napt64;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-deterministic-napt64-src;
    nat-rule-sets rule-deterministic-napt64-dest;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.98.10.0/24;
        port {
            automatic;
            random-allocation;
            }
            deterministic-port-block-allocation block-size 256;
        }
    }
    
        pool src-pool {
            address {
                10.98.10.0/24;
            }
            port {
                automatic {
                    random-allocation;
                }
                deterministic {
                    block-size 256;
                    host address 2001:DB8:1111::1/120;
                }
            }
        }
    rule rule-deterministic-napt64 {
        match-direction input;
        term t1 {
            from {
                source-address {
                    2001:DB8:1111::1/120;
                }
            }
            then {
                translated {
                    destination-prefix 2001:DB8:2222::/96;
                    source-pool src-pool;
                    translation-type {
                        deterministic-napt64;
                    }
                }
            }
        }
    }
    # This source rule applies after the destination rule.
        rule-set rule-deterministic-napt64-src {
            match-direction input;
            rule r1 {
                match {
                    source-address 2001:DB8:1111::1/120;
                    # Since destination NAT happens first, the destination
                    # address refers to the NAT’d address.
                    destination-address 0.0.0.0/0;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source

    destination {

    
        pool dest-pool {
            address {
                10.99.10.2/32;
            }
        }

    # This destination rule applies before the source rule.
        rule-set rule-destination-napt64-dest {
            match-direction input;
            rule r1 {
                match {
                    destination-address 2001:DB8:2222::/96;
                }
                then {
                    destination-nat {
                        destination-prefix 2001:DB8:2222::/96;
                    }
                }
            }
        }

    
    } # end destination
} # end nat
表20: 例:napt-pt

MSカード

SP3

[edit services]
[edit services]
service-set sset1 {
    nat-rules rule-napt-pt;
    interface-service {
        service-interface ms-1/2/0;
    }
}
service-set sset1 {
    nat-rule-sets rule-napt-pt-src;
    nat-rule-sets rule-napt-pt-dest;
    interface-service {
        service-interface vms-2/0/0;
    }
}
nat {
nat {
    source {

    pool src-pool {
        address 10.10.10.2/32;
    }
    pool dest-pool {
        address 10.99.10.2/32;
    }
    
        pool src-pool {
            address {
                10.10.10.2/32;
            }
        }
    rule rule-napt-pt {
        match-direction input;
        term t1 {
            from {
                source-address {
                    2001:DB8:1111::2/128;
                }
                destination-address {
                    2001:DB8:2222::2/128;
                }
            }
            then {
                translated {
                    source-pool src-pool;
                    destination-pool dest-pool;
                    translation-type {
                        napt-pt;
                    }
                }
            }
        }
    }
        rule-set rule-napt-pt-src {
            match-direction input;
            rule r1 {
                match {
                    source-address 2001:DB8:1111::2/128;
                    destination-address 10.99.10.0/24;
                }
                then {
                    source-nat {
                        pool {
                            src-pool;
                        }
                    }
                }
            }
        }
} # end nat
    
    } # end source

    destination {

    
        pool dest-pool {
            address {
                10.99.10.2/32;
            }
        }

        rule-set rule-napt-pt-dest {
            match-direction input;
            rule r1 {
                match {
                    destination-address 2001:DB8:2222::2/128;
                }
                then {
                    destination-nat {
                        pool {
                            dest-pool;
                        }
                    }
                }
            }
        }

    
    } # end destination
} # end nat

侵入検知システム(IDS)

SP3 の次世代サービスのIDSルールは、 screen ブランチで定義されています。さまざまな要素の命名には若干の違いがありますが、主な変更点は、IPv4オプションとIPv6拡張子を持つパケットを検出する際の動作です。

  • MS カード上の IDS サービスでは、デフォルトの動作は、IPv4 オプションと IPv6 拡張子を持つパケットを検出してドロップすることです。これらのパケットを許可したい場合は、設定を通じて明示的に許可する必要があります。

  • SP3 の IDS 次世代サービスでは、デフォルトの動作は IPv4 オプションと IPv6 拡張子を持つパケットを許可することです。これらのパケットを検出してドロップする場合は、設定を通じて明示的に禁止する必要があります。

表 21 は 、設定の違いの例を示しています。

表21:IDSルール

MSカード

SP3

[edit services]
service-set sset1 {
    ids-rules r1;
    ids-rules r2;
}
[edit services]
service-set sset1 {
    # Replace ids-rules with ids-option.
    ids-option ids1;
    ids-option ids2;
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            <...>
        }
    }
}
[edit services]
# Define ids rules under the screen branch.
screen {
    # Replace rule with ids-option.
    ids-option ids1 {
        match-direction input;
        # Flatten hierarchy by removing term and placing 
        # contents directly under ids-option.
        <...>
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                allow-ip-options [ loose-source-route route-record router-alert security stream-id strict-source-route timestamp ];
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        # By default, all ip options are allowed.
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                <no allow-ip-options configured>
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        # Explicitly specify the disallowed options.
        ip {
            loose-source-route-option;
            record-route-option;
            security-option;
            stream-option;
            strict-source-route-option;
            timestamp-option;
            # router-alert option for IPv4 is not supported.
        }
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                allow-ipv6-extension-header [ ah dstopts esp fragment hop-by-hop mobility routing ];
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        # By default, all ipv6 extensions are allowed.
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                <no allow-ipv6-extension-header configured>
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        ip {
            # Explicitly specify the disallowed extensions.
            ipv6-extension-header {
                AH-header;
                ESP-header;
                fragment-header;
                hop-by-hop-header;
                mobility-header;
                routing-header;
                # dstoptions is not supported.
            }
        }
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                aggregation {
                    source-prefix 24;
                    destination-prefix 24;
                    source-prefix-ipv6 64;
                    destination-prefix-ipv6 64;
                }
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        aggregation {
            source-prefix-mask 24;
            destination-prefix-mask 24;
            source-prefix-v6-mask 64;
            destination-prefix-v6-mask 64;
        }
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                icmp-fragment-check;
                icmp-large-packet-check;
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        # Group icmp checks under icmp.
        icmp {
            fragment;
            large;
        }
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                land-attack-check;
                tcp-winnuke-check;
                tcp-syn-fragment-check;
                tcp-syn-defense;
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        # Group tcp checks under tcp.
        tcp {
            land;
            winnuke;
            syn-frag;
            # tcp-syn-defense is not supported.
        }
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                session-limit {
                    by-source {
                        maximum 100;
                        rate 10;
                        packets 1k;
                    }
                    by-destination {
                        maximum 100;
                        rate 10;
                        packets 1k;
                    }
                }
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        limit-session {
            by-source {
                maximum-sessions 100;
                session-rate 10;
                packet-rate 1k;
            }
            by-destination {
                maximum-sessions 100;
                session-rate 10;
                packet-rate 1k;
            }
        }
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                session-limit {
                    by-source {
                        by-protocol {
                            tcp {
                                maximum 100;
                                rate 10;
                                packets 1k;
                            }
                            udp {
                                maximum 100;
                                rate 10;
                                packets 1k;
                            }
                            icmp {
                                maximum 100;
                                rate 10;
                                packets 1k;
                            }
                        }
                }
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        limit-session {
            by-source {
                by-protocol {
                    tcp {
                        maximum-sessions 100;
                        session-rate 10;
                        packet-rate 1k;
                    }
                    udp {
                        maximum-sessions 100;
                        session-rate 10;
                        packet-rate 1k;
                    }
                    icmp {
                        maximum-sessions 100;
                        session-rate 10;
                        packet-rate 1k;
                    }
                }
            }
        }
    }
}
[edit services]
ids {
    rule r1 {
        match-direction input;
        term t1 {
            then {
                session-limit {
                    by-destination {
                        by-protocol {
                            tcp {
                                maximum 100;
                                rate 10;
                                packets 1k;
                            }
                            udp {
                                maximum 100;
                                rate 10;
                                packets 1k;
                            }
                            icmp {
                                maximum 100;
                                rate 10;
                                packets 1k;
                            }
                        }
                }
            }
        }
    }
}
[edit services]
screen {
    ids-option ids1 {
        match-direction input;
        limit-session {
            by-destination {
                by-protocol {
                    tcp {
                        maximum-sessions 100;
                        session-rate 10;
                        packet-rate 1k;
                    }
                    udp {
                        maximum-sessions 100;
                        session-rate 10;
                        packet-rate 1k;
                    }
                    icmp {
                        maximum-sessions 100;
                        session-rate 10;
                        packet-rate 1k;
                    }
                }
            }
        }
    }
}

MSカードからSP3への移行

次世代サービスをサポートするようにルーターを設定するには、この手順を使用します。

通常、この手順は、MSカード上のレガシーサービスをサポートするルーターをSP3上の次世代サービスをサポートするルーターに移行する場合に使用されますが、移行元のルーターにMSカードカードが含まれていない場合でもこの手順が適用されます。

次世代サービスの設定は従来のサービスプロビジョニングと互換性がないため、SP3 で次世代サービスをサポートするようにルーターを移行するには、ルーターのプロビジョニングを完全に解除して再プロビジョニングする必要があります。さらに:

  • MSカードがあるルーターにはSP3カードを取り付けることはできません。

  • MSカードを搭載したルーターで次世代サービスを設定することはできません。

  • SP3カードを搭載したルーターでは、レガシーサービスを設定できません。

つまり、ルーターは MS カードまたは SP3 カードのどちらかで実行できますが、両方を同時に実行することはできません。

注:

この手順はサービスに影響します。ルーターを工場出荷時のデフォルト設定に設定しています。

  1. ルーターをリリース19.3R2にアップグレードします。
  2. 現在のルーター設定をリモートホストにバックアップします。
  3. ルーターを工場出荷時のデフォルト設定に設定します。
    1. 工場出荷時のデフォルト設定でルーターをロードします。
    2. 工場出荷時のデフォルト設定を読み込む前と同じIPアドレスで管理インターフェイスを設定します。
    3. ルーターへのアクセスを継続できるようにSSHを設定します。次に例を示します。
    4. 変更をコミットします。
  4. ルーターで次世代サービスを有効にします。

    Junos OSには、ルーター上で次世代サービスを設定する場合に有効にするシステム全体の運用パラメーターが用意されています。デフォルトでは、このパラメーターは有効になっていません。

    動作モードから:

    注:

    この設定は永続的であり、再起動後も存続します。

  5. ルーターを再起動します。
  6. MSカードカードをSP3カードと交換します。
  7. ルーターを再プロビジョニングします。

    開始点として、ステップ 2 からバックアップを復元できますが、コミットする前に次世代サービスと互換性があるようにこの設定を変更する必要がある場合があります。