S2C2 - VLAN et routage

SIO > S2_SISR > S2C02 bases du reseau > S2C2_vlan et routeur.md

VLANs 802.1q

Les réseaux virtuels sont un découpage logique des commutateurs (switch) en plusieurs commutateurs plus petits.
Ce découpage est souvent fait en parallèle à une segmentation de l'adressage (voir segmentation au chapitre précédent).

Intérêt des VLANs

Réseaux découpés

Les besoins :

  • Financiers : optimiser les coûts de l'infrastructure
  • Organisationnels : segmenter l'organisation (possibilité de modifier la structure de l'organisation, construire ou licencier un service particulier)
  • Sécurité : augmenter la sécurité des installations numériques tout en permettant une ouverture des accès au public ou aux utilisateurs temporaires, au matériel personnel (BYOD - Bring Your Own Device).
  • Technique : améliorer et faciliter la gestion du parc, optimiser la bande passante et la souplesse de l'architecture.

Les apports :

  • Financier : utiliser un seul matériel pour plusieurs usages : un switch est divisé en plusieurs virtuels,
    • Anciennement, il fallait utiliser des switchs différents pour chaque zone : cher, nombreux matériels, architecture figée
    • Maintenant, les switchs sont divisés virtuellement : Standard IEEE 802.1q (VLAN) moins cher, configuration et compétence, architecture plus souple
  • Organisationnel : diviser le réseau en zones selon la vision de l'organisation (mgmt)
    • Géographiques : administration, production, stock, bureaux …
    • Fonctionnelles : comptabilité, commercial, informatique, logistique, direction, activité
  • Sécurité : séparer les zones apporte plus de capacités de contrôle des flux inter-services de l'organisation :
    • les utilisateurs n'ont plus accès aux postes sensibles (paye, gestion, production, vidéo surveillance, téléphonie, ...)
    • blocage plus facile des attaques : ce sont des réseaux différents
    • séparation des sous réseaux ouverts ou sensibles : wifi, BYOD, tests et expérimentations, sauvegardes,
  • Technique : contrôle de flux :
    • permet de prioriser les flux (QoS - qualité de service) : vidéo vs données
    • utiliser un réseau de configuration des équipements séparé
    • segmenter pour "géolocaliser" les hôtes selon leur adresse IP et faciliter leur maintenance, réduire le nombre d'adresses par LAN
    • Sûreté : les pannes sont limitées au réseau concerné et pas de diffusion ; par exemple en cas de perte du DHCP, du DNS local, ...
    • Sûreté : facilite la reprise d'activité après incident et la mise en oeuvre de techniques de maintient de la continuité d'activité en cas d'incident.

Vocabulaire :

  • Sûreté vs sécurité :
    • sûreté = interne, panne, matérielle, logicielle, configuration, erreurs, défaut de formation,
    • sécurité = externe, attaque, malveillance, intrusion, vol, défaut de veille.
  • Reprise et continuité :
    • Plane de Reprise d'activité (PRA) = processus de retour à l'activité normale ou nominale après interruption,
    • Plan de Continuité d'Activité (PCA) = moyens engagés pour éviter l'interruption.

Principes du VLAN

Créer un VLAN consiste à affecter chaque ports d'un switch à un vlan particulier.

Soit un switch entouré de ses hôtes

Réseaux virtuels

On associe chaque port du switchs à un VLAN (ou pas)

Ce découpage se fait en affectant un nom de réseau virtuel à chaque port.
Réseaux virtuels

Et voilà, les VLAN sont créés

Réseaux virtuels
Tadaaaaa !

Seuls les ports ayant un même nom de réseau virtuel peuvent encore communiquer librement ensemble.

La communication inter-réseau ne peut plus se faire sans l'aide d'un routeur.
Celui-ci permettra en plus de mettre en place un filtrage entre les réseaux connectés.

Réseaux virtuels Réseaux virtuels

Remarques

La notion de VLAN est indépendante des adresses IP

En effet, les VLAN concernent (presque) uniquement les ports des switch.
Les hôtes ne connaissent pas la notion de VLAN et sont adressés comme d'habitude : IP/masque et passerelle. C'est tout !

Les switchs ont une table d'association Port/VLAN

Bien sûr, sinon, comment faire ?
Exemple :

Port
Port 00 01 02 03 04 05 06 07 08 09 10 11
VLAN 100 100 200 200 01 300 300 300 01 01 100 01

Notes :

  • L'affectation n'a pas besoin d'être contiguë.
  • Les ports sont toujours associés à un VLAN. Par défaut, le VLAN est le 1.

