annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 
cancel
284
Visites
0
Compliment
0
Commentaires
Meddane
VIP
VIP

Afin d'implémenter la connectivité spoke to spoke dans la phase 2 DMVPN, avec le protocole OSPF, il est couramment connu d'utiliser le network type broadcast au lieu du point to multipoint qui lui est utilisé pour une connectivité Hub to Spoke.

La question, en quoi le comportement OSPF diffère lorsqu'on a le broadcast et le point to multipoint ?

La réponse se trouve dans les paquets LSA qui sont l'essence même et l'âme du protocole.

La LSA Type 1 est celle qui jouera un rôle majeur pour déterminer une connexion spoke to spoke sans saut supplémentaire en broadcast, ou bien une connexion hub to spoke avec saut supplémentaire (extra hop routing).

La LSA Type 1 décrit les types de connexions et les informations de liens directement connectés d'un routeur.

Chaque type de lien (Link Type) représente le type du réseau connecté (P-2-P, transit network, virtual link et stub network). Chaque lien est marqué ou bien libellé avec un ID de lien (Link ID) et un Link Data, ce Link ID fournit un nom de l'entité qui est connecté au routeur.

Ci-dessous la description des Link Type et son Link ID correspondant.

 

Link Type    Description                           Link ID

 1               Point-to-point link                             Neighbor Router ID

 2               Link to transit network        Interface address of DR

 3               Link to Stub network           IP network number

 4               Virtual Link                            Neighbor Router ID

 

Le Link Data est spécifié pour chaque lien, il est codé sur 32 bits, par exemple pour les liens connectés au transit network, lien P-2-P ou lien virtuel (virtual Link), ce champ représente l'adresse IP du router connecté à ce lien (nécessaire pour le calcul SPF). Et pour les liens connectés au stub network, le Link Data est égal du Masque sous-réseau.

Dans le Type de network Point-to-Multipoint, chaque router génère une LSA Type 1 contenant les informations suivantes :

  1. Link Type 1 avec un lien P-2-P, son Link ID est le Router ID de son voisin et le Link Data égal à l'adresse IP du voisin.
  2. Link Type 3 avec un lien stub network dont le Link ID est l'adresse IP du routeur configurée sur l'interface du lien, le Link Data codé en hexa 0xffffffff représentant le masque 255.255.255.255.

C’est qui est mentionné dans la section 12.4.1.4 de la RFC 2328 :

OSPF Network Type Point-to-multipoint

Dans RFC 2328:

 

12.4.1.4.  Describing Point-to-MultiPoint interfaces

 

                For operational Point-to-MultiPoint interfaces, one or

                more link descriptions are added to the router-LSA as

                follows:

 

                A single Type 3 link (stub network) is added with

                Link ID set to the router's own IP interface

                address, Link Data set to the mask 0xffffffff

                (indicating a host route), and cost set to 0.

 

                For each fully adjacent neighbor associated with the

                interface, add an additional Type 1 link (point-to-

                point) with Link ID set to the Router ID of the

                neighboring router, Link Data set to the IP

                interface address and cost equal to the interface's

                configured output cost.

Dans cette topologie les interfaces tunnels sont configurées en Point-to-Multipoint.

Meddane_0-1650453464467.png

R3 annonce une Type-1 LSA avec trois liens :

  1. Lien connecté au Stub Network avec le Link ID 10.3.3.0 et Link Data 255.255.255.0
  2. Lien connecté à un routeur point to point avec le Link ID 0.0.0.1 et le Link Data 172.16.1.3
  3. Lien connecté au Stub Network avec le Link ID 172.16.1.3 et le Link Data 255.255.255.255

R2#sh ip os data router ad 0.0.0.3

            OSPF Router with ID (0.0.0.2) (Process ID 1)

                Router Link States (Area 0)

  LS age: 44

  Options: (No TOS-capability, DC)

  LS Type: Router Links

  Link State ID: 0.0.0.3

  Advertising Router: 0.0.0.3

  LS Seq Number: 80000006

  Checksum: 0x9EEB

  Length: 60

  Number of Links: 3

 

    Link connected to: a Stub Network

     (Link ID) Network/subnet number: 10.3.3.0

     (Link Data) Network Mask: 255.255.255.0

      Number of MTID metrics: 0

       TOS 0 Metrics: 1

 

    Link connected to: another Router (point-to-point)

     (Link ID) Neighboring Router ID: 0.0.0.1

     (Link Data) Router Interface address: 172.16.1.3

      Number of MTID metrics: 0

       TOS 0 Metrics: 1000

 

    Link connected to: a Stub Network

     (Link ID) Network/subnet number: 172.16.1.3

     (Link Data) Network Mask: 255.255.255.255

      Number of MTID metrics: 0

       TOS 0 Metrics: 0

R2#

 

