Home

BGP (Border Gateway Protocol)

9 Comments

BGP adalah salah satu routing protocol selain RIP, EIGRP, & OSPF

klo RIP, EIGRP, & OSPF tugas nya menghubungkan router satu dengan router yang lain (Interior Gateway Protocol / IGP)

klo BGP ini EGP (Emang Gua Pikirin *maap* Exterior Gateway Protocol), menghubungkan antar AS

BGP ini tugasnya menghubungkan antar ISP (yang masing2 ISP punya nomor unique sendiri2 yang disebut AS / Autonomous System)

AS = collection of networks under single administration

lalu apa bedanya AS EIGRP dengan AS BGP (ISP) ??? AS EIGRP itu kek OSPF Area…beda antara mereka adalah

  • OSPF
    • Area OSPF beda bisa saling terhubung (asal terhubung ke area 0 atau kondisi lainnya terpenuhi)
    • Update hanya berlangsung dan di proses di Area itu saja (tidak nyebar ke Area lain)
  • EIGRP
    • Beda Area (Baca: Beda AS)…ga bisa saling terhubung, HARUS PAKE REDISTRIBUTION

EGP sebener nya routing protocol tersendiri yang terpisah dari BGP, cuma EGP uda obsolete(kuno)…akhirnya BGP itu sendirilah yang diafiliasikan dengan EGP

nah…klo AS EIGRP bisa kita set sendiri (toh masih IGP…masi didalam satu ISP), klo AS BGP yang ngatur adalah IANA (ICANN) tepatnya RIR (Regional Internet Registry)

RIR ini adalah anak organisasi IANA yang ngatur alokasi IP (public) dan AS BGP (link IANA vs ICANN)

ada 5 RIR:

  • AfriNIC (African Network Information Centre)
  • APNIC (Asia Pacific Network Information Centre)
  • ARIN (American Registry for Internet Numbers – North America)
  • LACNIC (Latin American and Carribean Network Information Centre)
  • RIPE NCC (Reseaux IP Europeens Network Coordination Centre – Europe, Timur Tengah, Central Asia)

AS BGP itu size nya 16 bit yang berarti dari 1 sampai 65,535, dimana AS 64,512 sampai 65,535 (1023 buah) itu buat private use (mirip ke Private IP)

makanya klo tes ato contoh soal/lab yang menggunakan BGP pasti pake AS yang ga jauh2 dari yang diatas (supaya ga ngambil AS orang/organisasi lain yang Legal)

sekarang sudah ada AS yang 32 bit (yang artinya nomor AS itu bisa ampe 4 milyar, untuk mengatasi depleted AS…kek IP juga yang depleted *facepalm*)

Requirement for Implementing BGP is

  • Public IP address ^_^ (klo ga pake aja NAT)
  • Routing Protocol (bisa statis ato dinamis)

BGP pake TCP port 179 untuk metode pengiriman packet dan triggered update nya

BGP “hold down” timer dikirim tiap 60 detik sekali (istilah di BGP namanya keepalive message)

Any Router that runs BGP is called a BGP speaker.

and Any Router that form BGP neighborship is called BGP Peers.

dibandingkan routing protocol lain, config BGP terhitung paling ribet dan kompleks

klo RIP pake metric nya HOP, IS-IS bandwidth, OSPF cost, EIGRP banyak *wkwkw*

nah klo BGP pake metricnya apa ?? BGP kaga pake metric

BGP itu policy-based routing protocol, dia ngontrol traffic packet berdasarkan attibut2 (bukan metric) yang dia punya

untuk traffic A dia pake attibut X…untuk traffic B dia pake attribut Y..dst

klo IGP router konfig/announce list network-nya (contoh: router rip lalu network x.x.x.x)

klo BGP itu announce network reachability information

contoh:

(sorry…harusnya ip add 1.1.1.1 dan 2.2.2.2)