Un switch avec VLAN peut aussi subir des attaques, par exemple une inondation MAC (en. mac flooding) et devenir un HUB qui diffuse à tous les ports. Alors, si le CPU du switch est saturé, les VLAN tombent et l'écoute par un pirate devient possible.
Voir l'article suivant : https://www.frameip.com/attaque-ethernet-vlan

On peut numéroter les VLANs de 1 à 4094

Oui et le VLAN par défaut est le numéro 1. Cependant, on distingue les types de VLAN suivants :

  • standard de 1 à 1001 avec le VLAN 1 comme vlan par défaut, utilisables sans restriction,
  • réservé de 1002 à 1005 : liaison, voix, gestion et sécurité, voir plus loin,
  • étendu de 1006 à 4094 dont la plage de 4064 à 4094 est aussi à usage réservé, voir plus loin,
  • le numéro 4095 est utilisé par le système pour transférer des paquets à l'intérieur de l'équipement.

VLAN réservés

Les VLANs réservés sont utilisés pour le contrôle interne d'un commutateur ou pour transmettre les données de certaines fonctionnalités propres au switch.

  • vlan 1002 : utilisé pour le trafic de liaison entre les commutateurs,
  • vlan 1003 : utilisé pour le trafic voix,
  • vlan 1004 : utilisé pour le trafic de liaison des protocoles de gestion,
  • vlan 1005 : utilisé pour le trafic de liaison de la sécurité.

VLAN étendus

Les VLANs étendus ne sont disponibles que sur les switchs qui prennent en charge le protocole VTPv3 (VLAN Trunking Protocol)
Parmi les réseau étendus, par défaut, la plage de VLANs de 4064 à 4094 est aussi réservée pour les usages suivants :

  • de 4064 à 4071 mise en miroir des ports
  • d'autres VLAN réservés sont utilisés pour l'extension de fonction dans les versions ultérieures.

Les interfaces de couche 3 sont disponibles sur les commutateurs CE (switch de niveaux 3, vus plus loin ou l'an prochain) et utilisent des VLAN réservés pour le transfert de paquets.
Selon la marque des commutateurs, l'usage de ces vlans peut différer.

Et la segmentation dans tout ça ?

Comme on a plusieurs réseaux (virtuels) dans notre organisation, on peut exploiter la segmentation pour affecter un sous réseau à chaque vlan différent.

  • Est-ce utile ?
  • Oui, très. Mais on peut aussi utiliser des adresses totalement différentes.

C'est ainsi que la DMZ, le réseau de vidéo surveillance et le LAN peuvent être sur un meê switch avec des vlans et des adresses différents.

  • Est-ce prudent ?
  • en fait, la DMZ sera, dans la mesure du possible, toujours sur un switch à part car elle est plus suceptible d'être attaquée

La segmentation est le principal outil utilisé pour diviser un réseau, surtout si la politique de l'entreprise est de conserver une IP globale classique ou limiter les adresses possibles pour se connecter au réseau.

Stratégies de VLAN et d'adressage

On utilise des adresses de réseaux différents pour ...

  • séparer les zones ouvertes ou publiques (DMZ, Wifi, espace d'accueil) des zones privées (LAN, labo de recherche, service de comptabilité, etc. ).
  • séparer les zones sensibles à sécurité renforcées ou les zones techniques à usage limité des LAN communs

Ceci pour éviter des intrusions ou perturbations depuis ou vers ces zones.

Exemples de zones :

Zone Accès Sécurité Zone Accès Sécurité
LAN Privé normale DMZ Publique
Comptabilité Privé normale Téléphonie Privé renforcée et priorité des flux
Production Privé normale Accès Wifi publique Publique renforcée
Labo de recherche Privé renforcée Vidéo surveillance Privé renforcée

  • Les zones publiques et à sécurité renforcées ont toujours un adressage privé différent des LANs,
  • Les zones privées, à sécurité normale ont souvent un adressage privé en segmentation d'un LAN générique,
  • Les LANs ont souvent un adressage en 192.168 ou 172.16.

Personnellement, je préfère me mettre en 172 ou 10 dans le LAN et garder les 192.168 pour les adresses publique ou accessibles en wifi afin de na pas trop faciliter la vie des pirates ;)

Architectures et configuration

Si les VLANs sont étanches ? alors Comment communiquer ?

  • Avec un routeur, Pardi !!
  • heu ?
  • Dis, t'es riche ?
  • heu ?
  • Ben ouais, ton routeur, il aura 1 ou deux ports pour le LAN ?
  • deux ! (yess).
  • Hmm ... En fait, c'est pas grave car même si il y a plusieurs ports, on n'en aura jamais assez pour tous les VLANs.

Donc on va voir la théorie de config des routeurs à 2 ports et tout de suite passer à la config des interfaces virtuelles.

Configuration des switchs

Port d'accès vers un hôte

Le port est affecté à un et un seul VLAN.

Démarche

Port d'accès d'un hôte (port normal vers un hôte) :

  1. passer en mode configuration
  2. déclarer et nommer les VLANs
  3. configurer chaque interface d'accès nécessaire

  • passer l'interface en mode accès (c'est la mode par défaut)
  • l'affecter au VLAN désiré.

