vendredi 25 avril 2014

VRF GETVPN, DMVPN, et FLEXVPN

Dans cet article, je vais vous présenter l’utilisation de 3 VPNs multipoints (GETVPN, FLEXVPN Spoke To Spoke, et DMVPN) avec des VRFs (Virtual Routing and Forwarding).
Pour rappel, une VRF permets de virtualiser la table de routage d’un routeur afin de segmenter le routage de manière logique.





J’ai par contre pas le courage de détailler chaque point de la configuration, je vous mets donc le but du lab, ainsi que les configurations Initiale et Finales. Si vous avez des questions laissez un commentaire :).

Adressage

DeviceInterfaceIPVRF
ASA3G0/0.172 (Outside – MGMT Context)172.17.0.30+1/24
ASA3G0/0.254 (Outside – DATA Context)10.254.0.30+1/24
ASA3G0/1 (inside – MGMT Context)10.1.1.30+1/24
ASA3G0/1 (inside – DATA Context)10.1.1.40+1/24
ASA3G0/2 (FAIL)99.99.99.30+1/24
R10G0/1.172172.17.0.10/24DataVRF
R11G0/1.172172.17.0.11/24DataVRF
R10G0/1.25410.253.0.10/24MgmtVRF
R11G0/1.25410.253.0.11/24MgmtVRF
R10G0/0100.0.0.10/24InternetVRF
R11G0/0100.0.0.11/24InternetVRF
R7G0/0100.0.0.7/24InternetVRF
R8G0/0100.0.0.8/24InternetVRF
R1L01.1.1.1/24
R7L07.7.7.7/24DataVRF
R8L08.8.8.8/24DataVRF
R10Tun100172.16.0.10/24MgmtVRF
R11Tun100172.16.0.11/24MgmtVRF
R7Tun100172.16.0.7/24MgmtVRF
R8Tun100172.16.0.8/24MgmtVRF
R10Tun20010.254.0.10/24MgmtVRF
R11Tun20010.254.0.11/24MgmtVRF
R7Tun20010.254.0.7/24MgmtVRF
R8Tun20010.254.0.8/24MgmtVRF
R1G0/010.1.1.1/24
En gros le but est d’avoir du GETVPN over DMVPN. Les données transiteront dans la VRF DataVRF (partie DMVPN/GRE), mais les terminaisons des tunnels seront dans la VRF InternetVRF. Les données dans la VRF InternetVRF seront sécurisées via GETVPN.
Pour rappel, avec IPSEC, nous avons la notions de I-VRF ou Inside VRF qui identifie la VRF des données qui seront chiffrées, et la F-VRF ou Frontdoor VRF qui identifie la VRF de transport IPSEC. Ces deux VRFs peuvent ou non être identique.
R1 sera le KeyServer, et les autres routeurs seront les GroupMembers.
Parce que c’est fun, j’ai aussi mis un deuxième reseau DMVPN lui sécurisé par IPSEC classic qui vas servir au rekeying multicast du réseau GETVPN.
Enfin, puisque l’ASA en mode multi contexte ne gère pas le routage multicast, j’ai mis un 3e cloud VPN utilisant IKEv2 et FLEXVPN spoke to spoke pour le multicast vers le KeyServer R1.
Ce qui est fun avec le FlexVPN Spoke to Spoke, c’est que l’on instancie une VirtualTemplate lors de la redirection NHRP, et on a donc non plus un seul tunnel multi-point, mais plusieurs tunnels point-to-point créé a la volée. IKEv2 Mode config permets aussi en théorie de s’affranchir d’un protocole de routage.

On termine par quelques vérifications:

R8#ping vrf DataVRF 10.1.1.1 source Lo0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.1.1, timeout is 2 seconds:
Packet sent with a source address of 8.8.8.8 
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
R8#ping vrf MgmtVRF 10.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms

R10#sh crypto session detail 
Crypto session current status

Code: C - IKE Configuration mode, D - Dead Peer Detection     
K - Keepalives, N - NAT-traversal, T - cTCP encapsulation     
X - IKE Extended Authentication, F - IKE Fragmentation

Interface: GigabitEthernet0/0
Session status: UP-ACTIVE     
Peer: 0.0.0.0 port 848 fvrf: InternetVRF ivrf: InternetVRF
      Desc: (none)
      Phase1_id: (none)
  IKEv1 SA: local 239.1.2.3/848 remote 1.1.1.1/848 Active 
          Capabilities:(none) connid:1061 lifetime:0
  IPSEC FLOW: permit 47 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0 
        Active SAs: 2, origin: crypto map
        Inbound:  #pkts dec'ed 2651 drop 0 life (KB/Sec) KB Vol Rekey Disabled/2088
        Outbound: #pkts enc'ed 2641 drop 0 life (KB/Sec) KB Vol Rekey Disabled/2088

