IPv6: Mikrotik: BGP Dua Link main backup - dengan weight

From OnnoWiki
Jump to navigation Jump to search
Bgp-multihoming.png


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
e0 --> R3 e0
e1 --> R2 e1
e2 --> LAN 10.100.100.1/24
e3 --> LAN 10.100.200.1/24
R2
e0 --> R3 e1
e1 --> R1 e1
e2 --> LAN 10.10.10.1/24
e3 --> LAN 10.10.20.1/24
R3
e0 --> R1 e0
e1 --> R2 e0
e2 --> LAN 10.1.1.1/24
e3 --> LAN 10.1.2.1/24

Setup connection

ISP1

/ip address add interface=ether1 address=192.168.1.1/24
/ip address add interface=ether2 address=192.168.3.1/24
/ip address add interface=ether3 address=10.100.100.1/24
/ip address add interface=ether4 address=10.100.200.1/24
/ipv6 address add interface=ether1 address=2001:192:168:1::1/64
/ipv6 address add interface=ether2 address=2001:192:168:3::1/64
/ipv6 address add interface=ether3 address=2001:10:100:100::1/64
/ipv6 address add interface=ether4 address=2001:10:100:200::1/64

ISP2

/ip address add interface=ether1 address=192.168.2.1/24
/ip address add interface=ether2 address=192.168.3.2/24
/ip address add interface=ether3 address=10.10.10.1/24
/ip address add interface=ether4 address=10.10.20.1/24
/ipv6 address add interface=ether1 address=2001:192:168:2::1/64
/ipv6 address add interface=ether2 address=2001:192:168:3::2/64
/ipv6 address add interface=ether3 address=2001:10:10:10::1/64
/ipv6 address add interface=ether4 address=2001:10:10:20::1/64

ISP3

/ip address add interface=ether1 address=192.168.1.2/24
/ip address add interface=ether2 address=192.168.2.2/24
/ip address add interface=ether3 address=10.1.1.1/24
/ip address add interface=ether4 address=10.1.2.1/24
/ipv6 address add interface=ether1 address=2001:192:168:1::2/64
/ipv6 address add interface=ether2 address=2001:192:168:2::2/64
/ipv6 address add interface=ether3 address=2001:10:1:1::1/64
/ipv6 address add interface=ether4 address=2001:10:1:2::1/64

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

#set our AS number
/routing bgp instance set default as=10
#add BGP peers
/routing bgp peer
add name=toISP3 remote-address=192.168.1.2 remote-as=30 address-families=ip,ipv6
add name=toISP2 remote-address=192.168.3.2 remote-as=20 address-families=ip,ipv6
add name=toISP3 remote-address=2001:192:168:1::2 remote-as=30 address-families=ip,ipv6
add name=toISP2 remote-address=2001:192:168:3::2 remote-as=20 address-families=ip,ipv6
/routing bgp network add network=10.100.100.0/24 
/routing bgp network add network=10.100.200.0/24 
/routing bgp network add network=2001:10:100:100::/64
/routing bgp network add network=2001:10:100:200::/64

ISP2

#set our AS number
/routing bgp instance set default as=20
#add BGP peers
/routing bgp peer
add name=toISP1 remote-address=192.168.3.1 remote-as=10 address-families=ip,ipv6
add name=toISP3 remote-address=192.168.2.2 remote-as=30 address-families=ip,ipv6
add name=toISP1 remote-address=2001:192:168:3::1 remote-as=10 address-families=ip,ipv6
add name=toISP3 remote-address=2001:192:168:2::2 remote-as=30 address-families=ip,ipv6
/routing bgp network add network=10.10.10.0/24 
/routing bgp network add network=10.10.20.0/24 
/routing bgp network add network=2001:10:10:10::/64
/routing bgp network add network=2001:10:10:20::/64

ISP3

#set our AS number
/routing bgp instance set default as=30
#add BGP peers
/routing bgp peer
add name=toISP1 remote-address=192.168.1.1 remote-as=10 address-families=ip,ipv6
add name=toISP2 remote-address=192.168.2.1 remote-as=20 address-families=ip,ipv6
add name=toISP1 remote-address=2001:192:168:1::1 remote-as=10 address-families=ip,ipv6
add name=toISP2 remote-address=2001:192:168:2::1 remote-as=20 address-families=ip,ipv6
/routing bgp network add network=10.1.1.0/24
/routing bgp network add network=10.1.2.0/24 
/routing bgp network add network=2001:10:1:1::/64
/routing bgp network add network=2001:10:1:2::/64

Filter

#set our AS number
/routing bgp instance set default as=30
#add BGP peers
/routing bgp peer
add name=toISP1 remote-address=192.168.1.1 remote-as=10 address-families=ip,ipv6
add name=toISP2 remote-address=192.168.2.1 remote-as=20 address-families=ip,ipv6
add name=toISP1 remote-address=2001:192:168:1::1 remote-as=10 address-families=ip,ipv6
add name=toISP2 remote-address=2001:192:168:2::1 remote-as=20 address-families=ip,ipv6
/routing bgp network add network=10.1.1.0/24
/routing bgp network add network=10.1.2.0/24 
/routing bgp network add network=2001:10:1:1::/64
/routing bgp network add network=2001:10:1:2::/64
/routing bgp peer
set toISP1 in-filter=isp1-in out-filter=isp1-out
set tpISP2 in-filter=isp2-in out-filter=isp2-out
# accept redistribute internal network
# discard lainnya
/routing filter
#accept our networks
add chain=isp1-out action=accept prefix=0.0.0.0/0 set-bgp-local-pref=200 set-bgp-weight=5
add chain=isp1-out action=accept prefix=::/0 set-bgp-local-pref=200 set-bgp-weight=5
add chain=isp1-in action=accept set-bgp-local-pref=200 set-bgp-weight=5

Contoh Orek2an

# accept routing dari internal ke ISP
# discard redistribution routing ke ISP
/routing filter
add action=accept chain=isp1-out disabled=no invert-match=no locally-originated-bgp=yes prefix=0.0.0.0
add action=discard chain=isp1-out disabled=no invert-match=no prefix=0.0.0.0
add action=accept chain=isp1-in comment="" disabled=no invert-match=no prefix=0.0.0.0/0 prefix-length=1-32 set-bgp-local-pref=200 set-bgp-weight=5


# accept redistribute internal network
# discard lainnya
/routing filter
#accept our networks
add chain=isp1-out prefix=10.1.1.0/24 action=accept
add chain=isp1-out prefix=10.1.2.0/24 action=accept
add chain=isp1-out prefix=2001:10:1:1::/64 action=accept
add chain=isp1-out prefix=2001:10:1:2::/64 action=accept
#discard the rest
add chain=isp1-out action=discard
# accept redistribute dan tambahkan / prepend AS
# discard lainnya
/routing filter
#accept our networks and prepend AS path three times
add chain=isp2-out prefix=10.1.1.0/24 action=accept set-bgp-prepend=3
add chain=isp2-out prefix=10.1.2.0/24 action=accept set-bgp-prepend=3
add chain=isp2-out prefix=2001:10:1:1::/64 action=accept set-bgp-prepend=3
add chain=isp2-out prefix=2001:10:1:2::/64 action=accept set-bgp-prepend=3
#discard the rest
add chain=isp2-out action=discard

Cek

/ip route print
/routing bgp advertisements print
/ipv6 neighbor print 
/ipv6 route print
/routing bgp network print

Referensi

Pranala Menarik