Advertisements
Home

MPLS Configuration (Part 4 – Backup Route)

Leave a comment

Masalah yang terjadi ketika kita konek ke provider adalah klo HQ di A mo konek ke BR dengan OSPF/EIGRP/IS-IS

Inget ga klo kita mau pake OSPF…semua area selain area 0 harus terhubung ke area 0 (backbone area)

Sedangkan area 0 harus contiguous (ga bole dipecah routing protocol lain atau area lain)

Tapi klo kita konek ke ISP yang pake BGP antar PE itu artinya ga contiguous (CEHQ – PE1 dan CEBR – PE2 pake OSPF Area 0, tapi antar PE pake BGP, jadi kek “kepotong ditengah2” gitu area 0 nya)

Apa yang terjadi dengan CE yang terhubung dengan PE melalui OSPF area 0 yang disebut backbone itu ketika melewati MPLS MP-BGP-nya ISP?!?

Yuk kita liat di dari kacamata ISP PE (ada di part 3) dengan show ip ospf 100

OSPF 100 vrf A connect ke Superbackbone (look at Connected to MPLS VPN Superbackbone)

Inilah yang dinamakan OSPF Superbackbone, nganterin paket dari HQ via OSPF-BGP…

=================================================

Nah, sekarang gw bikin ada link-backup deh…kek gini

Itu router-router “P” kita kasi OSPF (kaga pake “BGP-BGP”an) untuk link backup (buat jaga2 klo MPLS-nya mati)

Lah, bukannya malah jadi lebih prefer link backup?? kan INTRA area (sama2 OSPF)?? klo pake BGP kan jadi INTER area…??

Yup…makanya kita “kadalin” itu konsumen2 ISP supaya ga “backdoor”…pake OSPF SHAM-LINKS
(sham = palsu, biar link utama yang dipake, bukan link backup -_-; )

Contoh kita punya gambar simple kek gini:

Anggeplah itu HQ ke BR lewat MPLS (lewat PE), tapi ada link backup (kek semacam backdoor lah) langsung ke BR

Step 1.
Create MPLS Backbone

  • PE-CE using OSPF with VRF on PE
  • PE1-PE2 using static for reaching each BGP loopback source and using i-BGP with loopback for BGP peering
  • Don’t forget to redistribute OSPF into BGP and vice versa
  • Last, create MPLS
  • Verify Route and trace

Wokeh, everything’s perfect…

Step 2.
Create Backup Link (using OSPF) and verify

Noh…malah lewat bawah (192.168.10.0) bukan lewat MPLS Backbone

Step 3.
Create OSPF Sham-Link di masing2 PE

  • Harus ada 1 loopback interface dengan prefix /32 (buat nandain source & destination sham-link)
  • Pasang VRF di loopback tersebut (untuk ngasi tau VRF mana yang “kena” sham-link)
  • Advertise itu sham-link ke BGP (keyword network) supaya “dikenalin” oleh BGP yang lain
  • And then, create area [nomor] sham-link

    [destination ip]

Nanti ada tulisan kek gini

OSPF-5-ADJCHG: Process1, Nbr 10.10.10.2 on OSPF_SL1 from LOADING to FULL

Mirip kek virtual-link ya?? Emang…

Artinya kita uda sukses buat sham-link, yuk coba kita trace

Loh kok masih lewat bawah…?!?

Oh iya…sham-link ini bikin MPLS Backbone kita dianggep INTRA_AREA juga, tapi karena jalan ke 22.22.22.22 (CE-BR) lebih deket lewat 192.168.10.0 (langsung ke CE-BR) daripada lewat 192.168.11.0 (PE1)…ya otomatis dia milih yang paling deket (remember routing protocol metric!!!)

So di apain ini!??! Ya rubah OSPF Cost nya duuunk (dimasing2 interface router CE yang jadi backdoor)

Sip…

Untuk nge-liat OSPF Sham-Link ini jalan apa kaga, kita bisa pake command show ip ospf sham-link

Yup…Sham Link OSPF_SL1 is UP….

Eh gw ada pertanyaan, harusnya itu IP Loopback di advertise ke OSPF aja, kan nanti di redistribusi ke BGP, ngapain di advertise langsung ke BGP?!? betul sih, tapi nanti keyword area 0 sham-link nya ga ada effect

Klo ini IP loopback di-advertise ke OSPF langsung…nanti dianggep ini route OSPF biasa

Kita pengen bikin “link OSPF palsu” yang bilang bahwa ini ip loopback 10.10.10.1 sampe ke 10.10.10.2 itu satu area loh ama link backup (keyword sham-link)

