BIRD: BGP Sederhana
Ada tiga (3) ISP
ISP1:
IP 192.168.1.1/24 menuju ISP3 IP 192.168.3.1/24 menuju ISP2 AS 10 IP 10.100.100.0/24 IP 10.100.200.0/24
ISP2
IP 192.168.2.1/24 - menuju ISP3 IP 192.168.3.2/24 - menuju ISP1 AS 20 IP 10.10.10.0/24 IP 10.10.20.0/24
ISP3 (kita)
IP 192.168.1.2/24 - menuju ISP1 IP 192.168.2.2/24 - menuju ISP2 AS 30 IP 10.1.1.0/24 IP 10.1.2.0/24
Sambungan
R1 e1 --> R3 e1 e2 --> R2 e2 e3 --> LAN 10.100.100.0/24 e4 --> LAN 10.100.200.0/24
R2 e1 --> R3 e2 e2 --> R1 e2 e3 --> LAN 10.10.10.0/24 e4 --> LAN 10.10.20.0/24
R3 e1 --> R1 e1 e2 --> R2 e1 e3 --> LAN 10.1.1.0/24 e4 --> LAN 10.1.2.0/24
Setup connection
Pastikan semua ifconfig bersih, lakukan langkah BIRD: dari OpenWRT
ISP1
ifconfig eth1 192.168.1.1 netmask 255.255.255.0 ifconfig eth2 192.168.3.1 netmask 255.255.255.0 ifconfig eth3 10.100.100.1 netmask 255.255.255.0 ifconfig eth4 10.100.200.1 netmask 255.255.255.0
ISP2
ifconfig eth1 192.168.2.1 netmask 255.255.255.0 ifconfig eth2 192.168.3.2 netmask 255.255.255.0 ifconfig eth3 10.10.10.1 netmask 255.255.255.0 ifconfig eth4 10.10.20.1 netmask 255.255.255.0
ISP3
ifconfig eth1 192.168.1.2 netmask 255.255.255.0 ifconfig eth2 192.168.2.2 netmask 255.255.255.0 ifconfig eth3 10.1.1.1 netmask 255.255.255.0 ifconfig eth4 10.1.2.1 netmask 255.255.255.0
BGP Peering
Consider that IP connectivity between ISPs edge routers and Our Core router is already set up and working properly. So we can start to establish BGP peering to both ISPs.
ISP1
# vi /usr/local/etc/bird6.conf # BIRD appliance di GNS3 vi /etc/bird.conf # BIRD1 di OpenWRT
edit
log syslog all; router id 192.168.1.1; protocol kernel { learn; # Learn all alien routes from the kernel # persist; # Don't remove routes on bird shutdown scan time 20; # Scan kernel routing table every 20 seconds import all; # Default is import all export all; # Default is export none } protocol device { scan time 10; # Scan interfaces every 10 seconds } protocol bgp { import all; export all; local as 10; neighbor 192.168.1.2 as 20; } protocol bgp { import all; export all; local as 10; neighbor 192.168.3.2 as 30; }
# BIRD1 di OpenWRT killall bird4 bird4
ISP2
set protocols bgp 20 parameters router-id 192.168.2.1 set protocols bgp 20 network 10.10.10.0/24 set protocols bgp 20 network 10.10.20.0/24 # set protocols bgp 20 neighbor 192.168.3.1 ebgp-multihop 2 set protocols bgp 20 neighbor 192.168.3.1 update-source 192.168.2.1 set protocols bgp 20 neighbor 192.168.3.1 remote-as 10 # set protocols bgp 20 neighbor 192.168.2.2 ebgp-multihop 2 set protocols bgp 20 neighbor 192.168.2.2 update-source 192.168.2.1 set protocols bgp 20 neighbor 192.168.2.2 remote-as 30
show commit exit
ISP3
set protocols bgp 30 parameters router-id 192.168.1.2 set protocols bgp 30 network 10.1.1.0/24 set protocols bgp 30 network 10.1.2.0/24 # set protocols bgp 30 neighbor 192.168.1.1 ebgp-multihop 2 set protocols bgp 30 neighbor 192.168.1.1 update-source 192.168.1.2 set protocols bgp 30 neighbor 192.168.1.1 remote-as 10 # set protocols bgp 30 neighbor 192.168.2.1 ebgp-multihop 2 set protocols bgp 30 neighbor 192.168.2.1 update-source 192.168.1.2 set protocols bgp 30 neighbor 192.168.2.1 remote-as 20
show commit exit
Test
show interfaces show ip bgp scan show ip bgp summary show ip bgp rsclient summary show ip bgp neighbors 192.168.1.2 show ip route show
show route [<prefix>|for <prefix>|for <ip>] [table <t>] [filter <f>|where <cond>]
[all] [primary] [filtered] [(export|preexport|noexport)
] [protocol
] [stats|count]
Referensi
Pranala Menarik