Difference between revisions of "BIRD2: BGP Sederhana"
Jump to navigation
Jump to search
Onnowpurbo (talk | contribs) |
Onnowpurbo (talk | contribs) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 87: | Line 87: | ||
log syslog all; | log syslog all; | ||
router id 192.168.1.1; | router id 192.168.1.1; | ||
− | + | ||
ipv4 table master4; | ipv4 table master4; | ||
ipv6 table master6; | ipv6 table master6; | ||
Line 112: | Line 112: | ||
interface "eth1" , "eth2" , "eth3" , "eth4" ; | interface "eth1" , "eth2" , "eth3" , "eth4" ; | ||
} | } | ||
− | |||
protocol bgp { | protocol bgp { | ||
local 192.168.1.1 as 10; | local 192.168.1.1 as 10; | ||
neighbor 192.168.1.2 as 30; | neighbor 192.168.1.2 as 30; | ||
ipv4 { | ipv4 { | ||
− | + | import all; | |
− | + | export all; | |
− | } | + | }; |
} | } | ||
− | protocol bgp { | + | protocol bgp { |
− | local 192.168.3.1 as 10; | + | local 192.168.3.1 as 10; |
neighbor 192.168.3.2 as 20; | neighbor 192.168.3.2 as 20; | ||
− | ipv4 { | + | ipv4 { |
− | + | import all; | |
− | + | export all; | |
− | } | + | }; |
− | } | + | } |
− | |||
# BIRD1 di OpenWRT | # BIRD1 di OpenWRT | ||
Line 139: | Line 137: | ||
killall ripd | killall ripd | ||
killall ripngd | killall ripngd | ||
− | killall | + | killall bird |
− | + | bird | |
ISP2 | ISP2 | ||
Line 149: | Line 147: | ||
edit | edit | ||
− | log syslog all; | + | log syslog all; |
router id 192.168.2.1; | router id 192.168.2.1; | ||
− | + | ||
ipv4 table master4; | ipv4 table master4; | ||
ipv6 table master6; | ipv6 table master6; | ||
− | ipv4 table mcast4; | + | ipv4 table mcast4; |
− | ipv6 table mcast6; | + | ipv6 table mcast6; |
− | ipv4 table mtab4; | + | ipv4 table mtab4; |
− | ipv6 table mtab6; | + | ipv6 table mtab6; |
− | vpn4 table vpntab4; | + | vpn4 table vpntab4; |
− | vpn6 table vpntab6; | + | vpn6 table vpntab6; |
− | vpn4 table vpn4mc; | + | vpn4 table vpn4mc; |
− | vpn6 table vpn6mc; | + | vpn6 table vpn6mc; |
− | flow4 table flowtab4; | + | flow4 table flowtab4; |
− | flow6 table flowtab6; | + | flow6 table flowtab6; |
− | + | ||
− | protocol device { | + | protocol device { |
− | } | + | } |
− | protocol kernel kernel4 { | + | protocol kernel kernel4 { |
− | ipv4 { | + | ipv4 { |
− | export all; | + | export all; |
− | }; | + | }; |
− | } | + | } |
− | protocol direct { | + | protocol direct { |
− | ipv4; | + | ipv4; |
interface "eth1" , "eth2" , "eth3" , "eth4" ; | interface "eth1" , "eth2" , "eth3" , "eth4" ; | ||
− | } | + | } |
− | + | protocol bgp { | |
− | protocol bgp { | + | local 192.168.3.2 as 20; |
− | local 192.168.3.2 as 20; | ||
neighbor 192.168.3.1 as 10; | neighbor 192.168.3.1 as 10; | ||
− | ipv4 { | + | ipv4 { |
− | + | import all; | |
− | + | export all; | |
− | } | + | }; |
− | } | + | } |
− | protocol bgp { | + | protocol bgp { |
− | local 192.168.2.1 as 20; | + | local 192.168.2.1 as 20; |
neighbor 192.168.2.2 as 30; | neighbor 192.168.2.2 as 30; | ||
− | ipv4 { | + | ipv4 { |
− | + | import all; | |
− | + | export all; | |
− | } | + | }; |
− | } | + | } |
# BIRD1 di OpenWRT | # BIRD1 di OpenWRT | ||
Line 202: | Line 199: | ||
killall ripd | killall ripd | ||
killall ripngd | killall ripngd | ||
− | killall | + | killall bird |
− | + | bird | |
ISP3 | ISP3 | ||
Line 214: | Line 211: | ||
log syslog all; | log syslog all; | ||
router id 192.168.1.2; | router id 192.168.1.2; | ||
+ | |||
ipv4 table master4; | ipv4 table master4; | ||
ipv6 table master6; | ipv6 table master6; | ||
Line 238: | Line 236: | ||
interface "eth1" , "eth2" , "eth3" , "eth4" ; | interface "eth1" , "eth2" , "eth3" , "eth4" ; | ||
} | } | ||
− | |||
protocol bgp { | protocol bgp { | ||
− | + | local 192.168.1.2 as 30; | |
− | + | neighbor 192.168.1.1 as 10; | |
− | + | ipv4 { | |
− | + | import all; | |
− | + | export all; | |
− | + | }; | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
+ | protocol bgp { | ||
+ | local 192.168.2.2 as 30; | ||
+ | neighbor 192.168.2.1 as 20; | ||
+ | ipv4 { | ||
+ | import all; | ||
+ | export all; | ||
+ | }; | ||
+ | } | ||
# BIRD1 di OpenWRT | # BIRD1 di OpenWRT | ||
Line 264: | Line 261: | ||
killall ripd | killall ripd | ||
killall ripngd | killall ripngd | ||
− | killall | + | killall bird |
− | + | bird | |
==Test== | ==Test== | ||
− | + | birdc | |
ketik | ketik |
Latest revision as of 06:51, 18 January 2019
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; ipv4 table master4; ipv6 table master6; ipv4 table mcast4; ipv6 table mcast6; ipv4 table mtab4; ipv6 table mtab6; vpn4 table vpntab4; vpn6 table vpntab6; vpn4 table vpn4mc; vpn6 table vpn6mc; flow4 table flowtab4; flow6 table flowtab6; protocol device { } protocol kernel kernel4 { ipv4 { export all; }; } protocol direct { ipv4; interface "eth1" , "eth2" , "eth3" , "eth4" ; } protocol bgp { local 192.168.1.1 as 10; neighbor 192.168.1.2 as 30; ipv4 { import all; export all; }; } protocol bgp { local 192.168.3.1 as 10; neighbor 192.168.3.2 as 20; ipv4 { import all; export all; }; }
# BIRD1 di OpenWRT killall zebra killall bgpd killall watchquagga killall ospfd killall ospf6d killall ripd killall ripngd killall bird bird
ISP2
# 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.2.1; ipv4 table master4; ipv6 table master6; ipv4 table mcast4; ipv6 table mcast6; ipv4 table mtab4; ipv6 table mtab6; vpn4 table vpntab4; vpn6 table vpntab6; vpn4 table vpn4mc; vpn6 table vpn6mc; flow4 table flowtab4; flow6 table flowtab6; protocol device { } protocol kernel kernel4 { ipv4 { export all; }; } protocol direct { ipv4; interface "eth1" , "eth2" , "eth3" , "eth4" ; } protocol bgp { local 192.168.3.2 as 20; neighbor 192.168.3.1 as 10; ipv4 { import all; export all; }; } protocol bgp { local 192.168.2.1 as 20; neighbor 192.168.2.2 as 30; ipv4 { import all; export all; }; }
# BIRD1 di OpenWRT killall zebra killall bgpd killall watchquagga killall ospfd killall ospf6d killall ripd killall ripngd killall bird bird
ISP3
# 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.2; ipv4 table master4; ipv6 table master6; ipv4 table mcast4; ipv6 table mcast6; ipv4 table mtab4; ipv6 table mtab6; vpn4 table vpntab4; vpn6 table vpntab6; vpn4 table vpn4mc; vpn6 table vpn6mc; flow4 table flowtab4; flow6 table flowtab6; protocol device { } protocol kernel kernel4 { ipv4 { export all; }; } protocol direct { ipv4; interface "eth1" , "eth2" , "eth3" , "eth4" ; } protocol bgp { local 192.168.1.2 as 30; neighbor 192.168.1.1 as 10; ipv4 { import all; export all; }; } protocol bgp { local 192.168.2.2 as 30; neighbor 192.168.2.1 as 20; ipv4 { import all; export all; }; }
# BIRD1 di OpenWRT killall zebra killall bgpd killall watchquagga killall ospfd killall ospf6d killall ripd killall ripngd killall bird bird
Test
birdc
ketik
show interfaces show protocols show protocols all bgp1 show protocols all bgp2 show route
Referensi
Pranala Menarik