Répéter le point 3 pour chaque interface de VLAN

Fini

Commandes
[cisco]
switch0> enable 
switch0# configure terminal
switch0<config># vlan 100
switch0<config-vlan># name Administration
switch0<config-vlan># exit
switch0<config># interface fa0/1
switch0<config-if># switchport mode access
switch0<config-if># switchport access vlan 100
switch0<config-if># exit
switch0<config># // recommencer la config de chaque interface 

Note : Il est possible d'utiliser une plage (range) pour configurer plusieurs interfaces simultanément :

[cisco]
switch0<config># interface range fa0/1 - 5 // interfaces de fa0/1 à fa0/5
Contrôle de la configuration

Afficher les vlans et les interfaces associées :

[cisco]
switch0#sh vlan
VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active    Fa0/2, Fa0/3, Fa0/4
                                                Fa0/5, Fa0/6, Fa0/7, Fa0/8
                                                Fa0/9, Fa0/10, Fa0/11, Fa0/12
                                                Fa0/13, Fa0/14, Fa0/15, Fa0/16
                                                Fa0/17, Fa0/18, Fa0/19, Fa0/20
                                                Fa0/21, Fa0/22, Fa0/24, Gig0/1
                                                Gig0/2
100  Administration                   active    Fa0/1
1002 fddi-default                     active    
1003 token-ring-default               active    
1004 fddinet-default                  active    
1005 trnet-default                    active    
 
...

La commande affiche un tableau des VLANs, leur nom et la liste des interfaces en mode acces associées

Port multiplexé vers un autre switch