Supaya ini ip loopback ga dideteksi “pemalsuan/kepalsuan”nya…ya jgn di advertise lewat OSPF…pake BGP solusinya

=====================================

Eh…ini CE ke PE kan pake OSPF…klo gw pake EIGRP gimana?? Ada mekanisme backup link nya ga?!?

Ada…namanya EIGRP SoO (Site of Origin)

Konsepnya adalah…EIGRP akan nge-cek ini rute berasal dari mana, dengan SoO kita bisa bikin EIGRP lebih prefer lewat MPLS Backbone daripada Backdoor (same old story with OSPF)

Kalo OSPF itu Link-State (masing2 router tahu persis topology kek apa), makanya kita perlu sedikit “pemalsuan” (sham = palsu)

Sedangkan EIGRP kita perlu pengecekan asal rute (remember…this protocol is still distance vector)

Step 1. Create EIGRP with VRF in both PE (shut down that link backdoor first)

Step 2. Redistribute EIGRP to BGP and vice versa

Check the routing table and trace it…

Works fine….now activate CE-HQ fa1/0 (link backdoor)

Old problem rise again…

Step 3. Include that IP Loopback (the one we use for OSPF Sham-Link) into EIGRP VRF

Step 4. Create route-map for BGP to check EIGRP Source of Origin/Site of Origin

Step 5. Implement the route-map into interface facing the costumer

Lets check the routing table and trace it

The problem is still same…EIGRP sees 22.22.22.22 route is shorter if it take direct route (to CE-BR)

Lets see the EIGRP topology

See…EIGRP still prefer using backup link because of lower metric…solution?!? Lets change the MATRIX *ahem* I mean the metric

Done…

Advertisements

MPLS Configuration (Part 3 – Route Distinguisher, Route Target, and Route Leak)

Leave a comment

sebuah ISP punya 2 konsumen…A dan B, ISP menyediakan VPN (VRF A dan VRF B) untuk masing2 konsumen sehingga routing table/route mereka tidak campur aduk. ISP punya layanan Voice over IP (VoIP) tersendiri yang bisa disewakan (VRF Voice), kebetulan ingin digunakan oleh A dan B

The question is…how to do that?!? …emang bisa 1 VRF bisa nyampur dengan 1 VRF lain?!

Kita pengen routing table Voice masuk kedalam VRF A dan VRF B…TANPA harus route2 VRF A dan VRF B campur aduk (routing table-nya campur)

WOKEEH, dalam kasus ini berarti ada 3 VRF didalam ISP…VRF A, VRF B, dan VRF Voice

Solusinya adalah dengan men-define Route Distinguisher (RD) dan export/import itu RD dengan keyword Route-Target

RD formatnya <AS:nomor> ato <ip:nomor> …walaupun kebanyakan pakeknya AS (contoh 65000:10), tapi sistem penomorannya BEBAS (coba liat yang gw pake…1:1 2:2 dan 3:3)

Intinya kita bikin RD ini untuk nambahin IP address (32 bit) dengan 64 bit-nya RD supaya bedain IP VRF yang satu dengan yang lain (contoh: ISP ke A dan ISP ke B..ip nya sama kan)

Tapi antar dalam 1 router VRF-nya harus BEDA RD ya…ntar ga bisa ngebedain VRF lagi

================================

Initial Config

Step 1.
Biasa, create VRF dulu (trus define RD dan RT-nya)

Disini ada 2 catatan:

  • Untuk inisialisasi, kita bikin VRF ini bisa di-export dan di-import, dari sini ada pertanyaan…dipoint ke-2
  • Kenapa import dan export RD yang sama…di VRF sendiri?!? Jawabannya GA TAU…TAPI HARUS BEGITU…bingung kan?!? Sama gw juga
  • Ada yang bilang nge-bug, ada yang bilang harus import dan export ke diri dia sendiri dulu baru ke yang lain…di IOS XR ga perlu begini sih
  • Dan…Route-target both…itu biar ga repot2 ngetik import dan export (hasilnya sama aja kek ketikan di ip vrf A sub-config)

Step 2.
Pasang itu VRF dimasing2 interface

Step 3.
Setting routing protocolnya antara CE (A, B, dan Voice) dan PE (ISP), apa aja bole sih sebenernya, gw disini pake OSPF

Pasang router-id di masing2 OSPF (1 OSPF mungkin ga perlu kasi router-id, tapi klo 2 atau lebih harus dikasi…klo ga nanti ga jalan OSPF nya)

Hmm…redistribusi aja…beres itu import export route…

Yang bener?? we’ll see below