baik R1 dan R2 men-define neighbor nya (yang pake BGP tentunya)

lalu memutuskan network2 mana saja yang mau dikasi ke neighbornya itu

When to Use BGP??

  • when multi-homed (see below)
  • Network kita (AS Kita) adalah transit AS (menghubungkan AS satu ke yang lain)
  • Inter-AS policy harus di modifikasi

When Not??

  • Single homed (see below)
  • RAM dan CPU router ga cukup kuat untuk menunjang BGP
  • lo kaga bisa make Route-Filtering dan Route-Mapping…hahah

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

BGP Connectivity Type

single homed: 1 router kita cuma punya 1 jalan ke ISP

single homing biasanya ga pake BGP…pake static route aja cukup

biasanya klo single homing pake BGP tu buat announce public network nya Company ke ISP dan ISP announce default route ke Client (toh untuk internetan doank kan?!?)

dual homed: kita punya 2 router yang punya jalan ke 1 ISP (atau 1 router tapi punya 2 jalan ke ISP)

biasanya tipe ini pake BGP, dan juga IP SLA untuk “bring-up” backup route ato interface nya

dan juga provide buat load balancing antar interface dengan CEF (Cisco Express Forwarding)

apa itu CEF?? klo dulu router ngirim paket lewat routing table, yang mana perlu RAM dan makan CPU, sekarang dengan CEF…routing process itu melalui Hardware

processing routing lewat hardware lebih cepat dari software

multi homed: 1 router lo ke ISP A, 1 router lagi ke ISP B

lebih flexibel, resilient network…disini juga bisa dimplementasikan BGP

tapi hati2…

klo AS 65500 dapet rute 172.16.0.0/16 dari ISP A Router D, (klo kita konfig nya ga bener) trus di Advertise ke ISP-B

maka ISP-B bisa saja menganggap rute 172.16.0.0/16 itu harus lewat AS 65500 (padahal bisa langsung dari ISP B)

alhasil….AS 65500 akan jadi semacam rute transit

nah…salah satu troubleshooting implementasi BGP ya seperti itu…

dual-multi homed: 2 router lo punya link ke masing2 ISP

masalah2 BGP biasanya terdapat di multi-homed dan dual multi-homed (biasanya suboptimal routing)

maksud hati ingin supaya ada rute backup…salah2 konfig, malah rute backup yang ngirimin traffic dari dia ke network kita…repot kan

When BGP is running between routers in different autonomous systems, it is called External BGP (EBGP).

When BGP is running between routers in the same autonomous system, it is called Internal BGP (IBGP).

trus bedanye apee itu be-2?!?!

klo E-BGP itu untuk menghubungkan ISP satu dengan yang lain

klo I-BGP itu seperti contoh dibawah ini:

Customer A (AS 65010) punya dual ISP (1 Main 1 Backup), masing2 ISP kirim default-route nya masing2

nah, taro lah ISP 1 jadi main Route (karena Metric IGP ato karena konfig dari R1&R2)

Customer A ingin kirim traffic ke 172.17.0.0 (di ISP 2 network)

karena ISP 1 jadi main route…it may cause suboptimal route, because to send data into 172.17.0.0 network must travel to ISP 1 first instead of ISP 2 (network 172.17.0.0 kan adanya di ISP 2)

nah, R1 dan R2 memakai BGP internal untuk mereka sendiri guna menentukan best path to destination based on policy yang mereka buat (inget…BGP itu policy based routing)

jadi kek R1 & R2 ngobrol…”yuk..klo kirim data A lewat sini…data B lewat sana

inilah yang dinamakan I-BGP

untuk ngobrol R1 dan R2 dalam menentukan rute keluar pake I-BGLu (ai-biji lu !!…hhahaha)…I-BGP maksudnya

untuk ngobrol R1 dan R2 dengan masing2 ISP disebut E-BGP

makanya…BGP sering juga disebut Path Vector Protocol

