summaryrefslogtreecommitdiff
path: root/Generate
diff options
context:
space:
mode:
Diffstat (limited to 'Generate')
-rwxr-xr-xGenerate27
1 files changed, 16 insertions, 11 deletions
diff --git a/Generate b/Generate
index 0a328d3..ca7e828 100755
--- a/Generate
+++ b/Generate
@@ -786,13 +786,20 @@ hostlist.each{ |host|
##########
bgpd.puts "!"
bgpd.puts "! ** peer #{peer['name']} **"
+ if host['ipv6'] and peer['ipv6']
+ n = host['link-local'][ peer['name'] ]['peer']
+ else
+ n = peer['vpn_address']
+ end
+
+ bgpd.puts " neighbor #{n} remote-as #{peer['asn']}"
+ bgpd.puts " neighbor #{n} send-community"
+ bgpd.puts " neighbor #{n} interface #{peer['ifacename']}"
+ bgpd.puts " neighbor #{n} description #{peer['name']}"
+ bgpd.puts " neighbor #{n} port #{peer['bgp_port']}" if peer.has_key?('bgp_port')
+ bgpd.puts "!"
+
unless host['ipv6'] and peer['ipv6']
- bgpd.puts " neighbor #{peer['vpn_address']} remote-as #{peer['asn']}"
- bgpd.puts " neighbor #{peer['vpn_address']} send-community"
- bgpd.puts " neighbor #{peer['vpn_address']} interface #{peer['ifacename']}"
- bgpd.puts " neighbor #{peer['vpn_address']} description #{peer['name']}"
- bgpd.puts " neighbor #{peer['vpn_address']} port #{peer['bgp_port']}" if peer.has_key?('bgp_port')
- bgpd.puts "!"
filtername = (host.has_key?('extra_export') and host['extra_export'].has_key?(peer['name'])) ?
makelistname(peer['name'], 'export') :
'VPNn2'
@@ -801,20 +808,18 @@ hostlist.each{ |host|
makelistname(peer['name'], 'import') :
'VPNn2'
bgpd.puts " neighbor #{peer['vpn_address']} prefix-list #{filtername} in"
+
bgpd.puts " neighbor #{peer['vpn_address']} route-map IN#{ host['peer_map_name'][peer['name']] } in"
bgpd.puts " neighbor #{peer['vpn_address']} route-map OUT#{ host['peer_map_name'][peer['name']] } out"
bgpd.puts "!"
else
#if host['ipv6'] and peer['ipv6']
- bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } remote-as #{peer['asn']}"
- bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } send-community"
- bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } interface #{peer['ifacename']}"
- bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } description #{peer['name']}"
- bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } port #{peer['bgp_port']}" if peer.has_key?('bgp_port')
bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } route-map IN#{ host['peer_map_name'][peer['name']] } in"
bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } route-map OUT#{ host['peer_map_name'][peer['name']] }6 out"
bgpd.puts " address-family ipv6"
bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } activate"
+ bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } route-map IN#{ host['peer_map_name'][peer['name']] } in"
+ bgpd.puts " neighbor #{ host['link-local'][ peer['name'] ]['peer'] } route-map OUT#{ host['peer_map_name'][peer['name']] }6 out"
bgpd.puts " exit-address-family"
end
}