Le port laisse passer plusieurs VLANs, il est multiplexé.
Chez Cisco (et d'autres marques) on dit que le port est "trunké", c'est un tronc qui laisse passer les VLANs. Réseaux virtuels

Pour les reconnaître, on y ajoute une étiquette (un "tag").

La démarche sera la même vers un routeur à un seul port. Voir plus loin

Démarche

Port d'accès d'un hôte (port normal vers un hôte) :

  1. passer en mode configuration du switch. Les VLANS ont déjà été déclarés précédemment.
  2. configurer chaque interface nécessaire

  • passer en mode trunk puis
  • autoriser les VLANs concernés.

Commandes

switchport mode trunk switchport trunk allowed vlan 10, 20, 30, 500 no shutdown exit

[cisco]
switch0<config># interface gi0/1
switch0<config-if># switchport mode trunk
switch0<config-if># switchport trunk allowed vlan 100,200,300
switch0<config-if># exit
switch0<config>#

Contrôle de la configuration

Afficher les vlans et les interfaces associées :

[cisco]
switch0#sh int trunk
Port        Mode         Encapsulation  Status        Native vlan
Fa0/23      on           802.1q         trunking      1
 
Port        Vlans allowed on trunk
Fa0/23      1,123
 
Port        Vlans allowed and active in management domain
Fa0/23      1,123
 
Port        Vlans in spanning tree forwarding state and not pruned
Fa0/23      none

La commande affiche un tableau des VLANs, leur nom et la liste des interfaces en mode acces associées

Bon. À part le fait d'apprendre les commandes, elles ne présentent pas de grandes difficultés.
Ce qui est casse-pied c'est la répétitivité des commandes. Avec un peu d'expérience, il vous sera possible d'utiliser les abréviations des commandes et la touche flèche-haut permet de rappeler certaines d'entre-elles.

Configuration des routeurs

L'avantage de l'étanchéité des VLANs (sécurité) est aussi un inconvénient : il faut un routeur.
Se présentent alors deux cas :

  • le routeur possède suffisamment d'interfaces physiques pour chaque VLAN (cas utopique).
  • le routeur ne possède qu'une seule interface physique (cas le plus courant).

Les interfaces sont donc reliées à un seul VLAN ou à de multiples VLANs

Une interface physique pour chaque VLAN

Pas de soucis, il suffit de donner une adresse IP dans le réseau connecté à chaque interface.
L'interface physique ignore la notion de VLAN, comme sur un hôte.

Démarche

  1. Passer en mode configuration
  2. Activer l'interface physique
  3. Configurer l'adresse IP et le masque de l'interface

Commandes

switchport mode trunk switchport trunk allowed vlan 10, 20, 30, 500 no shutdown exit

[cisco]
router1> en
router1># conf t
router1<config># interface gi0/0/0
router1<config-if># no shutdown
router1<config-if># ip address 192.168.0.1 255.255.255.0
router1<config-if># exit
router1<config>#

Et voilà.

Interface physique unique pour plusieurs VLANs

Là, on a un problème : on est connecté à un lien trunk qui multiplexe plusieurs VLANs.
Il n'est pas possible de déclarer un mode trunk pour le routeur, principalement car l'interface devrait posséder plusieurs adresses IP.
La solution est d'utiliser des interfaces virtuelles, configurées comme autant d'interfaces physiques indépendantes.

Numéroter les interfaces virtuelles : Souvent, les interfaces portent le même numéro que le VLAN concerné.
Cela vient des différences de configuration des VLAN selon les marques de matériels et donc du langage de configuration utilisé.
Mais ceci n'est pas obligatoire comme, je le fais ici.

Démarche

  1. Passer en mode configuration
  2. Activer l'interface physique, sans adresse IP
  3. Créer chaque interface virtuelle et

  • indiquer l'encapsulation du protocole 802.1Q pour un VLAN
  • configurer l'adresse IP et le masque dans ce VLAN.

Commandes

Exemple pour une interface virtuelle dans le VLAN 10 avec pour adresse d'interface 192.168.10.1/24

[cisco]
// interface physique, pas d'adresse IP
router1<config># interface gi0/0/1
router1<config-if># no shutdown
router1<config-if># exit
 
// interface vitruelle n° 1 pour le VLAN 10
router1<config># interface gi0/0/0.1
router1<config-if># encapsulation dot1q 10
router1<config-if># ip address 192.168.10.1 255.255.255.0
router1<config-if># exit
router1<config>#

Répéter la configuration de chaque interface virtuelle pour chaque VLAN.

contrôler la configuration

A l'aide de commandes show, il est possible de voir la configuration des interfaces virtuelles. L'onglet de configuration graphique ne permet pas de la voir :'(.

[cisco]
Router#show interface Gi0/0/1.1 
// ou bien
Router#show interfaces // toutes les interfaces ; affichage un peu long.
GigabitEthernet0/0/1.1 is up, line protocol is down (disabled)
  Hardware is PQUICC_FEC, address is 00e0.8f48.5502 (bia 00e0.8f48.5502)
  Internet address is 192.168.10.1/24
  MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec, 
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation 802.1Q Virtual LAN, Vlan ID 10
  ARP type: ARPA, ARP Timeout 04:00:00, 
  Last clearing of "show interface" counters never

On y voit bien l'encapsulation 802.1Q avec le numéro du VLAN associé.

Autre commande très utile : afficher les routes du routeur.

[cisco]
Router#show ip route
// explications du type de route (extrait)
Codes: L - local, C - connected, S - static, R - RIP, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, ...
       * - candidate default, U - per-user static route, o - ODR
 
Gateway of last resort is 0.0.0.0 to network 0.0.0.0
 
     172.24.0.0/16 is variably subnetted, 2 subnets, 2 masks
C       172.24.0.0/24 is directly connected, GigabitEthernet0/0/0
L       172.24.0.1/32 is directly connected, GigabitEthernet0/0/0
 
     192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.10.0/24 is directly connected, GigabitEthernet0/0/1.1
L       192.168.10.1/32 is directly connected, GigabitEthernet0/0/1.1
 
     192.168.20.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.20.0/24 is directly connected, GigabitEthernet0/0/1.2
L       192.168.20.1/32 is directly connected, GigabitEthernet0/0/1.2
 
     192.168.30.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.30.0/24 is directly connected, GigabitEthernet0/0/1.3
L       192.168.30.1/32 is directly connected, GigabitEthernet0/0/1.3
 
S*   0.0.0.0/0 is directly connected, GigabitEthernet0/0/0
               [1/0] via 172.24.0.2

Dans cet affichage, on peut voir les routes mais pas les VLAN associés.
C'est une raison supplémentaire pour mettre le numéro du vlan aux interfaces virtuelles (/ex : vlan 123 => interface gi0/0/0.123).
Cependant, je ne sais pas si on a droit à un numéro supérieur à 999. Gn'ai pô testé.

Bon ! C'est fini

Et ensuite ?

Ensuite ? il ne reste plus qu'à tester la connectivité puis faire un tour du côté du routage.