dan karena BGP behavior itu policy-based…this protocol cannot perform Load-balancing

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

BGP Message Type

1. Open Message

didalam nya terdapat beberapa informasi

  • Version number: BGP version
  • AS Number
  • Hold Time: jarak waktu interval antara successive keepalive dan update message dari pengirim (dalam detik)
  • BGP Router ID: 32 bit size, BGP ID ini sama persis kek OSPF Router ID (bahkan proses pemilihannya juga)
  • Optional Parameter: authentication (klo ada, namanya juga optional ^_^ )

2. Keepalive Message

keepalive message ini untuk me-refresh hold time supaya ga expiring (klo expired hold timenya, BGP adjacency nya putus)

3. Update Message

BGP update message hanya punya informasi untuk 1 jalur saja, maksudnya ??

klo IGP kirim update message ke suatu router, isinya adalah jalur2/rute2 yang dia ketahui

klo BGLu *ehm* BGP maksudnya…kirim update message ke suatu router, hanya 1 jalur…lebih dari 1 jalur = lebih dari 1 update message

eh…gw punya update nih…gw tau jalan ke network A” = 1 update message

eh…gw punya update nih…gw tau jalan ke network A, trus ke network B, trus ke network C” = 3 update message

isi dari Update Message:

  • Withdrawn Routes:

    berisi list2 dari Route2 yang dicabut (termasuk IP Prefix nya) dari BGP (jadi kek kasi notifikasi gitu loh)

  • Path attributes:

    isinya “metric2” alias attribute2 dari BGP…kek AS Path, Origin, Local Preference, dll

  • Network-Layer Reachability Information:

    kebalikan dari Withdrawn Route, isinya adalah rute2 yang reachable oleh BGP

4. Notification Message

ini mah klo ada error…hahaha

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

BGP “Metric” that called Attributes

BGP ga punya metric, cuma karena gw tau lo uda terbiasa ama metric…gw bilang aja ini “seakan2” metric…hahaha

BGP Attribute inilah yang bertugas men-decide mana best path (best route), remember BGP cannot Load Balancing…only 1 path (but can perform load sharing)

Load sharing
is the ability to distribute incoming/outgoing traffic over multiple paths

Load balancing
is the ability to split the load (split packet) toward the same destination (host or IP) over multiple paths.

  • “Well-Known” BGP Attributes (attribut2 BGP yang harus “dikenali” oleh BGP Speaker ketika peering)
    • Mandatory “Well-Known” (attribut2 yang harus appear disetiap update message)
      • Origin = tempat asal dari BGP route…apakah itu rute BGP di-announce oleh IGP router, oleh BGP router yang lain, ato dari redistribusi
      • AS-Path = ini kek ip route…cuma namanya kita ganti jadi AS Route
      • Next-Hop = ip address dari next -hop router
    • Discretionary “Well-Known” (may / may not appear in update message, tapi tetap harus disupport klo di implementasikan ini attribut)
      • Local Preference =rute BGP yang diterima dari BGP neighbor, default value nya adalah 100
      • Aggregation = klo di IGP ini attribute dinamakan “Route Summarization
  • Optional BGP Attribute (atribut2 BGP yang disupport atau tidak disupport oleh BGP Speaker)
    • Transitive (support ato ga support itu BGP Speaker yang receive  update, kalo update message nya contain attribute ini…tetep harus di-pass ke next AS, kali2 aja AS lain tau attribute2 itu buat apa)
      • Aggregator = IP address dan AS number nya si Router yang perform route aggregation
      • Community = isi nya route-tagging…nah lo…
    • Non-Transitive (klo pun ga support, BGP Receiver…ga ada kewajiban untuk ngoper update nya ke AS lain)
      • MED (multi exit discriminator) = attribute ini berguna untuk membedakan/memisahkan multiple entry points yang masuk kedalam satu AS