Interface: Tunnel100
Uptime: 01:49:01
Session status: UP-ACTIVE     
Peer: 100.0.0.11 port 500 fvrf: InternetVRF ivrf: MgmtVRF
      Phase1_id: 100.0.0.11
      Desc: (none)
  IKEv1 SA: local 100.0.0.10/500 remote 100.0.0.11/500 Active 
          Capabilities:(none) connid:1048 lifetime:22:10:57
  IPSEC FLOW: permit 47 host 100.0.0.10 host 100.0.0.11 
        Active SAs: 2, origin: crypto map
        Inbound:  #pkts dec'ed 1492 drop 0 life (KB/Sec) 4171263/504
        Outbound: #pkts enc'ed 1513 drop 0 life (KB/Sec) 4171262/504

Interface: Tunnel100
Uptime: 01:49:03
Session status: UP-ACTIVE     
Peer: 100.0.0.8 port 500 fvrf: InternetVRF ivrf: MgmtVRF
      Phase1_id: 100.0.0.8
      Desc: (none)
  IKEv1 SA: local 100.0.0.10/500 remote 100.0.0.8/500 Active 
          Capabilities:(none) connid:1046 lifetime:22:10:56
  IPSEC FLOW: permit 47 host 100.0.0.10 host 100.0.0.8 
        Active SAs: 2, origin: crypto map
        Inbound:  #pkts dec'ed 1784 drop 0 life (KB/Sec) 4184809/466
        Outbound: #pkts enc'ed 1525 drop 0 life (KB/Sec) 4184832/466

Interface: Tunnel100
Uptime: 01:49:01
Session status: UP-ACTIVE     
Peer: 100.0.0.7 port 500 fvrf: InternetVRF ivrf: MgmtVRF
      Phase1_id: 100.0.0.7
      Desc: (none)
  IKEv1 SA: local 100.0.0.10/500 remote 100.0.0.7/500 Active 
          Capabilities:(none) connid:1047 lifetime:22:10:57
  IPSEC FLOW: permit 47 host 100.0.0.10 host 100.0.0.7 
        Active SAs: 2, origin: crypto map
        Inbound:  #pkts dec'ed 1778 drop 0 life (KB/Sec) 4312433/481
        Outbound: #pkts enc'ed 1514 drop 0 life (KB/Sec) 4312456/481

Interface: Tunnel0
Uptime: 00:59:01
Session status: UP-ACTIVE     
Peer: 10.1.1.1 port 500 fvrf: MgmtVRF ivrf: MgmtVRF
      Phase1_id: R1.cciesec.local
      Desc: (none)
  IKEv2 SA: local 172.17.0.10/500 remote 10.1.1.1/500 Active 
          Capabilities:(none) connid:1 lifetime:23:00:59
  IPSEC FLOW: permit 47 host 172.17.0.10 host 10.1.1.1 
        Active SAs: 2, origin: crypto map
        Inbound:  #pkts dec'ed 137 drop 0 life (KB/Sec) 4182850/3544
        Outbound: #pkts enc'ed 140 drop 0 life (KB/Sec) 4182850/3544

Interface: Tunnel100
Profile: GET
Session status: UP-IDLE
Peer: 1.1.1.1 port 848 fvrf: MgmtVRF ivrf: DataVRF
      Phase1_id: 1.1.1.1
      Desc: (none)
  IKEv1 SA: local 172.16.0.10/848 remote 1.1.1.1/848 Active 
          Capabilities:(none) connid:1060 lifetime:23:39:29

R1#crypto gdoi ks rekey 

% There has not been a GDOI policy change for group GETVPN, a rekey is not needed

Are you sure you want to proceed ? [yes/no]: yes
R1#
*Mar 30 16:21:28.833: %GDOI-5-KS_SEND_MCAST_REKEY: Sending Multicast Rekey with policy-replace for group GETVPN from address 1.1.1.1 to 239.1.2.3 with seq # 1

R7#
*Mar 30 16:11:41.650: %GDOI-5-SA_KEK_UPDATED: SA KEK was updated
*Mar 30 16:11:41.650: %GDOI-5-SA_TEK_UPDATED: SA TEK was updated
*Mar 30 16:11:41.650: %GDOI-5-GM_RECV_REKEY: Received Rekey for group GET from 1.1.1.1 to 239.1.2.3 with seq # 1
*Mar 30 16:11:41.650: %GDOI-5-GM_INSTALL_POLICIES_SUCCESS: SUCCESS: Installation of Reg/Rekey policies from KS 1.1.1.1 for group GET & gm identity  239.1.2.3
R7#sh ip mroute vrf MgmtVRF
 (*, 239.1.2.3), 01:17:16/stopped, RP 0.0.0.0, flags: DCL
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    Tunnel100, Forward/Dense, 01:17:16/stopped

(1.1.1.1, 239.1.2.3), 00:00:46/00:02:13, flags: PLT
  Incoming interface: Tunnel100, RPF nbr 172.16.0.11
  Outgoing interface list: Null







Aucun commentaire:

Enregistrer un commentaire