R1 annonce une LSA Type-1 avec des informations sur 4 liens :

 

  1. Lien connecté au Stub Network avec le Link ID 10.1.1.0 et le Link Data 255.255.255.0
  2. Lien connecté à un routeur point to point avec le Link ID 0.0.0.3 et le Link Data 172.16.1.1
  3. Lien connecté à un routeur point to point avec le Link ID 0.0.0.2 et le Link Data 172.16.1.1
  4. Lien connecté au Stub Network avec le Link ID 172.16.1.1 et le Link Data 255.255.255.255

 

R2#sh ip os data router ad 0.0.0.1

            OSPF Router with ID (0.0.0.2) (Process ID 1)

                Router Link States (Area 0)

  LS age: 80

  Options: (No TOS-capability, DC)

  LS Type: Router Links

  Link State ID: 0.0.0.1

  Advertising Router: 0.0.0.1

  LS Seq Number: 8000000A

  Checksum: 0xC114

  Length: 72

  Number of Links: 4

 

    Link connected to: a Stub Network

     (Link ID) Network/subnet number: 10.1.1.0

     (Link Data) Network Mask: 255.255.255.0

      Number of MTID metrics: 0

       TOS 0 Metrics: 1

 

    Link connected to: another Router (point-to-point)

     (Link ID) Neighboring Router ID: 0.0.0.3

     (Link Data) Router Interface address: 172.16.1.1

      Number of MTID metrics: 0

       TOS 0 Metrics: 1000

 

    Link connected to: another Router (point-to-point)

     (Link ID) Neighboring Router ID: 0.0.0.2

     (Link Data) Router Interface address: 172.16.1.1

      Number of MTID metrics: 0

       TOS 0 Metrics: 1000

 

    Link connected to: a Stub Network

     (Link ID) Network/subnet number: 172.16.1.1

     (Link Data) Network Mask: 255.255.255.255

      Number of MTID metrics: 0

       TOS 0 Metrics: 0

R2#

Au niveau du routeur R2, ce dernier conclura que R1 est voisin avec R3, il est déjà voisin avec R1, pour joindre le stub network 10.3.3.0/24 derrière R3, il ajoute la métrique vers R1 (100 par défaut sur les interfaces tunnels) listé dans sa LSA Type 1 (plus exactement cette métrique 100 est listée dans le Link Type 1), à la métrique entre R1 et R3 listée dans la LSA Type 1 de R3 (1000), plus exactement 1000 se trouve dans le Link Type 3 du stub network 10.3.3.0/24.

R2 va utiliser l'adresse IP 172.16.1.1 de R1 comme next-hop, cette adresse IP est listée dans la LSA Type 1 de R1, plus exactement dans le Link Type 1, afin de joindre le sous réseau 10.3.3.0/24.

C'est le type network point to multipoint qui détermine l'architecture Hub to Spoke.

R2#sh ip route os | beg Gate

Gateway of last resort is 2.2.2.2 to network 0.0.0.0

 

      10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks

O        10.1.1.0/24 [110/1001] via 172.16.1.1, 00:08:52, Tunnel1

O        10.3.3.0/24 [110/2001] via 172.16.1.1, 00:02:22, Tunnel1

      172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks

O        172.16.1.1/32 [110/1000] via 172.16.1.1, 00:02:37, Tunnel1

O        172.16.1.3/32 [110/2000] via 172.16.1.1, 00:02:22, Tunnel1

R2#

La raison se trouve dans la section 16.1.1 de la RFC 2328 OSPFv2 :

The reason is mentioned in RFC 2328 in the following section:

16.1.1.  The next hop calculation

If there is at least one intervening router in the current

            shortest path between the destination and the root, the

            destination simply inherits the set of next hops from the

            parent.  Otherwise, there are two cases.  In the first case,

            the parent vertex is the root (the calculating router

            itself).  This means that the destination is either a

            directly connected network or directly connected router.

            The outgoing interface in this case is simply the OSPF

            interface connecting to the destination network/router. If

            the destination is a router which connects to the

            calculating router via a Point-to-MultiPoint network, the

            destination's next hop IP address(es) can be determined by

            examining the destination's router-LSA: each link pointing

            back to the calculating router and having a Link Data field

            belonging to the Point-to-MultiPoint network provides an IP

            address of the next hop router. If the destination is a

            directly connected network, or a router which connects to

            the calculating router via a point-to-point interface, no

            next hop IP address is required. If the destination is a

            router connected to the calculating router via a virtual

            link, the setting of the next hop should be deferred until

            the calculation in Section 16.3.

 

            In the second case, the parent vertex is a network that

            directly connects the calculating router to the destination

            router.  The list of next hops is then determined by

            examining the destination's router-LSA.  For each link in

            the router-LSA that points back to the parent network, the

            link's Link Data field provides the IP address of a next hop

            router.  The outgoing interface to use can then be derived

            from the next hop IP address (or it can be inherited from

            the parent network).

 

Le deuxième type d'architecture dans DMVPN est spoke to spoke, en utilisant le protocole OSPF, le type de network qui offre cette solution est le broadcast.

