レイヤー 3 VPN のインターネット アクセスの有効化
このトピックでは、VPN内のカスタマーエッジ(CE)ルーターへのインターネットアクセスを提供するようにプロバイダーエッジ(PE)ルーターを設定し、ネットワークアドレストランスレータ(NAT)を介してCEルーターにインターネットトラフィックをルーティングするルーターを設定する例を紹介します。使用する方法は、個々のネットワークのニーズと仕様によって異なります。
レイヤー 3 VPN を介した VRF 以外のインターネット アクセス
Junos OSは、レイヤー3 のVPN(仮想プライベートネットワーク)からのインターネットアクセスをサポートしています。また、 階層レベルで ステートメントを next-table
設定する [edit routing-instances routing-instance-name routing-options static route]
必要があります。設定された場合、このステートメントは、VPNテーブル(ルーティングインスタンス)からメインルーティングテーブル(デフォルトインスタンス)inet.0へのデフォルトルートを指すことができます。メインルーティングテーブルは、すべてのインターネットルートを保存し、最終的なルート解決が行われる場所です。
以下のセクションでは、VPNルーティングおよび転送(VRF)インターフェイスを使用せずに、レイヤー3 VPN内のCEルーターにインターネットアクセスを提供する方法について説明します。これらの方法はレイヤー 3 VPN を効果的に バイパスするため、詳しく説明されていません。
CE ルーターが PE ルーターから独立してインターネットにアクセス
この設定では、PE ルーターはインターネット アクセスを提供しません。CE ルーターは、インターネット トラフィックを別のサービス プロバイダ、または同じサービス プロバイダ(ただし異なるルーター)に送信します。PE ルーターは、レイヤー 3 VPN トラフィックのみを処理します( 図 1 を参照)。
PE ルーターがレイヤー 2 インターネット サービスを提供
この設定では、PE ルーターはレイヤー 2 デバイスとして機能し、完全なインターネット ルートを持つ別のルーターにレイヤー 2 接続(回線クロスコネクト[CCC]など)を提供します。CE ルーターは、PE ルーターに対して 1 つの物理インターフェイスと 2 つの論理インターフェイスのみを使用することも、PE ルーターへの複数の物理インターフェイスを使用することもできます( 図 2 を参照)。
レイヤー 3 VPN による分散インターネット アクセス
このシナリオでは、PE ルーターは CE ルーターへのインターネット アクセスを提供します。以下の例では、選択した CE ルーターにインターネット アクセスを提供する PE ルーターの inet.0 テーブルにインターネット ルート(またはデフォルト)が存在すると仮定しています。
VPNからインターネットにアクセスする場合、VPNがパブリックアドレススペースを使用していない限り、VPNのプライベートアドレスとインターネットで使用されるパブリックアドレスの間でNAT(ネットワークアドレス変換)を実行する必要があります。このセクションでは、VPN にインターネット アクセスを提供する方法の例をいくつか紹介しますが、そのほとんどでは CE ルーターがアドレス変換を実行する必要があります。ただし、 別の NAT デバイスを介したインターネット トラフィックのルーティング の例では、サービス プロバイダが PE ルーターに接続された NAT デバイスを使用して NAT 機能を提供する必要があります。
すべての例では、VPNのパブリックIPアドレスプール(変換されたプライベートアドレスに対応するエントリー)をinet.0テーブルに追加し、インターネットルーターに伝送して、パブリック宛先からのリバーストラフィックを受信する必要があります。
レイヤー 3 VPN 向けの異なるインターフェイスを介した VPN とインターネット トラフィックのルーティング
この例では、VPNとインターネットのトラフィックは、異なるインターフェイスを介してルーティングされます。CE ルーターはVPNインターフェイスを介してVPNトラフィックを送信し、ルーターPE1 のメインルーティングテーブルの一部である別のインターフェイスを介してインターネットトラフィックを送信します(CEルーターは、2つの論理ユニットまたは2つの物理インターフェイスを持つ1つの物理インターフェイスのいずれかを使用できます)。また、CE ルーターでも NAT が発生します( 図 3 を参照)。
PE ルーターは、VPN のパブリック IP アドレス プールをインストールして他のコア ルーターにアドバタイズするように設定されています(リターン トラフィック用)。VPN トラフィックは通常通りルーティングされます。 図 4 は、PE ルーターの VPN 設定を示しています。
この例の設定には、以下の機能があります。
ルーターPE1は、フレームリレーカプセル化を使用して、2つの論理インターフェイスを使用してルーターCE1に接続します。
ルーターPE1とルーターCE1間のルーティングプロトコルはEBGPです。
ルーターCE1のパブリックIPアドレスプールは
10.12.1.1
()を通ります10.12.1.254
10.12.1.0/24
。この
next-hop-self
設定は、ルーターPE1 のfix-nh policy
ステートメントから派生します。PE ルーターは、非 VPN ルートの PE ルーターのループバック アドレスに対してのみネクストホップ解決を行えるように強制next-hop-self
されます(デフォルトでは、VPN-Internet Protocol バージョン 4 [IPv4] ルートが 送信next-hop-self
されます)。
ルーターCE1は、そのパブリックインターフェイスを指す静的デフォルトルートを設定することができます。
以下のセクションでは、異なるインターフェイスを介してVPNとインターネットトラフィックをルーティングする方法を示します。
- ルーターPE1でのインターフェイスの設定
- ルーターPE1でのルーティングオプションの設定
- ルーターPE1でのBGP、IS-IS、LDPプロトコルの設定
- ルーターPE1でのルーティングインスタンスの設定
- ルーターPE1のポリシーオプションの設定
- 異なるインターフェイスでルーティングされたトラフィック:ルーター別に要約された設定
ルーターPE1でのインターフェイスの設定
VPNトラフィックを処理するインターフェイスとインターネットトラフィックを処理するインターフェイスを設定します。
[edit] interfaces { t3-0/2/0 { dce; encapsulation frame-relay; unit 0 { description "to CE1 VPN interface"; dlci 10; family inet { address 192.168.197.13/30; } } unit 1 { description "to CE1 public interface"; dlci 20; family inet { address 192.168.198.201/30; } } } }
ルーターPE1でのルーティングオプションの設定
ルーターPE1の静的ルートを設定して、inet.0のCEルーターのパブリックIPアドレスプールへのルートをインストールします。
[edit] routing-options { static { route 10.12.1.0/24 next-hop 192.168.198.202; } }
ルーターPE1でのBGP、IS-IS、LDPプロトコルの設定
ルーターPE1にBGPを設定して、非VPNおよびVPNピアリングを許可し、VPNのパブリックIPアドレスプールをアドバタイズします。
[edit] protocols { bgp { group pe-pe { type internal; local-address 10.255.14.171; family inet { any; } family inet-vpn { any; } export [fix-nh redist-static]; neighbor 10.255.14.177; neighbor 10.255.14.179; } } }
ルーターPE1でIS-ISを設定して、内部ルートへのアクセスを許可します。
[edit protocols] isis { level 1 disable; interface so-0/0/0.0; interface lo0.0; }
ルーターPE1でLDPを設定してVPNルートをトンネリングします。
[edit protocols] ldp { interface so-0/0/0.0; }
ルーターPE1でのルーティングインスタンスの設定
ルーターPE1でルーティングインスタンスを設定します。
[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; protocols { bgp { group to-CE1 { peer-as 63001; neighbor 192.168.197.14; } } } } }
ルーターPE1のポリシーオプションの設定
ルーターPE1でポリシーオプションを設定する必要があります。ポリシー ステートメントは、 fix-nh
すべての非 VPN ルートに対して設定 next-hop-self
します。
[edit] policy-options { policy-statement fix-nh { then { next-hop self; } } }
ポリシーステートメントは redist-static
、VPNのパブリックIPアドレスプールをアドバタイズします。
[edit policy-options] policy-statement redist-static { term a { from { protocol static; route-filter 10.12.1.0/24 exact; } then accept; } term b { then reject; } }
以下のインポートおよびエクスポートポリシーを設定します vpna
。
[edit policy-options] policy-statement vpna-import { term a { from { protocol bgp; community vpna-comm; } then accept; } term b { then reject; } } policy-statement vpna-export { term a { from protocol bgp; then { community add vpna-comm; accept; } } term b { then reject; } } community vpna-comm members target:63000:100;
異なるインターフェイスでルーティングされたトラフィック:ルーター別に要約された設定
ルーターPE1
インターフェイス
interfaces { t3-0/2/0 { dce; encapsulation frame-relay; unit 0 { description "to CE1 VPN interface"; dlci 10; family inet { address 192.168.197.13/30; } } unit 1 { description "to CE1 public interface"; dlci 20; family inet { address 192.168.198.201/30; } } } }
ルーティング オプション
routing-options { static { route 10.12.1.0/24 next-hop 192.168.198.202; } }
BGP プロトコル
protocols { bgp { group pe-pe { type internal; local-address 10.255.14.171; family inet { any; } family inet-vpn { any; } export [ fix-nh redist-static]; neighbor 10.255.14.177; neighbor 10.255.14.179; } } }
IS-ISプロトコル
isis { level 1 disable; interface so-0/0/0.0; interface lo0.0; }
LDPプロトコル
ldp { interface so-0/0/0.0; }
ルーティング インスタンス
routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; protocols { bgp { group to-CE1 { peer-as 63001; neighbor 192.168.197.14; } } } } }
ポリシー オプション/ポリシー ステートメント
policy-options { policy-statement fix-nh { then { next-hop self; } } policy-statement redist-static { term a { from { protocol static; route-filter 10.12.1.0/24 exact; } then accept; } term b { then reject; } } }
インポートおよびエクスポート ポリシー
policy-statement vpna-import { term a { from { protocol bgp; community vpna-comm; } then accept; } term b { then reject; } } policy-statement vpna-export { term a { from protocol bgp; then { community add vpna-comm; accept; } } term b { then reject; } } community vpna-comm members target:63000:100;
同じインターフェイスを介してVPNと発信インターネットトラフィックをルーティングし、ルーティングは異なるインターフェイスを介してインターネットトラフィックを返す
この例では、CEルーターはVPNとインターネットトラフィックを同じインターフェイスを介して送信しますが、別のインターフェイスを介してリターンインターネットトラフィックを受信します。PE ルーターの VRF テーブルには、メイン ルーティング テーブル inet.0 を指すデフォルト ルートがあります。vpn パブリック IP アドレス プール(インターネット トラフィックの返し)を inet.0 の別のインターフェイスを介してルーティングします( 図 5 を参照)。CE ルーターは引き続き NAT 機能を実行します。
以下のセクションでは、同じインターフェイスを介してVPNと発信インターネットトラフィックをルーティングし、ルーティングは異なるインターフェイスを介してインターネットトラフィックを返す方法を示しています。
ルーターPE1の設定
この例では、 レイヤー3 VPNの異なるインターフェイスを介したルーティングVPNとインターネットトラフィックのルーターPE1と同じ設定を持っています。レイヤー 3 VPN の異なるインターフェイスを介したルーティング VPN とインターネット トラフィックに示すトポロジーを使用します。VPN ルーティング テーブルへのデフォルト ルートは、異なる方法で設定されます。 [edit routing-instances routing-instance-name routing-options]
階層レベルでは、vpna.inet.0にインストールされたデフォルトの静的ルートを設定し、解決のためにinet.0を指します。
[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-table inet.0; } } protocols { bgp { group to-CE1 { peer-as 63001; neighbor 192.168.197.14; } } } } }
また、PE ルーターの設定の違いを考慮して、ルーター CE1 の設定を変更する必要があります( レイヤー 3 VPN の異なるインターフェイスを介したルーティング VPN とインターネット トラフィックで説明されているルーター PE1 の設定と連携する設定から)。
同じインターフェイスを介してVPNとインターネットトラフィックを双方向にルーティング(VPNにはパブリックアドレスがあります)
このセクションでは、インターネットとCEルーターの両方を移動するVPNとインターネットのトラフィックを処理する単一の論理インターフェイスを設定する方法を示します。VPNにプライベートアドレスがない限り、このインターフェイスはVPNとインターネットの両方のトラフィックを処理できます。CE ルーターから受信した VPN ルートは、ルーティング テーブル グループによってメイン ルーティング テーブル inet.0 に追加されます。これにより、PE ルーターはインターネットからのリターン トラフィックを引き付けられます( 図 6 を参照)。
この例では、すべてのVPNルートが公開されているため、CEルーターはNATを実行する必要はありません。CE ルーターは PE ルーターへの単一のインターフェイスを持ち、そのルーターが VPN ルートをアドバタイズします。PE ルーターの VRF テーブルには、メイン ルーティング テーブル inet.0 を指すデフォルト ルートがあります。また、PE ルーターは、ルーティング テーブル グループによって CE ルーターから受信した VPN ルートを inet.0 にインポートします。
ルーターPE1の以下の設定は、 レイヤー3 VPNの異なるインターフェイスを介したルーティングVPNとインターネットトラフィックと同じトポロジーを使用します。この設定では、ルーターPE1とルーターCE1の間に(2つではなく)単一の論理インターフェイスを使用します。
以下のセクションでは、同じインターフェイスを介してVPNとインターネットトラフィックを双方向にルーティングする方法を示します(VPNにはパブリックアドレスがあります)。
- ルーターPE1でのルーティングオプションの設定
- ルーターPE1でのルーティングプロトコルの設定
- ルーターPE1でのルーティングインスタンスの設定
- 同じインターフェイスを介して双方向にルーティングされたトラフィック:ルーター別に要約された設定
ルーターPE1でのルーティングオプションの設定
ルーティングテーブルグループvpna.inet.0およびinet.0にVPNルートをインストールするためのルーティングテーブルグループ定義を設定します。
[edit] routing-options { rib-groups { vpna-to-inet0 { import-rib [ vpna.inet.0 inet.0 ]; } } }
ルーターPE1でのルーティングプロトコルの設定
ルーターPE1 でMPLS、BGP、IS-IS、LDPプロトコルを設定します。この設定には、 階層レベルでの policy redist-static
ステートメントは [edit protocols bgp group pe-pe]
含まれません。VPN ルートは IBGP に直接送信されます。
ルーターPE1でBGPを設定して、非VPNおよびVPNピアリングを許可し、VPNのパブリックIPアドレスプールをアドバタイズします。
[edit] protocols { mpls { interface so-0/0/0.0; } bgp { group pe-pe { type internal; local-address 10.255.14.171; family inet { any; } family inet-vpn { any; } export fix-nh; neighbor 10.255.14.177; neighbor 10.255.14.173; } } isis { level 1 disable; interface so-0/0/0.0; interface lo0.0; } ldp { interface so-0/0/0.0; } }
ルーターPE1でのルーティングインスタンスの設定
このセクションでは、ルーターPE1でルーティングインスタンスを設定する方法について説明します。ステートメントで定義された routing-options
静的ルートは、インターネットトラフィックをCEルーターからinet.0ルーティングテーブルに誘導します。ステートメントで定義された rib-group vpna-to-inet0
ルーティングテーブルグループは、inet.0にVPNルートを追加します。
ルーターPE1でルーティングインスタンスを設定します。
[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-table inet.0; } } protocols { bgp { group to-CE1 { family inet { unicast { rib-group vpna-to-inet0; } } peer-as 63001; neighbor 192.168.197.14; } } } } }
デフォルトルートを使用して、すべてのトラフィックをルーターPE1に転送するようにルーターCE1を設定する必要があります。または、EBGP を使用して、デフォルト ルートをルーター PE1 からルーター CE1 にアドバタイズすることもできます。
同じインターフェイスを介して双方向にルーティングされたトラフィック:ルーター別に要約された設定
ルーターPE1
この例では、 レイヤー3 VPNの異なるインターフェイスを介したルーティングVPNとインターネットトラフィックと同じ設定を使用しています。この設定では、ルーターPE1とルーターCE1の間に(2つではなく)単一の論理インターフェイスを使用します。
ルーティング オプション
routing-options { rib-groups { vpna-to-inet0 { import-rib [ vpna.inet.0 inet.0 ]; } } }
ルーティング プロトコル
protocols { mpls { interface so-0/0/0.0; } bgp { group pe-pe { type internal; local-address 10.255.14.171; family inet { any; } family inet-vpn { any; } export fix-nh; neighbor 10.255.14.177; neighbor 10.255.14.173; } } isis { level 1 disable; interface so-0/0/0.0; interface lo0.0; } ldp { interface so-0/0/0.0; } }
ルーティング インスタンス
routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-table inet.0; } } protocols { bgp { group to-CE1 { family inet { unicast { rib-group vpna-to-inet0; } } peer-as 63001; neighbor 192.168.197.14; } } } } }
同じインターフェイスを介したVPNとインターネットトラフィックの双方向ルーティング(VPNにはプライベートアドレスがあります)
このセクションの例では、(CEルーターからインターネット、インターネットからCEルーターへ)両方向に、同じインターフェイスを介してVPNとインターネットトラフィックをルーティングする方法を示しています。この例のVPNにはプライベートアドレスがあります。CEルーターでEBGPを設定できる場合、VPNにプライベートアドレスがある場合でも、 同じインターフェイス双方向(VPNはパブリックアドレスを持つ)を介したVPNとインターネットトラフィックのルーティングで説明されている設定を使用してPEルーターを設定できます。
このセクションで説明する例では、CEルーターは、VPNルートとパブリックルートをアドバタイズするために、別々のコミュニティを使用しています。PE ルーターは、inet.0 ルーティング テーブルにパブリック ルートのみを選択的にインポートします。この設定では、インターネットからのリターン トラフィックが、公共インターネット アドレスに送信される VPN トラフィックと同じインターフェースを PE ルーターと CE ルーター間で使用することを保証します( 図 7 を参照)。
この例では、CEルーターには1つのインターフェイスとPEルーターとのBGPセッションがあり、異なるコミュニティを持つVPNルートとインターネットルートにタグ付けしています。PE ルーターには 1 つのインターフェイスがあり、VPN のパブリック IP アドレス プールのルートを inet.0 に選択的にインポートし、inet.0 を指す VRF ルーティング テーブルにデフォルト ルートがあります。
以下のセクションでは、同じインターフェイスを介してVPNとインターネットトラフィックを双方向にルーティングする方法を示します(VPNにはプライベートアドレスがあります)。
- ルーターPE1のルーティングオプションの設定
- ルーターPE1のルーティングインスタンスの設定
- ルーターPE1のポリシーオプションの設定
- 同じインターフェイスで双方向にルーティングされたトラフィック(VPNにはプライベートアドレスがあります):ルーター別に要約された設定
ルーターPE1のルーティングオプションの設定
ルーターPE1では、vpna.inet.0およびinet.0ルーティングテーブルにVPNルートをインストールするようにルーティングテーブルグループを設定します。
[edit] routing-options { rib-groups { vpna-to-inet0 { import-policy import-public-addr-to-inet0; import-rib [ vpna.inet.0 inet.0 ]; } } }
ルーターPE1のルーティングインスタンスの設定
ルーターPE1で、ルーティングインスタンスを設定します。ルーティングインスタンスの設定の一環として、vpna.inet.0にインストールされ、解決のためにinet.0を指す静的ルートを設定します。
[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-table inet.0; } } } }
[edit routing-instances vpna protocols bgp
] 階層レベルで、パブリックルートをinet.0にインポートするポリシー(import-public-addr-to-inet0
)とルーティングテーブルグループ()を設定し、BGPがvpna-to-inet0
複数のルーティングテーブル(vpna.inet.0およびinet.0)にルートをインストールできるようにします。
[edit routing-instances vpna] protocols { bgp { group to-CE1 { import import-public-addr-to-inet0; family inet { unicast { rib-group vpna-to-inet0; } } peer-as 63001; neighbor 192.168.197.14; } } }
ルーターPE1のポリシーオプションの設定
ルーターPE1のポリシーオプションを設定して、最初にすべてのルートを受け入れ(term a
)、コミュニティとの public-comm
ルートをルーティングテーブルinet.0(term b
)にインストールします。
[edit] policy-options { policy-statement import-public-addr-to-inet0 { term a { from { protocol bgp; rib vpna.inet.0; community [ public-comm private-comm ]; } then accept; } term b { from { protocol bgp; community public-comm; } to rib inet.0; then accept; } term c { then reject; } } community private-comm members target:1:333; community public-comm members target:1:111; community vpna-comm members target:63000:100; }
同じインターフェイスで双方向にルーティングされたトラフィック(VPNにはプライベートアドレスがあります):ルーター別に要約された設定
ルーターPE1
ルーティング オプション
[edit] routing-options { rib-groups { vpna-to-inet0 { import-policy import-public-addr-to-inet0; import-rib [ vpna.inet.0 inet.0 ]; } } }
ルーティング インスタンス
[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-table inet.0; } } } }
ルーティング インスタンス プロトコル BGP
[edit routing-instances vpna] protocols { bgp { group to-CE1 { family inet { unicast { rib-group vpna-to-inet0; } } peer-as 63001; neighbor 192.168.197.14; } } }
ポリシー オプション
[edit] policy-options { policy-statement import-public-addr-to-inet0 { term a { from { protocol bgp; rib vpna.inet.0; community [ public-comm private-comm ]; } then accept; } term b { from { protocol bgp; community public-comm; } to rib inet.0; then accept; } term c { then reject; } } community private-comm members target:1:333; community public-comm members target:1:111; community vpna-comm members target:63000:100; }
別の NAT デバイスを介したインターネット トラフィックのルーティング
この例では、CEルーターはNATを実行しません。VPNとインターネットの両方のトラフィックを同じインターフェイスを介してPEルーターに送信します。PE ルーターは、2 つのインターフェイスによって NAT デバイスに接続されます。1つのインターフェイスがPEルーターのVRFテーブルで設定され、NATデバイス上のVPNインターフェイスを指し示し、VPNのインターネットトラフィックをルーティングできます。もう一方のインターフェイスはデフォルトのインスタンスです。例えば、パブリックルーティングテーブルinet.0の一部です。PE ルーターと NAT デバイス間の単一の物理接続と、グローバル ルーティング テーブルの一部として複数の論理接続(VRF テーブルと別のインターフェイスごとに 1 つ)を設定できます( 図 8 を参照)。
要件
この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。
M シリーズ ルーター
Junos OS リリース 9.3 以降
概要
この例のトポロジーは、 レイヤー3 VPNの異なるインターフェイスを介したルーティングVPNとインターネットトラフィックに示された図に拡張されています。CE ルーターは、VPNとインターネットの両方のトラフィックをルーターPE1に送信します。VPN トラフィックは、ルーター PE1 が受信した VPN ルートに基づいてルーティングされます。それ以外のトラフィックは、ルーターPE1のプライベートインターフェイスを使用してNATデバイスに送信され、その後、プライベートアドレスを変換し、そのルーターのパブリックインターフェイスを使用してルーターPE1にトラフィックを戻します( 図9を参照)。
トポロジ
構成
別の NAT デバイスを介してインターネット トラフィックをルーティングするには、次のタスクを実行します。
ルーターPE1でのインターフェイスの設定
手順
ルーターCE1からのVPNトラフィックのインターフェイスを設定します。
[edit] interfaces { t3-0/2/0 { dce; encapsulation frame-relay; unit 0 { description "to CE1 VPN interface"; dlci 10; family inet { address 192.168.197.13/30; } } } }
NATデバイス(ユニット0)との間のVPNトラフィック用インターフェイスと、NATデバイス(ユニット1)とのインターネットトラフィック用インターフェイスを設定します。
[edit] interfaces { at-1/3/1 { atm-options { vpi 1 maximum-vcs 255; } unit 0 { description "to NAT VPN interface"; vci 1.100; family inet { address 10.23.0.2/32 { destination 10.23.0.1; } } } unit 1 { description "to NAT public interface"; vci 1.101; family inet { address 10.23.0.6/32 { destination 10.23.0.5; } } } } }
ルーターPE1のルーティングオプションの設定
手順
ルーターPE1の静的ルートを設定して、NATデバイスを介してCEルーターにインターネットトラフィックを誘導します。ルーターPE1は、このルートをインターネットに配信します。
[edit] routing-options { static { route 10.12.1.0/24 next-hop 10.23.0.5; } }
ルーターPE1でのルーティングプロトコルの設定
手順
ルーターPE1で以下のルーティングプロトコルを設定します。
ルーターPE1でMPLSを設定します。VRFテーブルにNATデバイスのVPNインターフェイスを含めます。
[edit] protocols { mpls { interface so-0/0/0.0; interface at-1/3/1.0; } }
ルーターPE1でBGPを設定します。パブリックIPアドレスプールをアドバタイズするポリシーを含めます。
[edit] protocols { bgp { group pe-pe { type internal; local-address 10.255.14.171; family inet { any; } family inet-vpn { any; } export [ fix-nh redist-static ]; neighbor 10.255.14.177; neighbor 10.255.14.173; } } }
ルーターPE1でIS-ISを設定します。
[edit] protocols { isis { level 1 disable; interface so-0/0/0.0; interface lo0.0; } }
ルーターPE1でLDPを設定します。
[edit] protocols { ldp { interface so-0/0/0.0; } }
ルーターPE1でのルーティングインスタンスの設定
手順
ルーターPE1でレイヤー3 VPNルーティングインスタンスを設定します。
ルーターPE1でルーティングインスタンスを設定します。ルーティングインスタンス設定の一環として、 の下で
routing-options
、NATデバイスのVPNインターフェイスを指すvpna.inet.0の静的デフォルトルートを設定します(これはすべての非VPNトラフィックをNATデバイスに誘導します)。[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; interface at-1/3/1.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-hop 10.23.0.1; } } protocols { bgp { group to-CE1 { peer-as 63001; neighbor 192.168.197.14; } } } } }
ルーターPE1のレイヤー3 VPNルーティングインスタンスのルーティングポリシーを設定します。
policy-options { policy-statement fix-nh { then { next-hop self; } } policy-statement redist-static { term a { from { protocol static; route-filter 10.12.1.0/24 exact; } then accept; } term b { from protocol bgp; then accept; } term c { then accept; } } policy-statement vpna-import { term a { from { protocol bgp; community vpna-comm; } then accept; } term b { then reject; } } policy-statement vpna-export { term a { from protocol bgp; then { community add vpna-comm; accept; } } term b { then reject; } } community vpna-comm members target:63000:100; }
結果
ルーターPE1の設定モードから、show interfaces、show routing-options、show protocols、show routing-instances、show policy-optionsコマンドを入力して設定を確認します。出力結果に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show interfaces interfaces { t3-0/2/0 { dce; encapsulation frame-relay; unit 0 { description "to CE1 VPN interface"; dlci 10; family inet { address 192.168.197.13/30; } } } at-1/3/1 { atm-options { vpi 1 maximum-vcs 255; } unit 0 { description "to NAT VPN interface"; vci 1.100; family inet { address 10.23.0.2/32 { destination 10.23.0.1; } } } unit 1 { description "to NAT public interface"; vci 1.101; family inet { address 10.23.0.6/32 { destination 10.23.0.5; } } } } }
user@PE1# show routing-options routing-options { static { route 10.12.1.0/24 next-hop 10.23.0.5; } }
user@PE1# show protocols protocols { mpls { interface so-0/0/0.0; interface at-1/3/1.0; } bgp { group pe-pe { type internal; local-address 10.255.14.171; family inet { any; } family inet-vpn { any; } export [ fix-nh redist-static ]; neighbor 10.255.14.177; neighbor 10.255.14.173; } } isis { level 1 disable; interface so-0/0/0.0; interface lo0.0; } ldp { interface so-0/0/0.0; } }
user@PE1# show routing-instances routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; interface at-1/3/1.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-hop 10.23.0.1; } } protocols { bgp { group to-CE1 { peer-as 63001; neighbor 192.168.197.14; } } } } }
user@PE1# show policy-options policy-options { policy-statement fix-nh { then { next-hop self; } } policy-statement redist-static { term a { from { protocol static; route-filter 10.12.1.0/24 exact; } then accept; } term b { from protocol bgp; then accept; } term c { then accept; } } policy-statement vpna-import { term a { from { protocol bgp; community vpna-comm; } then accept; } term b { then reject; } } policy-statement vpna-export { term a { from protocol bgp; then { community add vpna-comm; accept; } } term b { then reject; } } community vpna-comm members target:63000:100; }
レイヤー 3 VPN を介したインターネット アクセスの一元化
このセクションでは、インターネットアクセスの中央サイトとして動作するようにCEルーターを設定する方法をいくつか説明します。他のサイト(CEルーター)からのインターネットトラフィックは、そのルーターのVPNインターフェイスを使用してハブCEルーター(NATも実行)にルーティングされます。次に、ハブCEルーターは、inet.0テーブルで識別された別のインターフェイスを介して、インターネットに接続されたPEルーターにトラフィックを転送します。ハブCEルーターは、スポークCEルーターにデフォルトルートをアドバタイズできます。このタイプの設定の欠点は、すべてのトラフィックがインターネットにアクセスする前に中央のCE ルーターを経由する必要があることで、このルーターがあまりにも多くのトラフィックを受信するとネットワークの遅延が発生します。ただし、企業ネットワークでは、ほとんどの企業ネットワークが単一のファイアウォールで VPN とインターネットを分離するため、トラフィックを中央サイトにルーティングする必要がある場合があります。
このセクションには、以下の例が含まれています。
ハブCEルーターを介したインターネットトラフィックのルーティング
この例では、インターネットトラフィックはハブCEルーターを介してルーティングされます。ハブCEルーターには、VPNインターフェイスとパブリックインターフェイスの2つのインターフェイスがあります。VPN インターフェイスを介してハブ PE ルーターから転送されたトラフィックに対して NAT を実行し、そのトラフィックをパブリック インターフェイスからハブ PE ルーターに戻します。ハブPEルーターのVRFテーブルには、ハブCEルーターのVPNインターフェイスを指す静的デフォルトルートがあります。このデフォルト ルートは他の VPN にアナウンスされ、VPN 以外のすべてのトラフィックがハブ CE ルートに集まっています。ハブPE ルーターは、VPNのパブリックIPアドレススペースもインストールして配布します( 図10を参照)。
この例の設定は、 別の NAT デバイスを介したインターネット トラフィックのルーティングで説明したものとほとんど同じです。違いは、ルーターPE1が他のCEルーターに静的デフォルトルートをアナウンスするように設定されていることです( 図11を参照)。
以下のセクションでは、ハブCEルーターを介してインターネットトラフィックをルーティングすることで、一元的なインターネットアクセスを設定する方法を示します。
ルーターPE1でのルーティングインスタンスの設定
ルーターPE1のルーティングインスタンスを設定します。この設定の一環として、 の下で routing-options
、vpna.inet.0にインストールするデフォルトの静的ルート(route 0.0.0.0/0
)を設定し、ルートをハブCEルーターのVPNインターフェイス()10.23.0.1
に向けます。また、ルーティングインスタンスの下にBGPを設定して、デフォルトルートをローカルCEルーターにエクスポートします。
[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; interface at-1/3/1.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-hop 10.23.0.1; } } protocols { bgp { group to-CE1 { export export-default; peer-as 63001; neighbor 192.168.197.14; } } } } }
ルーターPE1のポリシーオプションの設定
ルーターPE1でポリシーオプションを設定します。この設定の一環として、ルーターPE1は、 のすべてのリモートPEルーター vpna
に静的デフォルトルートをエクスポートする必要があります(の下term b
の policy-statement vpna-export
ステートメントで設定)。
[edit] policy-options { policy-statement vpna-export { term a { from protocol bgp; then { community add vpna-comm; accept; } } term b { from { protocol static; route-filter 0.0.0.0/0 exact; } then { community add vpna-comm; accept; } } term c { then reject; } } policy-statement export-default { term a { from { protocol static; route-filter 0.0.0.0/0 exact; } then accept; } term b { from protocol bgp; then accept; } term c { then reject; } } }
ハブCEルーターでルーティングされたインターネットトラフィック:ルーター別に要約された設定
ルーターPE1
ルーターPE1の設定は、 別のNATデバイスを介したインターネットトラフィックのルーティングの例とほとんど同じです。違いは、ルーターPE1が他のCEルーターに静的デフォルトルートをアナウンスするように設定されていることです。
ルーティング インスタンス
routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; interface at-1/3/1.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-hop 10.23.0.1; } } protocols { bgp { group to-CE1 { export export-default; peer-as 63001; neighbor 192.168.197.14; } } } } }
ポリシー オプション
policy-options { policy-statement vpna-export { term a { from protocol bgp; then { community add vpna-comm; accept; } } term b { from { protocol static; route-filter 0.0.0.0/0 exact; } then { community add vpna-comm; accept; } } term c { then reject; } } policy-statement export-default { term a { from { protocol static; route-filter 0.0.0.0/0 exact; } then accept; } term b { from protocol bgp; then accept; } term c { then reject; } } }
複数の CE ルーターを介したインターネット トラフィックのルーティング
このセクションの例は、 レイヤー 3 VPN を介した一元化されたインターネット アクセスで説明されている拡張機能です。この例では、類似の機能を実行する複数のハブ CE ルーターによって、異なるサイトに異なる出口点を提供します。各ハブCE ルーターは、デフォルトルートに異なるルートターゲットをタグ付けし、スポークCEルーターがインターネットアクセスに使用するハブサイトを選択できるようにします( 図12を参照)。
この例では、NATとインターネットトラフィックを処理する2つのハブCEルーターを使用しています。
コミュニティ
public-comm1
を含む Hub1 CE ルーター タグ0/0
(ターゲット:1:111
コミュニティ
public-comm2
付き Hub2 CE ルーター タグ0/0
(ターゲット:1:112
この例のスポーク CE ルーターは、インターネット アクセス用に Hub2 に偏って設定されています。
以下のセクションでは、インターネットトラフィックとNATを処理するために、2つのハブCEルーターを設定する方法について説明します。
- ルーターPE1でのルーティングインスタンスの設定
- ルーターPE1のポリシーオプションの設定
- ルーターPE3でのルーティングインスタンスの設定
- ルーターPE3のポリシーオプションの設定
- 複数のCEルーターを介したインターネットトラフィックのルーティング:ルーター別の構成概要
ルーターPE1でのルーティングインスタンスの設定
ルーターPE1でルーティングインスタンスを設定します。
[edit] routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; interface at-1/3/1.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-hop 10.23.0.1; } } protocols { bgp { group to-CE1 { export export-default; peer-as 63001; neighbor 192.168.197.14; } } } } }
ルーターPE1のポリシーオプションの設定
ルーターPE1のポリシーオプションは、 ハブCEルーターを介したインターネットトラフィックのルーティングと同じですが、この例の設定には、 ステートメント内に追加のコミュニティ、 public-comm1
、 が export
含まれています。
[edit] policy-options { policy-statement vpna-import { term a { from { protocol bgp; community vpna-comm; } then accept; } term b { then reject; } } policy-statement vpna-export { term a { from { protocol static; route-filter 0.0.0.0/0 exact; } then { community add public-comm1; community add vpna-comm; accept; } } term b { from protocol bgp; then { community add vpna-comm; accept; } } term c { then reject; } } community public-comm1 members target:1:111; community public-comm2 members target:1:112; community vpna-comm members target:63000:100; }
ルーターPE2の設定は、ルーターPE2がコミュニティ public-comm2
を通じてデフォルトルートをエクスポートする点を除いて、ルーターPE1の設定と同じです。
ルーターPE3でのルーティングインスタンスの設定
ルーターPE3でルーティングインスタンス vpna
を設定します。
[edit] routing-instances { vpna { instance-type vrf; interface t1-0/2/0.0; route-distinguisher 10.255.14.173:100; vrf-import vpna-import; vrf-export vpna-export; protocols { rip { group to-vpn12 { export export-CE; neighbor t1-0/2/0.0; } } } } }
ルーターPE3のポリシーオプションの設定
ルーターPE1の vrf-import
ポリシーオプションの設定で指定された追加のコミュニティに基づいて、インターネット出口点を選択する ルーターPE3のポリシーを設定します。
[edit] policy-options { policy-statement vpna-export { term a { from protocol rip; then { community add vpna-comm; accept; } } term b { then reject; } } policy-statement vpna-import { term a { from { protocol bgp; community public-comm1; route-filter 0.0.0.0/0 exact; } then reject; } term b { from { protocol bgp; community vpna-comm; } then accept; } term c { then reject; } } policy-statement export-CE { from protocol bgp; then accept; } community vpna-comm members target:69:100; community public-comm1 members target:1:111; community public-comm2 members target:1:112; }
複数のCEルーターを介したインターネットトラフィックのルーティング:ルーター別の構成概要
ルーターPE1
この設定は、 ハブ CE ルーターを介したインターネット トラフィックのルーティングの例の拡張です。同様の機能を実行する複数のハブCEルーターを使用することで、さまざまなサイトに異なる出口点を提供します。
ルーティング インスタンス
routing-instances { vpna { instance-type vrf; interface t3-0/2/0.0; interface at-1/3/1.0; route-distinguisher 10.255.14.171:100; vrf-import vpna-import; vrf-export vpna-export; routing-options { static { route 0.0.0.0/0 next-hop 10.23.0.1; } } protocols { bgp { group to-CE1 { export export-default; peer-as 63001; neighbor 192.168.197.14; } } } } }
ポリシー オプション
policy-options { policy-statement vpna-import { term a { from { protocol bgp; community vpna-comm; } then accept; } term b { then reject; } } policy-statement vpna-export { term a { from { protocol static; route-filter 0.0.0.0/0 exact; } then { community add public-comm1; community add vpna-comm; accept; } } term b { from protocol bgp; then { community add vpna-comm; accept; } } term c { then reject; } } community public-comm1 members target:1:111; community public-comm2 members target:1:112; community vpna-comm members target:63000:100; }
ルーターPE2
ルーターPE2の設定は、ルーターPE2がコミュニティ public-comm2
を通じてデフォルトルートをエクスポートする点を除き、ルーターPE1の設定と同じです。
ルーターPE3
ルーティング インスタンス
routing-instances { vpna { instance-type vrf; interface t1-0/2/0.0; route-distinguisher 10.255.14.173:100; vrf-import vpna-import; vrf-export vpna-export; protocols { rip { group to-vpn12 { export export-CE; neighbor t1-0/2/0.0; } } } } }
ポリシー オプション
policy-options { policy-statement vpna-export { term a { from protocol rip; then { community add vpna-comm; accept; } } term b { then reject; } } policy-statement vpna-import { term a { from { protocol bgp; community public-comm1; route-filter 0.0.0.0/0 exact; } then reject; } term b { from { protocol bgp; community vpna-comm; } then accept; } term c { then reject; } } policy-statement export-CE { from protocol bgp; then accept; } community vpna-comm members target:69:100; community public-comm1 members target:1:111; community public-comm2 members target:1:112; }