Next Hop BGP Attibutes

BGP 1

biasanya next-hop emang ip address dari sending router nya

BGP 2

tapi akan bahaya klo switch nya FRAME-RELAY (NBMA)

BGP 3

BGP Path Selection Process (klo ada beberapa path/jalur ke satu tempat yang sama)

  1. Weight (Cisco Propiertary), klo lo konfig BGP…yang pertama diliat adalah Weight untuk menentukan best path (local router akan nentuin mana Weight yang lebih besar untuk best path.., INGET…CISCO ONLY

    weight ini value nya dari 0 – 65535, defaultnya 32768 (dari Router itu sendiri) dan 0 dari dari path lain, weight ini hanya dikonfig di router local dan ga dikasi ke router lainjadi weight ini ibarat kita setting di router, yang mana dari path2 BGP ini yang kita “beratin timbangannya“, untuk dipilih duluan adalah yang paling berat

  2. Local Preference, klo attribute Weight nya sama (Cisco) atau klo vendor lain…ini yang dilihat selanjutnya, para router di AS yang sama akan ngeliat attribute ini

    yang paling tinggi yang dipilih. default value nya adalah 100

  3. Default Route, klo local preference dari beberapa path yang ditawarkan BGP itu sama, di local router akan memilih Default Route
  4. Shortest AS Path, klo ga ada default route, para router akan ngeliat berdasarkan path AS yang paling pendek (kek RIP…yang paling kecil AS hop count nya)
  5. klo masih sama, liat dari Origin of path (yang paling kecil yang dipilih), para router akan memilih best path yang dipilihkan oleh IGP (IGP origin < EGP Origin)
  6. MED (multi exit discriminator), ini tu bisa diibaratkan BGP metric, jika origin sama (tarolah dari 1 EIGRP AS), MED ini di-exchange between AS, yang paling rendah yang dipilih
  7. prefer liat i-BGP daripada e-BGP
  8. prefer shortest Path to closest IGP Neighbor, jadi router milih jalan terdekat ke BGP Speaker (masih dalam IGP yang sama)
  9. prefer oldest route, liat route yang paling lama di routing table (cocok untuk interface BGP yang up down terus2an…alias “flapping”)
  10. prefer lowest BGP Router ID
  11. jika sama BGP Router ID nya, prefer lowest IP address

banyak kan ?!?!?! @_@

dan attribute2 itulah yang kita setting untuk BGP

belum lagi ada regular expression (REGEXP) kek ^, $, [], , (), ., *, +, ? untuk modifikasi Shortest AS Path yang kita mo buat

konfig BGP nya dibagi jadi 4 part…silakan liat di indeks

VPN (Virtual Private Network)

8 Comments

What is VPN…VPN adalah suatu cara agar perusahaan dapat terhubung ke tempat lain (dalam hal ini bisa aja Branch Office) melalui public infrastructure tanpa bisa diketahui oleh orang lain yang memakai public infrastructure yang sama

Berdasarkan Geography:

  • Site-to-Site VPN
  • Remote Site VPN

Berdasarkan Service:

  • L2 VPN (Overlay VPN)
  • L3 VPN (Peer-to-Peer VPN)

 

Analogy:

Di samudra yang luas (internet/ISP) terdapat banyak pulau (LAN, Office LAN, etc.), untuk menghubungkan pulau yang satu dengan yang lain dapat menggunakan Ferry (Public Infrastructure such as Cable Modem and ADSL) dimana semua orang bisa liat apa yang akan kita lakukan, kemana arah yang kita tuju, mau ngapain kesana (belum lagi penumpang Ferry nya biang gosip…wkwkwk)

Ok..Ferry out of option…berhubung pulaunya deket, kita kasih jembatan aja (Leased Line) selesai (banyak Company memakai opsi ini)

Tapi kalau jauh gimana ?? Cost nya bengkak…bikin kabel, gali tanah, pasang2 lagi aja uda berapa biayanya, belum lagi maintenance nya

Solusinya adalah kita buat Kapal Selam (VPN), nyelem dibawah laut…ga ada yang tau kita mo ngapain (ter-enkripsi dengan IPsec)…lebih murah dari bikin jembatan kan

nah…untuk bikin jalur bawah laut (tunneling) agar kapal selam kita bisa jalan, kita bisa pake GRE (generic Routing Encapsulation)

supaya jalur bawah laut itu aman (GRE ga ada fitur enkripsi) dipasangin dengan IPSec

so thats whay…GRE dan IPSec itu biasanya selalu digandeng…

kapan kita belajar GRE ?? salah satunya klo mo belajar versi lain dari OSPF Virtual-Link atau IPv6 Tunneling

kapan kita belajar IPSec ?? klo kita mo belajar konfig VPN (nanti link nya gw buat)

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

Yah…kira2 begitu analogi nya

Site-to-Site VPN

Site-to-Site VPN ini ya kek WAN biasa (Branch ke MainOffice), dimana alat yang jaga MainOffice dari “Serangan dunia luar” adalah Router/Firewall/ASA (Adaptive Security Appliance) – Cisco Firewall

Yang bertugas ngalirin traffic VPN nya VPN Gateway (yaitu Router/ASA/Firewall)…jadi di Gateway diencapsulasi…pas sampe target (branch misalnya) packet tersebut di decapsulasi…dengan metode IPsec

Yang membedakan Remote Access dengan Site-to-Site adalah Third Party Client nya, klo di Site-to-Site…masing2 end point (alias Router) dikasi settingan VPN (cek lagi gambar site-to-site)

Nah klo Remote End-point nya di kasi Software buat VPN (contoh Cisco EasyVPN), soalnya konek lewat broadband access kek ADSL dan Cable, ato pake Web Browser (Clientless VPN)

A VPN creates a private network over a public network infrastructure while maintaining confidentiality and security (jadi seakan2 ada tunnel gitu dan seakan2 itu Branch & Office “satu LAN”)

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

Characteristic VPN

Data Confidentiality: achieved through Encapsulation (via IPsec) & Encryption (via 3DES, AES, or RSA), jadi ga bisa di baca packet nya oleh yang tidak berhak

Data Integrity: use Hashing Technique (such as MD5), Hash atau Hashing itu adalah metode untuk ensure ketika data diterima…data itu Masih ASLI, belum diMODIFIKASI, dan belum DIBACA

Salah satu dari Hashing Algoritma adalah Message Digest 5 (MD5) – Uses a 128-bit shared secret key. The message and 128-bit shared secret key are combined and run through the HMAC-MD5 (Hashed Message Authentication Code) hash algorithm. The output is a 128-bit hash. hasil hash yang 128-bit tadi ditambah ke original message and forwarded to the remote end (wokeh..silakan mencerna sendiri…hahaha)

Sebenernya adalagi sih, namanya SHA-1 (Secure Hash Algorithm 1) 160 bit, tapi gw males jelasinnya….hahaha (ga ngerti dan ga pernah make)

Authentication: ensure data come from the right person and arrive at the right person too

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

Encryption

Cara kerja enkripsi itu kira2 seperti ini

In the example, Gail wants to send a financial document to Jeremy across the Internet. Gail and Jeremy have previously agreed on a secret shared key (kita bisa bilang password lah). At Gail’s end, the VPN client software combines the document with the secret shared key and passes it through an encryption algorithm. The output is undecipherable cipher text. The cipher text is then sent through a VPN tunnel over the Internet. At the other end, the message is recombined with the same shared secret key and processed by the same encryption algorithm. The output is the original financial document, which is now readable to Jeremy.

Algoritma Enkripsi Simetris: 1 key untuk Enkripsi dan Dekripsi

Algoritma Enkripsi Asimetris: 1 Key untuk Enkripsi dan 1 Key untuk Dekripsi

Type2 Algorithm:

  • DES (Data Encryption Standard) – di develop oleh IBM (use 56 bit length key)…Symmetric Algorithm
  • 3DES – newer version than DES, Asymmetric Algorithm (digambar atas malah dia Symmetric…!!!!, ckckck)
  • AES (Advanced Encryption Standard) – di develop oleh NIST (National institute of Standards and Technology)..often use 128 bit
  • RSA (Rivest, Shamir, and Adleman) – didevelop oleh ketiga orang itu, use 256, 512, 1024, or larger key

Catatan dalam memilih Tipe Enkripsi:

Semakin Bagus Enkripsi, semakin lama dipecahkan kode nya, tetapi semakin lambat proses transfer nya

Semakin Minimal Enkripsi, semakin cepat dipecahkan kode nya, tetapi semakin cepat proses transfer nya

Ingat…dalam dunia komputer TIDAK ADA YANG 100% Secure, yang ada hanya MEMPERLAMA Penjahat dalam menjalankan aksinya

Berarti Enkripsi bisa dipecahkan donk?? Bisa…tergantung CPU komputer hacker nya…semakin bagus..semakin cepat dipecahkan

Untuk memecahkan password 9 karakter yang terdiri dari huruf kecil, besar, angka, dan spesial karakter saja yang di enkripsi 128 bit aja untuk komputer cpu i7 aja bisa butuh waktu berjam2…

Tujuan enkripsi itu simpel nya adalah untuk membuat hacker MALES nge-hack, karena kelamaan

Tapi kan bisa aja niat ?!?!

Nah itu dia…biasanya tiap 1 bulan sekali, 1 minggu sekali, bahkan 1 hari sekali…untuk data center dengan confidentialitas yang tinggi biasanya password selalu diganti (mecahin 1 kode aja uda susah , berhari2 pula…eh pas dapet passwordnya…uda diganti..hahahaha)

Gw ga jelasin gimana sih cara masing2 tipe enkripsi itu proses nya…mabok coy !!!, lo aja yang liat…gw mah males

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

IPSec

*ESP = Encapsulation Security Payload

*AH = Authentication Header

*DH = Diffie-Hellman algorithm, memungkinkan 2 orang user yang mo exchange data untuk establish a shared secret key yang digunakan oleh encryption dan hash algorithms, for example, DES and MD5, over an insecure communications channel (insecure ini mungkin menurut gw kek kabel telepon??VSAT??i don’t know…Wi-Fi ada TKIP-AES juga untuk enkripsi kok…pokoknya untuk urusan enkrip-mengenkrip mah puyeng gw @_@

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

VPN implementation ada 2 tipe:

  • Overlay VPN: ISP hanya provide koneksi saja (jadi ISP menyediakan koneksi point-to-point dari HQ ke Branch)
  • Peer-to-Peer VPN: ISP juga ikut berpartisipasi dalam proses routing

Overlay VPN

Overlay VPN

benefit:

  • gampang di-implement, karena ISP ga ikut2an routing…nyediain “transport” aja

drawback:

  • klo ada additional VPN, nambah lagi link didalem ISP nya, susah di manage

Peer-to-Peer VPN

Peer-to-Peer VPN

benefit:

  • gampang di manage
  • gampang di-utak-atik optimum routing path nya

drawback:

  • harus tahu detail IP routing

ada lagi yang dinamakan Central Service VPN

Central Service VPN adalah fitur untuk multiple VPN menggunakan server yang sama (biasanya untuk data center), jadi company A,B, dan C bisa ke Server A, tapi A ga bisa ke B dan C (begitu juga sebaliknya)…mirip ke point-to-multipoint topologi, cuma ini VPN

Mudah2an Next Article gw bisa buat secara detail about how to configure VPN on Cisco Router

Older Entries Newer Entries