現在セットアップしているルーターが2つあり、データセンターから提供されたプライベートAS番号をサーバーのネットワークに供給します。
私がやりたいのは、ネットワーク上のサーバーにVRRPフェイルオーバーのデフォルトルートを提供することと、ルーティングのアウトバウンドとインバウンドが常に1つのパスを介して優先され、プライマリ優先パスがダウンしている場合にのみ他のパスを使用することです。 。つまり、マスター/バックアップの設定です。
私はVRRPのものをすでに整理しています。しかし、BGPに関する私の知識は非常に基本的です。
トポロジを少し明確にするために、トポロジのアスキーアートをいくつか描きましょう。
ISPA (AS 1) ISPB (AS 1)
| |
| |
R1 --- P2P (ethernet) --- R2 (AS65007)
| |
+------- LAN (ipoib) -----+
ISP A&Bルーターは、同じデータセンターにあるリモートルーターです。彼らがAS1を持っていると仮定しましょう。そしてまた私は65007であるプライベートASを持っています
それをもう一度述べましょう。 AS 1からのトラフィックは、ISP AへのR1パスがオフラインでない限り、常にR1を介して到達し、R2は到達しないようにします。
ISPAとR1がそれぞれIPの10.1.1.1/30と10.1.1.2/30を持っていると仮定しましょう。そして、ISPBとR2がそれぞれIPの10.1.1.5/30と10.1.1.6/30を持っていると仮定します。
また、アドバタイズしたいネットワーク範囲が192.168.1.0/25であると仮定します。
バイアスルーティングのない現在の構成は現在機能しており、次のようになります。
R1の場合(R2はほぼ同じです)。
ip prefix-list Net:Out seq 5 permit 192.168.1.0/25
router bgp 65007
bgp router-id 10.1.1.2
redistribute connected route-map Redist:BGP
neighbor 10.1.1.1 remote-as 558
neighbor 10.1.1.1 description Net
neighbor 10.1.1.1 soft-reconfiguration inbound
neighbor 10.1.1.1 prefix-list Net:Out out
route-map Redist:BGP permit 10
match ip address prefix-list Net:Out
**これも問題があります。R1は10.1.1.6でR2に到達できることを認識していないためです。 IBGPはありません。上記でそれを修正するにはどうすればよいですか? ****
いくつかの方法でデータにバイアスをかけることができると言われています。 NOCから、localprefを使用して、バックアップルーターにASを付加できると言われました。
この権利を理解すると、次のようになります。 R1構成は同じままです。これはquaggaの正しい構文ですか?これは機能しますか?
ip prefix-list Net:Out seq 5 permit 192.168.1.0/25
router bgp 65007
bgp router-id 10.1.1.6
redistribute connected route-map Redist:BGP
neighbor 10.1.1.5 remote-as 558
neighbor 10.1.1.5 route-map Net:In in
neighbor 10.1.1.5 description Net
neighbor 10.1.1.5 soft-reconfiguration inbound
neighbor 10.1.1.5 prefix-list Net:Out out
route-map Redist:BGP permit 10
match ip address prefix-list Net:Out
set as-path prepend 65007 65007
route-map Net:In
set local-preference 10
しかし、ネットワーキングの分野で働いている知人に私の問題を説明したとき、彼はデータがISPからR2側を経由してダウンする可能性がまだ高いと言って、別の方法を説明しました。彼は、ISPがそれを受け入れるならば、私もMEDを使うことができると言いました。または、両方の回線が同じISPからのものであるため、ルーティングは非常に決定論的であり、常に最も特殊なパスを選択すると彼は私に言いました。そこで彼は、私のプライマリR1ルーターで、代わりに2つのネットワークをアドバタイズすることを提案しました。つまり、2つの/ 26です。これは正しいですか、それは機能しますか?おそらく両方の方法を組み合わせる必要がありますか?
ip prefix-list Net:Out seq 5 permit 192.168.1.0/26
ip prefix-list Net:Out seq 10 permit 192.168.1.64/26
router bgp 65007
bgp router-id 10.1.1.2
redistribute connected route-map Redist:BGP
neighbor 10.1.1.1 remote-as 558
neighbor 10.1.1.1 route-map in Net:In
neighbor 10.1.1.1 description Net
neighbor 10.1.1.1 soft-reconfiguration inbound
neighbor 10.1.1.1 prefix-list Net:Out out
route-map Redist:BGP permit 10
match ip address prefix-list Net:Out
では、BGPの専門家が私に何を提案し、必要な変更を加えた後、実際に機能していることをどのように判断すればよいでしょうか。
更新:すぐ上のサブネット方式が機能しませんでした。私のプロバイダーは25未満のものを拒否していると思います。1台のルーターで試したときに確認されました。 show ipbgpはルートをまったく伝播しませんでした。おそらく私はMEDを使用できますか?それは最初の方法よりも良いでしょうか?
目的を達成するにはいくつかの方法があります。もちろん、ISPにアドバタイズするルート(プレフィックス)の前に独自のASを追加し、内部で再アドバタイズする(予定する)ルートにLOCAL_PREFを設定することは良い点です。
基本的に、次のことを行う必要があります。
ポイント1の場合、MED、ASプレフィックス、コミュニティなどが調整可能なメトリック(つまり、BGP属性)ですが、リモート側から変更せずに機能するのは、おそらくASプレフィックスです(たとえば、MEDにはステートメントが必要な場合があります)。 ISPルーターの「bgpalways-compare-med」のように、設定によって異なります)。
ポイント2では、LOCAL_PREFとWEIGHTを使用できます(この場合、コミュニティやその他のテクニックは関係ありません)。 WEIGHTはシスコ独自のものです(ただし、Quaggaはそれを使用します)。また、BGPアップデートには含まれていません(ローカルで重要)。したがって、LOCAL_PREFを使用します(ただし、まだ持っていないiBGPで機能します)。
そうは言っても、必要に応じてnetdc.comにアクセスするには、次の1つのオプションがあります。
#
# R1
#
router bgp 65007
bgp router-id 10.1.1.2
network 192.168.1.0/25
neighbor 10.1.1.1 remote-as 558
neighbor 10.1.1.1 description Net
neighbor 10.1.1.1 soft-reconfiguration inbound
neighbor 10.1.1.1 route-map Net:In in
neighbor 10.1.1.1 route-map Net:Out out
neighbor iBGP_peers peer-group
neighbor iBGP_peers remote-as 65007
neighbor iBGP_peers password $whatyouwant
neighbor iBGP_peers update-source $IP #The interface in the common subnet 192.168.1.0/25, otherwise you need an internal routing protocol (IGP) also
neighbor iBGP_peers next-hop-self # Otherwise you need to advertise the p2p network between you and ISP
neighbor $IP_R2_in_192.168.1.0 peer-group iBGP_peers
neighbor $IP_R2_in_192.168.1.0 description R2
ip prefix-list local-allocations seq 10 permit 192.168.1.0/25
route-map Net:In
description allow everything
route-map Net:Out
description announce allocated routes sourced from our AS only (avoid to become a transit AS)
match ip address prefix-list local-allocations
#
# R2
#
router bgp 65007
bgp router-id 10.1.1.6
network 192.168.1.0/25
neighbor 10.1.1.5 remote-as 558
neighbor 10.1.1.5 description Net
neighbor 10.1.1.5 soft-reconfiguration inbound
neighbor 10.1.1.5 route-map Net:In_backup in
neighbor 10.1.1.5 route-map Net:Out_backup out
neighbor iBGP_peers peer-group
neighbor iBGP_peers remote-as 65007
neighbor iBGP_peers password $whatyouwant
neighbor iBGP_peers update-source $IP #The interface in the common subnet 192.168.1.0/25, otherwise you need an internal routing protocol (IGP) also
neighbor iBGP_peers next-hop-self # Otherwise you need to advertise the p2p network between you and ISP
neighbor $IP_R1_in_192.168.1.0 peer-group iBGP_peers
neighbor $IP_R1_in_192.168.1.0 description R1
ip prefix-list local-allocations seq 10 permit 192.168.1.0/25
route-map Net:In_backup
description iBGP will de-prefer all the prefixes
set local-preference 10
route-map Net:Out_backup
description announce allocated routes sourced from our AS only
match ip address prefix-list local-allocations
set as-path prepend 65007 65007 65007
ちなみに、回避できれば再配布は悪いです。 'network'コマンドを使用してプレフィックスをアドバタイズします(Quaggaでは、Ciscoとは異なり、RIBにサブネットは必要ありません。