Configurons les interfaces tunnels de R1, R2 et R3 en broadcast.

interface Tunnel1

 ip ospf network broadcast

Dans un type de network broadcats, tout le monde connait qu'une élection d'un DR s'impose. Un routeur non-DR est adjacent dans l'état FULL (synchronisation de la base de données), ou bien il est un DR et il est adjacent à l'état FULL avec au moins un routeur.

Comme un DR est désigné dans les types de network broadcast, dans la LSA Type 1 de chaque routeur, un Link Type 2 (lien connecté au transit) est ajouté afin de décrire qu'un DR existe dans ce lien, le Link ID correspondant représente l'adresse IP du DR, et le Link Data correspond a l'adresse IP local, quand ses derniers champs sont identiques, cela signifie que c'est la LSA Type 1 du DR. Comme l'information des autres routeurs est manquante, c'est le DR qui se chargera d'informer les autres routeurs de la liste des routeurs connecté au segment de transit à travers la LSA Type 2 comme le montre la sortie de la LSA Type 2 ci-dessous.

R1 est le Hub, il est configuré comme DR, il annonce une LSA Type 2 avec dans le body la liste des routeurs connectés qui partagent le même segment de broadcast.

R2#sh ip os data net

            OSPF Router with ID (0.0.0.2) (Process ID 1)

                Net Link States (Area 0)

  LS age: 17

  Options: (No TOS-capability, DC)

  LS Type: Network Links

  Link State ID: 172.16.1.1 (address of Designated Router)

  Advertising Router: 0.0.0.1

  LS Seq Number: 80000001

  Checksum: 0x630D

  Length: 36

  Network Mask: /24

        Attached Router: 0.0.0.1

        Attached Router: 0.0.0.2

        Attached Router: 0.0.0.3

R2#

R2 reçoit la LSA Type 2 de R1, il détecte que R3 est localisé dans le même sous réseau dont il est joignable directement.

R3 annonce à R1 sa LSA Type 1 avec deux informations de liens dans le body:

Le Link Type 3 avec le Link ID 10.3.3.0 et Link Data (masque) 255.255.255.0 comme stub network.

Le Link Type 2 pour indiquer à R2 qu'il est connecté au réseau de transit 172.16.1.0/24 partageant le même DR R1. Dans le Data Link, il y'a l'adresse IP 172.16.1.3 que le routeur R2 va utiliser comme next hop pour joindre n'importe quel sous réseau derrière R3 comme 10.3.3.0/24.

R2#sh ip os data router adv 0.0.0.3

 

            OSPF Router with ID (0.0.0.2) (Process ID 1)

 

                Router Link States (Area 0)

 

  LS age: 62

  Options: (No TOS-capability, DC)

  LS Type: Router Links

  Link State ID: 0.0.0.3

  Advertising Router: 0.0.0.3

  LS Seq Number: 8000000A

  Checksum: 0xD2C5

  Length: 48

  Number of Links: 2

 

    Link connected to: a Stub Network

     (Link ID) Network/subnet number: 10.3.3.0

     (Link Data) Network Mask: 255.255.255.0

      Number of MTID metrics: 0

       TOS 0 Metrics: 1

 

    Link connected to: a Transit Network

     (Link ID) Designated Router address: 172.16.1.1

     (Link Data) Router Interface address: 172.16.1.3

      Number of MTID metrics: 0

       TOS 0 Metrics: 1000

R2#

Finalement R2 détecte que le routeur R3 est dans le même réseau de transit 172.16.1.0/24 où ils ont élu le même DR, cette information est dérivée de la LSA Type 2 de R1. Donc il peut joindre 10.3.3.0/24 via R3 directement mais il lui manque le next hop R3.

Pour cela il analyse la LSA Type 1 de R3 pour trouver le next hop 172.16.1.3 afin d'installer une route 10.3.3.0.24 via 172.16.1.3.

R2#sh ip route os | beg Gate      

Gateway of last resort is 2.2.2.2 to network 0.0.0.0

 

      10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks

O        10.1.1.0/24 [110/1001] via 172.16.1.1, 00:01:55, Tunnel1

O        10.3.3.0/24 [110/1001] via 172.16.1.3, 00:01:45, Tunnel1

R2#

C'est pour cette raison qu'il est recommandé d'utiliser le type de network broadcast lorsqu'on veut mettre en place une connectivité spoke to spoke.

 

 

 

 

 

 

Mise en Route
Bienvenue dans la Communauté !

La communauté est un hub pour vous connecter avec vos pairs et les spécialistes Cisco, pour demander de l'aide, partager votre expertise, développer votre réseau et évoluer professionnellement.
Vous êtes un nouvel arrivant ? Cliquez ici pour en savoir plus.

Nous voulons que votre navigation soit la meilleure, donc vous trouverez des liens pour vous aider à être rapidement familiarisé avec la Communauté Cisco :