Created
June 25, 2019 06:10
-
-
Save takehaya/f5f286c13f5c9893d4b5d38a791617d9 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Vagrant.configure("2") do |config| | |
config.vm.box = "higebu/vyos" | |
config.vm.define :vyos1 do | vyos | | |
vyos.vm.hostname = "vyos1" | |
vyos.vm.network :private_network, ip: "192.168.13.1", virtualbox__intnet: "intnet13" | |
vyos.vm.network :private_network, ip: "10.1.14.1", virtualbox__intnet: "intnet14" | |
vyos.vm.network :private_network, ip: "10.1.41.1", virtualbox__intnet: "intnet41" | |
end | |
config.vm.define :vyos2 do | vyos | | |
vyos.vm.hostname = "vyos2" | |
vyos.vm.network :private_network, ip: "192.168.23.1", virtualbox__intnet: "intnet23" | |
vyos.vm.network :private_network, ip: "10.2.25.1", virtualbox__intnet: "intnet25" | |
end | |
config.vm.define :vyos3 do | vyos | | |
vyos.vm.hostname = "vyos3" | |
vyos.vm.network :private_network, ip: "192.168.13.2", virtualbox__intnet: "intnet13" | |
vyos.vm.network :private_network, ip: "192.168.23.2", virtualbox__intnet: "intnet23" | |
end | |
config.vm.define :vyos4 do | vyos | | |
vyos.vm.hostname = "vyos4" | |
vyos.vm.network :private_network, ip: "192.168.46.1", virtualbox__intnet: "intnet46" | |
vyos.vm.network :private_network, ip: "10.1.14.2", virtualbox__intnet: "intnet14" | |
vyos.vm.network :private_network, ip: "10.1.41.2", virtualbox__intnet: "intnet41" | |
end | |
config.vm.define :vyos5 do | vyos | | |
vyos.vm.hostname = "vyos5" | |
vyos.vm.network :private_network, ip: "192.168.56.1", virtualbox__intnet: "intnet56" | |
vyos.vm.network :private_network, ip: "10.2.25.2", virtualbox__intnet: "intnet25" | |
end | |
config.vm.define :vyos6 do | vyos | | |
vyos.vm.hostname = "vyos6" | |
vyos.vm.network :private_network, ip: "192.168.46.2", virtualbox__intnet: "intnet46" | |
vyos.vm.network :private_network, ip: "192.168.56.2", virtualbox__intnet: "intnet56" | |
end | |
end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# http://www.n-study.com/network/2015/01/bgp_9.html | |
# http://enog.jp/wp-content/uploads/2015/09/enog34_vyos-bgp_0904.pdf | |
# R1 | |
set protocols bgp 65001 | |
set interfaces loopback lo address 192.168.0.1/32 | |
set interfaces dummy dum0 address 10.1.1.1/32 | |
## ospf | |
set protocols ospf area 0 network 192.168.0.0/16 | |
set protocols ospf log-adjacency-changes | |
## step 1 ibgp neighbor | |
set protocols bgp 65001 neighbor 192.168.0.2 remote-as 65001 | |
set protocols bgp 65001 neighbor 192.168.0.2 update-source 192.168.0.1 | |
set protocols bgp 65001 neighbor 192.168.0.3 remote-as 65001 | |
set protocols bgp 65001 neighbor 192.168.0.3 update-source 192.168.0.1 | |
## step 2 ebpg neighbor | |
set protocols static route 10.1.1.4/32 next-hop 10.1.14.4 | |
set protocols static route 10.1.1.4/32 next-hop 10.1.41.4 | |
set protocols bgp 65001 neighbor 10.1.1.4 remote-as 65002 | |
set protocols bgp 65001 neighbor 10.1.1.4 update-source dum0 | |
set protocols bgp 65001 neighbor 10.1.1.4 ebgp-multihop 1 | |
## step 5 bgp route for advertisement | |
set protocols bgp 65001 neighbor 192.168.0.2 nexthop-self | |
set protocols bgp 65001 neighbor 192.168.0.3 nexthop-self | |
# R2 | |
set protocols bgp 65001 | |
set interfaces loopback lo address 192.168.0.2/32 | |
set interfaces dummy dum0 address 192.168.0.2/32 | |
## ospf | |
set protocols ospf area 0 network 192.168.0.0/16 | |
set protocols ospf log-adjacency-changes | |
## step 1 ibgp neighbor | |
set protocols bgp 65001 neighbor 192.168.0.1 remote-as 65001 | |
set protocols bgp 65001 neighbor 192.168.0.1 update-source 192.168.0.2 | |
set protocols bgp 65001 neighbor 192.168.0.3 remote-as 65001 | |
set protocols bgp 65001 neighbor 192.168.0.3 update-source 192.168.0.2 | |
## step 2 ebpg neighbor | |
set protocols bgp 65001 neighbor 10.2.25.2 remote-as 65002 | |
## step 5 bgp route for advertisement | |
set protocols bgp 65001 neighbor 192.168.0.1 route-map import nexthop | |
set protocols bgp 65001 neighbor 192.168.0.3 route-map import nexthop | |
set policy route-map nexthop rule 10 action permit | |
set policy route-map nexthop rule 10 set ip-next-hop 192.168.0.2 | |
## step 7 change ospf cost | |
set interfaces ethernet eth2 ip ospf cost 1 | |
# R3 | |
set protocols bgp 65001 | |
set interfaces loopback lo address 192.168.0.3/32 | |
set interfaces dummy dum0 address 100.1.1.3/24 | |
## ospf | |
set protocols ospf area 0 network 192.168.0.0/16 | |
set protocols ospf log-adjacency-changes | |
## step 1 ibgp neighbor | |
set protocols bgp 65001 neighbor 192.168.0.1 remote-as 65001 | |
set protocols bgp 65001 neighbor 192.168.0.1 update-source 192.168.0.3 | |
set protocols bgp 65001 neighbor 192.168.0.2 remote-as 65001 | |
set protocols bgp 65001 neighbor 192.168.0.2 update-source 192.168.0.3 | |
## step 5 bgp route for advertisement | |
set protocols bgp 65001 network 100.1.1.0/24 | |
# R4 | |
set protocols bgp 65002 | |
set interfaces loopback lo address 192.168.0.4/32 | |
set interfaces dummy dum0 address 10.1.1.4/32 | |
## ospf | |
set protocols ospf area 0 network 192.168.0.0/16 | |
set protocols ospf log-adjacency-changes | |
## step 1 ibgp neighbor | |
set protocols bgp 65002 neighbor 192.168.0.5 remote-as 65002 | |
set protocols bgp 65002 neighbor 192.168.0.5 update-source 192.168.0.4 | |
set protocols bgp 65002 neighbor 192.168.0.6 remote-as 65002 | |
set protocols bgp 65002 neighbor 192.168.0.6 update-source 192.168.0.4 | |
## step 2 ebpg neighbor | |
set protocols static route 10.1.1.1/32 next-hop 10.1.14.1 | |
set protocols static route 10.1.1.1/32 next-hop 10.1.41.1 | |
set protocols bgp 65002 neighbor 10.1.1.1 remote-as 65001 | |
set protocols bgp 65002 neighbor 10.1.1.1 update-source dum0 | |
set protocols bgp 65002 neighbor 10.1.1.1 ebgp-multihop 1 | |
## step 5 bgp route for advertisement | |
set protocols bgp 65002 neighbor 192.168.0.5 nexthop-self | |
set protocols bgp 65002 neighbor 192.168.0.6 nexthop-self | |
# R5 | |
set protocols bgp 65002 | |
set interfaces loopback lo address 192.168.0.5/32 | |
set interfaces dummy dum0 address 192.168.0.5/32 | |
## ospf | |
set protocols ospf area 0 network 192.168.0.0/16 | |
set protocols ospf log-adjacency-changes | |
## step 1 ibgp neighbor | |
set protocols bgp 65002 neighbor 192.168.0.4 remote-as 65002 | |
set protocols bgp 65002 neighbor 192.168.0.4 update-source 192.168.0.5 | |
set protocols bgp 65002 neighbor 192.168.0.6 remote-as 65002 | |
set protocols bgp 65002 neighbor 192.168.0.6 update-source 192.168.0.5 | |
## step 2 ebpg neighbor | |
set protocols bgp 65002 neighbor 10.2.25.1 remote-as 65001 | |
# R6 | |
set protocols bgp 65002 | |
set interfaces loopback lo address 192.168.0.6/32 | |
set interfaces dummy dum0 address 100.2.2.6/24 | |
## ospf | |
set protocols ospf area 0 network 192.168.0.0/16 | |
set protocols ospf log-adjacency-changes | |
## step 1 ibgp neighbor | |
set protocols bgp 65002 neighbor 192.168.0.5 remote-as 65002 | |
set protocols bgp 65002 neighbor 192.168.0.5 update-source 192.168.0.6 | |
set protocols bgp 65002 neighbor 192.168.0.4 remote-as 65002 | |
set protocols bgp 65002 neighbor 192.168.0.4 update-source 192.168.0.6 | |
## step 5 bgp route for advertisement | |
set protocols bgp 65002 network 100.2.2.0/24 | |
## step 9 | |
set protocols bgp 65002 maximum-paths ibgp 2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment