mardi 4 mars 2014

DMVPN Partie 2 : Mise en place d IPSEC et routage

Cette deuxième et dernière partie sur les DMVPN va permettre la mise en place du protocole IPSEC sur les tunnels GRE et mGRE que nous avons crées dans la partie 1. Dans un second temps nous parlerons routage … NHRP étant un protocole de type NBMA, nous allons étudier son impact sur EIGRP et OSPF.

La topologie réseau reste la même que dans la partie 1.
  1. Mise en place de IPSEC

Ce premier point va être très court étant donne que la configuration de IPSec a  été abordée dans les topics précédents.

On retrouve les deux méthodes d’authentification : pre-shared keys et certificats. D'une manière générale CISCO préconise l'utilisation des certificats, on peut facilement imaginer les problemes de pre-shared key dans une architecture spoke à spoke … avec plien de spokes ...et n omettons pas le niveau de sécurité plus élevé des certificats.

C'est pour cette raison que j ai choisi … les clefs partagées !!! Non je plaisante, c est uniquement par flemme : mon serveur 2003 a crashe et je n ai pas envie d en remonter un. De toutes manières si des détails vous manque dans la configuration, referez vous au topic concerné.

Donc j ai fais simple, voici la configuration appliquée à R8 :

crypto keyring DMVPN
pre-shared-key address 192.168.20.2 key DMVPN
pre-shared-key address 192.168.30.2 key DMVPN
!
crypto isakmp policy 10
encr aes 256
authentication pre-share
group 16
crypto isakmp profile DMVPN
keyring DMVPN
match identity address 192.168.20.2 255.255.255.255
match identity address 192.168.30.2 255.255.255.255
!
!
!
crypto ipsec profile DMVPN
set isakmp-profile DMVPN

et celle de R7 :

crypto keyring DMVPN
pre-shared-key address 192.168.10.2 key DMVPN
pre-shared-key address 192.168.20.2 key DMVPN
!
crypto isakmp policy 10
encr aes 256
authentication pre-share
group 16
crypto isakmp profile DMVPN
keyring DMVPN
match identity address 192.168.10.2 255.255.255.255
match identity address 192.168.20.2 255.255.255.255
!
!
!
crypto ipsec profile DMVPN
set isakmp-profile DMVPN

La configuration de R6 est basée sur le même principe

La configuration spoke à spoke nous oblige à déclarer tous les peers possibles … Ici il n y en a que deux mais imaginez sur des réseaux plus importants, la configuration devient vite inclicable.

Une fois le profil IPSEC applique au tunnel, on observe :

Sur R8 :


Sur R6 : 



Cet imprime écran est d'autant plus intéressant que sur le premier show DMVPN uniquement le tunnel vers le HUB apparaît. Cependant après un ping de R7 un deuxième VPN apparaît, il est crée sur demande !
Je ne pense pas qu il y est encore des raisons de s attarder sur cette première partie, pour toutes questions n hésitez pas !
  1. Routage et les ennuis commencent …

Le thème traitant des protocoles de routage appliques aux interfaces WAN fut un cauchemar dans le cours CCNP routing et les concepts ne sont pas éloignés du tout du tout.

Un rappel des faits :

Un cloud DMVPN est un réseau NBMA (Non Broadcast Network)
Deux architectures possibles : Hub/Spoke ou Spoke/Spoke
  1. Hub/Spoke

Il est impératif dans ce cas de configurer l'enregistrement des paquets multicast dynamiques avec le hub sur chaque spoke.
Le hub va répliquer les paquets multicast sur chaque interface et donc chaque spoke va recevoir les paquets multicasts.
Il n'y a aucun échange d information entre spokes directement !!!!

a.OSPF


Voici la configuration de l interface tunnel du Hub :

interface Tunnel100
ip address 10.0.0.1 255.255.255.0
ip nhrp authentication xavon
ip nhrp map multicast dynamic
ip nhrp network-id 100
ip ospf network point-to-multipoint
ip ospf priority 10
ip ospf 10 area 0
tunnel source FastEthernet1/1
tunnel mode gre multipoint
tunnel protection ipsec profile DMVPN
!
Tout d abord on peut voir que l interface tunnel est déclarée dans le process OSPF 10 aire 0

Second point la commande ip ospf network point-to-multipoint

Troisième point la commande ip ospf priority 10 pour conforter le Hub dans son rôle de DR

La configuration d un Spoke :

interface Tunnel100
ip address 10.0.0.2 255.255.255.0
ip nhrp authentication xavon
ip nhrp map multicast 192.168.10.2
ip nhrp map 10.0.0.1 192.168.10.2
ip nhrp network-id 100
ip nhrp nhs 10.0.0.1
ip ospf network point-to-point
ip ospf hello-interval 30
ip ospf 10 area 0
tunnel source FastEthernet1/1
tunnel destination 192.168.10.2
tunnel protection ipsec profile DMVPN

idem pour la déclaration de l interface de tunnel dans le process OSPF. Elle est par contre déclarée en tant que point a point, vers le Hub ! Nous avons de plus changé le timer du Hello pour qu il soit le même que celui du Hub. En effet les valeurs par défaut entre point a point et point a multipoint ne sont pas les mêmes. Je rappelle que ci les valeurs Hello et Dead sont differentes entre les routeurs OSPF ne fonctionnera pas !

Que se passe-t il au niveau des tables de routage ?





Si on prête attention a la la route pour joindre le réseau 172.168.30.0/30, on voit qu il faut obligatoirement passer par R8.
Tout le trafic transitant entre les Spokes doit passer par le Hub … il faut quelque chose de costaud !!!!

b. EIGRP


interface Tunnel100
ip address 10.0.0.1 255.255.255.0
no ip redirects
ip nhrp authentication xavon
ip nhrp map multicast dynamic
ip nhrp network-id 100
tunnel source FastEthernet1/1
tunnel mode gre multipoint
tunnel protection ipsec profile DMVPN
!
end

R8#sh run | beg router
router eigrp 100
network 10.0.0.0
network 172.168.0.0
passive-interface FastEthernet1/1

La configuration est la meme sur les spoke mais en tunnel gre point a point.

Voici ce que l on peut observer dans la table de routage de R6 :

Gateway of last resort is not set

10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 10.0.0.0/24 is directly connected, Tunnel100
L 10.0.0.2/32 is directly connected, Tunnel100
172.168.0.0/16 is variably subnetted, 3 subnets, 2 masks
D 172.168.10.0/30 [90/26882560] via 10.0.0.1, 00:21:25, Tunnel100
C 172.168.20.0/30 is directly connected, FastEthernet1/0
L 172.168.20.2/32 is directly connected, FastEthernet1/0
S 192.168.10.0/24 [1/0] via 192.168.20.1
192.168.20.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.20.0/24 is directly connected, FastEthernet1/1
L 192.168.20.2/32 is directly connected, FastEthernet1/1
S 192.168.30.0/24 [1/0] via 192.168.20.1

Aucune occurrence au reseau 17.168.30.0 heberge sur R7. Il faut absolument desactiver le spli-horizon sur l interface tunnel 100 de R8 :

No ip split-horizon eigrp 100

On voit alors:

Gateway of last resort is not set

10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 10.0.0.0/24 is directly connected, Tunnel100
L 10.0.0.2/32 is directly connected, Tunnel100
172.168.0.0/16 is variably subnetted, 4 subnets, 2 masks
D 172.168.10.0/30 [90/26882560] via 10.0.0.1, 00:24:28, Tunnel100
C 172.168.20.0/30 is directly connected, FastEthernet1/0
L 172.168.20.2/32 is directly connected, FastEthernet1/0
D 172.168.30.0/30 [90/28162560] via 10.0.0.1, 00:00:09, Tunnel100
S 192.168.10.0/24 [1/0] via 192.168.20.1
192.168.20.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.20.0/24 is directly connected, FastEthernet1/1
L 192.168.20.2/32 is directly connected, FastEthernet1/1
S 192.168.30.0/24 [1/0] via 192.168.20.1

Une occurrence apparait !!!


c. Spoke/Spoke OSPF

Bien, considérons a présent que des interfaces mGRE sont configurées sur tous les Spokes.
Deux solutions :
Nous utilisons un type de réseau CISCO via la commande Broadcast. L interface Wan va apparaître comme une interface LAN, nous avons une élection DR et BDR, la découverte des voisins et automatique.
Nous utilisons un type de réseau IETF via la commande NON-Broadcast. Nous allons devoir alors configurer chaque voisin de façon manuelle, nous avons une élection DR et BDR.
Voici la configuration de R8 :
interface Tunnel100
ip address 10.0.0.1 255.255.255.0
no ip redirects
ip nhrp authentication xavon
ip nhrp map multicast dynamic
ip nhrp network-id 100
ip ospf network broadcast
ip ospf priority 10
ip ospf 10 area 0
tunnel source FastEthernet1/1
tunnel mode gre multipoint
tunnel protection ipsec profile DMVPN

On doit d assurer que le routeur Hub NHRP soit élu en tant que DR.
Voici la configuration de R6 :
interface Tunnel100
ip address 10.0.0.2 255.255.255.0
no ip redirects
ip nhrp authentication xavon
ip nhrp map 10.0.0.1 192.168.10.2
ip nhrp map multicast 192.168.10.2
ip nhrp network-id 100
ip nhrp nhs 10.0.0.1
ip ospf network broadcast
ip ospf priority 0
ip ospf 10 area 0
tunnel source FastEthernet1/1
tunnel mode gre multipoint
tunnel protection ipsec profile DMVPN


Le fait de configurer la priorité OSPF à 0 implique que le routeur ne pourra JAMAIS être élu DR.
Des changements apparaissent au niveau de la table de routage :
On ne passe plus par le Hub pour faire transiter le trafic, on joint directement R7.
Attention tout de même, les informations de routage passe par R8 et seulement par lui, il n y a pas de relations entre R6 et R7 : tous les paquets multicast transitent obligatoirement via R8.
Et sur R6 :


Spoke/Spoke EIGRP
Notre dernier cas de figure, des tunnels mGRE configures sur tous les routeurs.

Je laisse le no ip split horizon sur le hub mais reconfigure les interface des Spoke.

On observe sur R6 :

Gateway of last resort is not set

10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 10.0.0.0/24 is directly connected, Tunnel100
L 10.0.0.2/32 is directly connected, Tunnel100
172.168.0.0/16 is variably subnetted, 4 subnets, 2 masks
D 172.168.10.0/30 [90/26882560] via 10.0.0.1, 00:00:13, Tunnel100
C 172.168.20.0/30 is directly connected, FastEthernet1/0
L 172.168.20.2/32 is directly connected, FastEthernet1/0
D 172.168.30.0/30 [90/28162560] via 10.0.0.1, 00:00:07, Tunnel100
S 192.168.10.0/24 [1/0] via 192.168.20.1
192.168.20.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.20.0/24 is directly connected, FastEthernet1/1
L 192.168.20.2/32 is directly connected, FastEthernet1/1
S 192.168.30.0/24 [1/0] via 192.168.20.1

La route est bien presente mais on passe par R8 pour taper le reseau, ce n est pas forcement le resultat auquel on pouvait s attendre. Et pourtant … TOUS les paquets multicast transitent par R8 qui change les informations EIGRP avant de les envoyer vers les spokes. Que change-t-il ? Le next hope et il se met a la place !!!!
On va donc entrer la commande no ip next-hop-self eigrp sur l interface du tunnel de R8.

On observe maintenant  sur R6 :

Gateway of last resort is not set

10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C 10.0.0.0/24 is directly connected, Tunnel100
L 10.0.0.2/32 is directly connected, Tunnel100
172.168.0.0/16 is variably subnetted, 4 subnets, 2 masks
D 172.168.10.0/30 [90/26882560] via 10.0.0.1, 00:10:46, Tunnel100
C 172.168.20.0/30 is directly connected, FastEthernet1/0
L 172.168.20.2/32 is directly connected, FastEthernet1/0
D 172.168.30.0/30 [90/28162560] via 10.0.0.3, 00:10:46, Tunnel100
S 192.168.10.0/24 [1/0] via 192.168.20.1
192.168.20.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.20.0/24 is directly connected, FastEthernet1/1
L 192.168.20.2/32 is directly connected, FastEthernet1/1
S 192.168.30.0/24 [1/0] via 192.168.20.1

On tape en direct sur le reseau, R8 ne modifie plus le next hop !


Pfff .... ce fut long .... mais extremement KIFANT !!

Bon clic à tous ,








Aucun commentaire:

Enregistrer un commentaire