Vlan

De BlaxWiki
Aller à la navigationAller à la recherche


Explication[modifier]

Doc[modifier]

Doc Vlan-fr

Doc Vlan-fr bis++(pris sur http://www.linux-france.org/prj/inetdoc/telechargement/routage.inter-vlan.pdf)

Commandes vlan Cisco

Introduction[modifier]

Le VLAN (Virtual Local Area Network) est une solution logiciel pour separer virtuellement des reseaux ips connectes sur des equipements physiques (switchs) connectes. Le vlan se situe
au niveau 2 du model OSI. Ainsi un equipement connecte sur un port sur le VLAN X ne pourra pas communiquer directement avec un equipement connecte sur un port (du meme switch ou d'un 
switch interconnecte au premier) sur un VLAN Y. Pour que les 2 equipements communiquent, il faut donc qu'un equipement serve de passerelle entre les deux VLANs. Cela augmente la 
securite dans certain domaine.
En articulier, un équipement sur un vlan X ne pourra pas se faire passer pour un equipement du VLAN Y (en changeant son IP) car il ne sera alors plus sur le bon VLAN et ne sera donc
pas accedé. Il peut aussi proteger les equipements en forcant le passage par une passerelle qui effectuera du filtrage. 

Il est interessant de déployer le protocol VTP (VLAN Trunking Protocol) est un protocol de gestion de vlan. Il permet, entre autres, de pouvoir gerer les vlans sur un meme reseau 
physique de maniere centralisee via des equipements client et server. Un equipement client ne pourra pas creer de vlan, les vlans, pour etre accessible sur un switch en vtp client, 
devront etre creer sur un switch du meme domaine VTP qui sera lui en server.
Attention, passer un switch d'un mode Client a Server peut entrainer une perte de VLAN sur le reseau physique et donc potentiellement une perte d'acces plus ou mois important. A moins 
de savoir exactement l'impact. Cette action ne doit pas etre realisee. 

Mise en pratique[modifier]

  • Les différents types de VLANs
Lorsque l'on définit les ports associés à chaque VLAN, il y a 3 modes : Untagged et Tagged et No :
 - Untagged : Le port est associé à un seul VLAN. C'est à dire que tout équipements raccordés à ce port fera partie du VLAN. Il n'autorisera en entrée et en sortie que des trames 
non-tagguées
 - Tagged : Signifie que les trames qui arrivent et sortent sur le port sont marquées par une en-tête 802.1q supplémentaire dans le champs Ethernet.
Un port peut être "tagged" sur plusieurs VLAN différents. Le port émet obligatoirement des trames tagguées 802.1Q. Il peut recevoir des trames 802.1Q aussi bien que des trames non 
taggués. L'avantage du mode Tagged est la possibilité d'avoir un serveur pouvant communiquer avec toutes les stations des VLANs sans que les VLANs ne puissent communiquer entre eux.

 - VLAN 1 : Le VLAN 1 est un VLAN spécial. Il est le VLAN par défaut de tous les ports, y compris les ports de "management". En plus, une série de protocoles de couche 2 comme CDP 
(Cisco Discovery Protocol), VTP (VLAN Trunk Protocol), PAgP (Port Aggregation Protocol) et DTP doivent impérativement transiter à travers ce VLAN spécifique. Pour ces deux raisons, le 
VLAN 1  ne peut jamais être supprimé, il existe d'office.

Si une trame tagguée arrive sur un port access, elle sera systématiquement rejetée. Si la trame tagguée avec le VLAN 20 arrive sur un port trunk, elle pourra être commutée que sur les 
ports access ayant pour pvid 20 ou alors sur les ports trunk en conservant la même encapsulation. 

On trouvera quatre types de VLANs :

    * VLAN par défaut (Default VLAN)
    * VLANs utilisateur (User VLAN)
    * VLAN de management (Management VLAN)
    * VLAN natif (Native VLAN)

VLAN par défaut
Par défaut, le VLAN 1 est celui qui assigné à tous les ports d'un commutateur tant qu'ils n'ont pas été configurés autrement. Cela signifie que tous les autres types de VLANs 
(utilisateur, management et natif) sont membres du VLAN 1.

VLAN utilisateur
On dira que ce type de VLAN est un VLAN "normal" dans le sens où il est celui qui a été configuré pour rendre une segmentation logique du commutateur dans le cadre de l'utilité des 
VLAN. La numérotation des VLANs est disponible sur 12 bits. Ceci dit, chaque modèle de switch aura ses limites en nombre total à créer et à gérer.


VLAN de management
Il s'agit d'un VLAN spécifique attribué au commutateur pour qu'il devienne accessible via une adresse IP (ICMP, Telnet, SNMP, HTTP). Dans les bonnes pratiques de configuration, on le 
distinguera du VLAN par défaut, d'un VLAN utilisateur ou du VLAN natif. Dans le cas d'une tempête de broadcast ou d'un soucis de convergence avec Spanning-Tree, l'administrateur 
devrait toujours avoir accès au matériel pour résoudre les problèmes. Aussi, une bonne raison de séparer le VLAN de management des autres tient au fait évident de séparer logiquement 
les périphériques "dignes de confiance" des autres. Il s'agit alors d'appliquer les règles de sécurité nécessaires afin d'éviter, par exemple, que des utilisateurs classiques accèdent 
au matériel. Qu'il existe ou non une interface physique appartenant au VLAN de management désigné, on joindra le commutateur par IP via une interface virtuelle de type VLANx. Tous 
ports "access" associés à ce VLANx répondent pour l'interface virtuelle VLANx. Il est recommandé de ne pas laisser le vlan de management sur le vlan 1 par défaut pour des raisons de 
sécurité.

VLAN natif
La notion de VLAN natif n'intervient que lorsque l'on configure un port Trunk. Quand un port est configuré en tant que tel, le switch "étiquette" la trame avec le numéro de VLAN 
approprié. Toutes les trames passant par un Trunk sont ainsi étiquettées/taggués sauf les trames appartenant au vlan natif (souvent le vlan 1, mais on peut tout à fait mettre un autre 
vlan en natif, au niveau du serveur derrière, l ip de ce vlan n aura pas à être taggué). Ce type de VLAN existe pour assurer une inter-opérabilté avec du trafic ne supportant pas le 
"tagging". Aussi, les protocoles de contrôles tels que CDP, VTP, PAgP et DTP sont toujours transmis par le VLAN1. Le fait de changer le VLAN natif va faire en sorte que ce traffic 
sera alors "étiquetté" VLAN 1, ce qui ne pose aucun problème. Enfin, on évitera d'utiliser le VLAN 1 comme VLAN utilisateur ou de management. Sur le routeur, on définira malgré tout 
le VLAN natif (VLAN 1, par défaut).

Lorsqu'un port est en trunk il faut toujours laisser le vlan natif sur 1, sinon on ne pourra pas joindre le serveur derriere (qui a une ip sur un autre vlan que le vlan 1) et sur switch on aura ce message d'erreur : Oct 23 16:59:10 2012 Oct 23 16:59:09 CEST +02:00 %SYS-4-P2_WARN: 1/Tag 406 on packet from 90:b1:1c:06:c3:76 port 2/23, but port's native vlan is 221

Sur un trunk, le vlan natif n'est pas taggué, et les requetes non taggués arrivant sur le port sont dans ce vlan. Un port ne peut avoir qu'un seul vlan untag. Si on veut un port en mode trunk avec plusieur vlan il faut tagger (vlan 10 tagged 7, vlan 12 tagged 7 : le port 7 est en trunk et accepte les vlan 10 & 12). Sur un port en trunk, le native vlan est toujours 1. Dans une config de IOS, on pourra avoir un "switchport access vlan 327" sur un port en trunk : le vlan 327 sera le native vlan, pour resumer dans un port en trunk c'est le vlan a utiliser si le paquet n'est pas taggue

  • Association des vlans
On peut associer les vlans par :
 - Port : C'est le mode d'association par défaut. L'association des trames à un VLAN se fait en fonction du PVID du port Access des matériels sur lesquels sont branchées les stations. 
Cette solution permet d'affecter précisément un VLAN en fonction du port sur lequel est branché une station, mais cela nécessite de reconfigurer le port si on bouge la station
Un pirate ne pourra donc avoir accès à un VLAN spécifique au niveau 2 du modèle OSI seulement si il se branche sur un port ayant le PVID correspondant au VLAN visé.

 - Adresse MAC: Ce mode d'association est situé au niveau de la couche 2 du modèle OSI (couche liaison). L'association à un VLAN s'effectue en fonction de tables d'adresse MAC 
configurées sur les commutateurs ou routeurs pour chaque VLAN. Ainsi la trame sera marquée en fonction de l'adresse MAC source de la trame. Si une adresse MAC n'est pas déclarée elle 
est selon les matériels et leur configuration soit associée au VLAN correspondant au PVID du port d'entrée, soit associée à un VLAN par défaut, soit refusée. Ce mode d'affectation 
permet d'avoir une gestion plus modulable et centralisée de l'affectation des VLAN. Cependant l'architecture est sensible au spooffing MAC.

 - Protocole : Les trames sont associées aux différents VLANs en fonction du protocole de niveau 3 utilisé pour les transmettre. Cette fonctionnalité peut être utile si l'on désire 
effectuer une différenciation de service 802.1p en fonction du protocole de niveau 3. Cependant elle est très peu utilisée dans des contextes d'entreprise. De plus la désencapsulation 
des paquets entraîne une lourdeur de traitement et donc efficacité moindre.

 - IP : Les trames sont associées en fonction du sous réseau IP auquel appartient l'adresse IP source. Cette solution permet une gestion centralisée de l'affectation des VLANs. La 
désencapsulation des paquets entraîne une lourdeur de traitement et donc efficacité moindre que la gestion par adresse MAC ou par port. Par ailleurs elle est sensible aux attaques par 
spooffing IP. Elle est du fait de ses défauts peu employée dans les entreprises. 

Nommage[modifier]

Le nommage du vlan a des contraintes lies aux switchs. Il ne peut donc contenir d'espace. Pour le moment, il a ete defini de le nommer ainsi : CLIENT_:_USAGE. Cela laisse le choix et permet de savoir rapidement a qui appartient le subnet (il est recommande de regarder le nom des autres vlan pour essayer d'uniformiser au mieux "l'usage"). Dans l'ao, un tag supplementaire a ete recemment mis en place et permet de recuperer rapidement des informations sur le type de reseau :

   PV pour Prive
   PB pour Public
   ST Pour Storage
   RPD pour Reseau Physique Dedie (sur un reseau physique different, accede via un routeur et/ou firewall)
   RT pour route
   NR pour Non route
   DIR, Reseau non switche (interconnexion direct entre deux equipements, ie 2 firewall pour du HA) 

Ainsi PV_NR indique que le reseau est sur notre prive, mais n'est pas route. RPD_RT permet de savoir que le reseau est sur une plateforme physiquement separe mais est route chez nous, en prive ou en public (impossible de definir le subnet chez nous alors). Un reseau public route sera aussi accessible aux equipements prives ayant acces a internet. Un reseau prive route ne sera pas accessible aux equipements publics sans ip prives.

  • Prive
Chaque subnet doit se voir attribuer un VLAN unique. Il ne doit pas etre utilise sur un autre reseau prive (route ou non). Il peut cependant etre utilise sur des reseaux qui ne sont 
pas raccorde au prive (public, storage, chez le client...). Le vlan doit etre cree sur prive-r33-01 pour qu'il soit diffuser a tout le reseau R33. Le vlan devra etre cree 
individuellement/manuellement sur les prive-r50 si il doit exister en R50. Au depart du client, le subnet devra etre supprime sur les memes switchs.
  • Public
Tout comme le prive, chaque subnet public doit se voir attribuer un VLAN unique. Il ne doit pas deja etre utilise (localement ou sur un autre site). 
  • Storage

Ici, pas de probleme de VLAN unique. Il n'y a qu'un seul reseau storage deploye