Tetep ga bisa, beda proses…bukan beda routing protocol (redistribution untuk ROUTING protocol BUKAN process VRF protocol)

solusinya gimana dong?!? Karena value RD ini bikin IP kita jadi 96 bit…kita perlu routing protocol yang bisa bawa IP versi baru ini

Btw…IP address yang jadi 96 bit ini disebut IP VPN atau VPNv4

Routing protocol apa yang bisa bawa VPNv4?!?…Yup, BGP

Karena BGP itu defaultnya “carry” IPv4 yang 32 bit…BGP yang bisa bawa protocol selain IPv4 disebut MP-BGP (Multi-Protocol BGP)

Step 4.
Configuring MP-BGP (and redistribute OSPF to BGP supaya routing table OSPF dikasi ke BGP)

Nah, sekarang masing2 VRF yang ada di OSPF bisa di “carry” oleh MP-BGP, but…

Cara MP-BGP ini ngasih ini routing table VRF yang satu ke yang lain gimana?! Redistribute BGP to OSPF balik…

Step 5. kasih VRF Voice ke VRF A dan B (export) dan terima itu VRF Voice di VRF A dan B (import)

Step 6.
Untuk bisa komunikasi antar VRF A dan B dengan VRF Voice, berarti VRF Voice juga harus import route dari VRF A dan B

Konfigurasi full nya seperti ini:

Jgn lupa cek ping dari A, B, dan Voice ke ISP

Step 7.
Check A, B, dan Voice routing table

See…A dan B dapet 10.1.1.3 (ip loopback voice) tapi A ga dapet ip loopback dari B dan sebaliknya

Tes ping

A menuju ke Voice Loopback bisa, ke B ga bisa…(cek aja ping dari B ke A)

================================

Question

Case 1.

Klo kek gambar diatas, si A mau join routing table dengan si B…bisa ga?!? Hmm..bisa iya bisa engga…

Inget, VRF gunanya untuk membedakan routing table di ISP…untuk masing2 konsumen

Nah, begitu DIGABUNG…ya konflik di konsumen A dan B (liat de…ip 10.1.1.1-nya sama)

Coba liat de gambar gw pertama…IP voice nya beda (A dan B pake 192.168.1.0, sedang Voice pake 192.168.2.0…dan ping-nya harus pake source karena IP A dan B dipake berdua, nge ping dari ISP aja kita harus pake command tambahan “ping vrf [nama] ip X.X.X.X“)

Tapi ini topologi bisa diterapkan…asal di NAT di masing CE-nya (dan BEDA IP NAT juga ya !!!…nanti NAT Overlapping lagi)

Case 2.

Klo gambar pertama gw pake 1 Router ISP…sekarang klo 2 router ISP gimana??

Ya kek configurasi MPLS part 2 gw…antar PE pake MP-BGP

================================

Route-Leak

eh…gw pengen ada 1 jalur Voice sendiri selain 10.1.1.3…ga pengen sharing ama company lain

Contoh: selain 10.1.1.3, A hanya mau 10.10.10.1-nya aja dan B hanya mau 10.10.10.2-nya aja

Klo kita hanya pure VRF export-import…ya begini jadinya:

Si A juga dapet 10.10.10.2 buat si B…trus gimana dong?? Kita pake route-leak

Alias bocorin route…dengan cara import map

Karena kita pengen A hanya dapet 10.10.10.1 dan B hanya dapet 10.10.10.2 berarti kita harus filter di ISP yang directly attached ke A dan B

Pertama2…kita create ACL untuk filter IP yang boleh masuk ke A dan B

Kedua, kita tambahkan keyword import map [nama route-map] ke VRF masing2

Route-map nya emang uda dibikin? Blum…yuk bikin dulu

Ketiga, create route-map (step kedua dan ketiga ini bisa dibalik, tergantung selera)

Nah…yuk cek…

Nah, A dapet rute 10.10.10.1 dan di ping juga bisa, ke 10.10.10.2 ga bisa…

B pun dapet rute 10.10.10.2 dan di ping juga bisa, ke 10.10.10.1 ga bisa…

Hmm…bisa kan pake filter di OSPF aja?? Ato filter prefix list aja??

Bisa…klo EIGRP dan RIP mungkin ga masalah…tapi klo OSPF jadi masalah, gini:

So…percuma nge-filter route dalam OSPF dalam 1 area…karena cuma router yang dipasang filter aja yang kena efek ilang route-nya

Yang dibelakang-nya ga kena efek filter (walaupun ujung2nya ga bisa di ping karena pas masuk ke router yang uda di filter akan di blok gara2 ga ada di routing table)

Older Entries