L’iBGP est entre nominoe et judicael. L’échange de routes se fait sur le VLAN 40 et les données des VPNs passent par le VLAN 20.
Afin de séparer les données de l’échange de route, judicael annonce un next-hop différent de l’IP qu’il utilise pour parler avec nominoe dans la session BGP.
Pour se faire, j’ai créé la route-map qu’il faut selon la doc de quagga.
route-map PUBLIC-NEXT-HOP permit 1 set ip next-hop 89.234.186.3
Je n’ai pas envie que judicael annonce autre chose que des /32 dans le premier /25
ip prefix-list VPN-ALLOWED-ADV seq 5 permit 89.234.186.0/25 le 32 ip prefix-list VPN-ALLOWED-ADV seq 10 permit 89.234.186.0/25 ge 32 ip prefix-list VPN-ALLOWED-ADV seq 50 deny any
OpenVPN crée une route en /32 pour chaque VPN dans le kernel, il faut donc redistribuer les routes du kernel. J’ai créé un peer-group « vpn » afin de pouvoir réutiliser la conf le cas échéant.
router bgp 204092 bgp router-id 89.234.186.3 redistribute kernel neighbor vpn peer-group neighbor vpn prefix-list VPN-ALLOWED-ADV out neighbor vpn route-map PUBLIC-NEXT-HOP out neighbor 172.17.0.1 remote-as 204092 neighbor 172.17.0.1 peer-group vpn