Reseaux - Guide Complet
- 1. Fondamentaux du reseau
- 2. Adressage IP (IPv4)
- 3. Sous-reseaux (Subnetting)
- 4. Sur-reseaux (Supernetting / CIDR)
- 5. Protocoles essentiels
- 6. VLANs
- 7. Trunk (liens trunk 802.1Q)
- 8. Spanning Tree Protocol (STP)
- 9. DMZ (Zone Demilitarisee)
- 10. Cablage reseau
- 11. Switches manageables
- 12. Routage
- 13. Wi-Fi (reseaux sans fil)
- 14. IPv6
- 15. Securite reseau
- 16. Outils de diagnostic
- 17. Depannage reseau
1. Fondamentaux du reseau
1.1 Le modele OSI (Open Systems Interconnection)
Le modele OSI est un modele de reference a 7 couches qui decrit comment les donnees transitent d'une application sur un ordinateur a une application sur un autre ordinateur, en passant par un reseau physique. Chaque couche a un role specifique et communique avec les couches adjacentes.
| Couche | Nom | Role | Protocoles / Technologies | PDU (Unite de donnees) |
|---|---|---|---|---|
| 7 | Application | Interface entre l'utilisateur et le reseau. Fournit les services reseau aux applications (messagerie, transfert de fichiers, navigation web). | HTTP, HTTPS, FTP, SMTP, POP3, IMAP, DNS, DHCP, SNMP, SSH, Telnet, LDAP, NTP | Donnees |
| 6 | Presentation | Traduction, chiffrement et compression des donnees. Assure que les donnees envoyees par la couche application d'un systeme sont lisibles par la couche application d'un autre systeme. | SSL/TLS, JPEG, PNG, GIF, ASCII, EBCDIC, MPEG, MIDI | Donnees |
| 5 | Session | Etablissement, gestion et fermeture des sessions entre applications. Gere le dialogue (simplex, half-duplex, full-duplex) et la synchronisation. | NetBIOS, RPC, PPTP, L2TP, SCP | Donnees |
| 4 | Transport | Transfert fiable ou non fiable de bout en bout. Segmentation, controle de flux, correction d'erreurs, multiplexage via les ports. | TCP, UDP, SCTP | Segment (TCP) / Datagramme (UDP) |
| 3 | Reseau | Adressage logique (IP) et routage des paquets entre reseaux differents. Determine le meilleur chemin pour acheminer les donnees. | IP (IPv4/IPv6), ICMP, IGMP, OSPF, BGP, RIP, ARP*, IPSec | Paquet |
| 2 | Liaison de donnees | Transfert fiable de trames entre deux noeuds directement connectes. Adressage physique (MAC), detection d'erreurs (CRC), controle d'acces au media. | Ethernet (802.3), Wi-Fi (802.11), PPP, HDLC, Frame Relay, STP, LLDP, ARP* | Trame |
| 1 | Physique | Transmission des bits bruts sur le support physique. Definition des caracteristiques electriques, mecaniques, optiques et de la topologie physique. | Ethernet physique, USB, DSL, ISDN, Bluetooth, RS-232, fibre optique | Bit |
1.2 Le modele TCP/IP (4 couches)
Le modele TCP/IP est le modele pratique utilise sur Internet. Il simplifie le modele OSI en 4 couches. C'est le modele reel sur lequel repose l'ensemble des communications modernes.
| Couche TCP/IP | Equivalent OSI | Role | Protocoles principaux |
|---|---|---|---|
| 4 - Application | Couches 5, 6, 7 | Services reseau pour les applications utilisateur | HTTP, FTP, SMTP, DNS, DHCP, SSH, SNMP, Telnet |
| 3 - Transport | Couche 4 | Communication de bout en bout, fiabilite | TCP, UDP |
| 2 - Internet | Couche 3 | Adressage logique et routage | IP (v4/v6), ICMP, ARP, IGMP |
| 1 - Acces reseau | Couches 1, 2 | Acces physique au media et transmission des trames | Ethernet, Wi-Fi, PPP, ARP |
1.3 Comparaison OSI vs TCP/IP
| Critere | Modele OSI | Modele TCP/IP |
|---|---|---|
| Nombre de couches | 7 | 4 |
| Type | Modele theorique de reference | Modele pratique et operationnel |
| Developpement | ISO (International Organization for Standardization) | Departement de la Defense americain (DoD) |
| Approche | Generique, independant des protocoles | Base sur des protocoles specifiques |
| Couche Session/Presentation | Couches separees (5 et 6) | Integrees dans la couche Application |
| Utilisation | Enseignement, conception | Implementation reelle (Internet) |
| Fiabilite de la livraison | La couche transport garantit la livraison | Ne garantit pas la livraison (depend du protocole TCP ou UDP) |
1.4 Encapsulation des donnees
L'encapsulation est le processus par lequel chaque couche du modele OSI ajoute son propre en-tete (et parfois une remorque) aux donnees recues de la couche superieure. Lors de la reception, le processus inverse (desencapsulation) se produit.
Emission (encapsulation) Reception (desencapsulation)
======================== ============================
Couche 7 (Application) Couche 7 (Application)
| [Donnees] ^ [Donnees]
v |
Couche 4 (Transport) Couche 4 (Transport)
| [En-tete TCP/UDP | Donnees] ^ [En-tete TCP/UDP | Donnees]
v |
Couche 3 (Reseau) Couche 3 (Reseau)
| [En-tete IP | Segment] ^ [En-tete IP | Segment]
v |
Couche 2 (Liaison) Couche 2 (Liaison)
| [En-tete Eth | Paquet | FCS] ^ [En-tete Eth | Paquet | FCS]
v |
Couche 1 (Physique) Couche 1 (Physique)
| 0101110010110... ^ 0101110010110...
v |
========== SUPPORT PHYSIQUE (cable, fibre, ondes) ==========
1.5 Equipements par couche
| Couche OSI | Equipements | Fonctionnement |
|---|---|---|
| Couche 1 - Physique | Hub, repeteur, convertisseur de media | Regenere le signal, diffuse sur tous les ports |
| Couche 2 - Liaison | Switch (commutateur), pont (bridge), point d'acces Wi-Fi | Utilise les adresses MAC pour commuter les trames |
| Couche 3 - Reseau | Routeur, switch L3, firewall | Utilise les adresses IP pour router les paquets entre reseaux |
| Couches 4-7 | Firewall applicatif (WAF), load balancer, proxy | Analyse le contenu applicatif, equilibrage de charge |
2. Adressage IP (IPv4)
2.1 Structure d'une adresse IPv4
Une adresse IPv4 est composee de 32 bits (4 octets), generalement representee en notation decimale pointee. Chaque octet est separe par un point et peut prendre une valeur de 0 a 255.
Adresse IP : 192 . 168 . 1 . 10
Binaire : 11000000.10101000.00000001.00001010
Octets : Octet 1 Octet 2 Octet 3 Octet 4
|-- Partie reseau --|-- Partie hote --|
(definie par le masque de sous-reseau)
L'adresse IP est toujours accompagnee d'un masque de sous-reseau qui determine quelle portion de l'adresse identifie le reseau et quelle portion identifie l'hote sur ce reseau.
Adresse IP : 192.168.1.10
Masque : 255.255.255.0 (ou /24 en notation CIDR)
Binaire IP : 11000000.10101000.00000001.00001010
Binaire Mask: 11111111.11111111.11111111.00000000
|-------- Reseau ---------|-- Hote -|
Adresse reseau (AND logique) : 192.168.1.0
Adresse broadcast : 192.168.1.255
Plage hotes utilisables : 192.168.1.1 a 192.168.1.254
Nombre d'hotes : 254 (2^8 - 2)
2.2 Classes d'adresses IPv4
Historiquement, les adresses IPv4 etaient reparties en 5 classes. Bien que le classful addressing soit obsolete (remplace par CIDR), il reste important de connaitre ces classes pour comprendre les reseaux.
| Classe | Premier octet | Plage d'adresses | Masque par defaut | Bits reseau | Nb reseaux | Nb hotes/reseau | Usage |
|---|---|---|---|---|---|---|---|
| A | 0xxxxxxx (1-126) | 1.0.0.0 - 126.255.255.255 | 255.0.0.0 (/8) | 8 | 126 | 16 777 214 | Grands reseaux |
| B | 10xxxxxx (128-191) | 128.0.0.0 - 191.255.255.255 | 255.255.0.0 (/16) | 16 | 16 384 | 65 534 | Reseaux moyens |
| C | 110xxxxx (192-223) | 192.0.0.0 - 223.255.255.255 | 255.255.255.0 (/24) | 24 | 2 097 152 | 254 | Petits reseaux |
| D | 1110xxxx (224-239) | 224.0.0.0 - 239.255.255.255 | N/A | N/A | N/A | N/A | Multicast |
| E | 1111xxxx (240-255) | 240.0.0.0 - 255.255.255.255 | N/A | N/A | N/A | N/A | Reserve (experimental) |
2.3 Adresses privees (RFC 1918)
Ces plages sont reservees pour un usage interne et ne sont pas routables sur Internet. Un mecanisme de NAT est necessaire pour acceder a Internet depuis ces adresses.
| Classe | Plage privee | Masque | Nombre d'adresses | Usage typique |
|---|---|---|---|---|
| A | 10.0.0.0 - 10.255.255.255 | 255.0.0.0 (/8) | 16 777 216 | Grandes entreprises, datacenters |
| B | 172.16.0.0 - 172.31.255.255 | 255.240.0.0 (/12) | 1 048 576 | Entreprises moyennes |
| C | 192.168.0.0 - 192.168.255.255 | 255.255.0.0 (/16) | 65 536 | Reseaux domestiques, PME |
2.4 Adresses speciales
| Adresse / Plage | Nom | Description |
|---|---|---|
| 0.0.0.0 | Adresse par defaut | Designe "ce reseau" ou "toute adresse". Utilisee par DHCP avant attribution. |
| 127.0.0.0/8 | Loopback | Boucle locale. 127.0.0.1 est l'adresse standard de test local (localhost). |
| 169.254.0.0/16 | APIPA (Link-local) | Auto-attribuee quand aucun serveur DHCP n'est disponible. |
| 255.255.255.255 | Broadcast limite | Broadcast envoye a tous les hotes du reseau local. Non route. |
| x.x.x.0 (partie hote = 0) | Adresse de reseau | Identifie le reseau lui-meme, non attribuable a un hote. |
| x.x.x.255 (partie hote = tout a 1) | Broadcast dirige | Broadcast vers tous les hotes d'un sous-reseau specifique. |
| 100.64.0.0/10 | Shared Address Space | Reserve pour le CGN (Carrier-Grade NAT) entre FAI et abonnes. |
| 192.0.2.0/24 | TEST-NET-1 | Reserve pour la documentation et les exemples. |
| 198.51.100.0/24 | TEST-NET-2 | Reserve pour la documentation et les exemples. |
| 203.0.113.0/24 | TEST-NET-3 | Reserve pour la documentation et les exemples. |
2.5 Notation CIDR (Classless Inter-Domain Routing)
La notation CIDR remplace le systeme de classes. Elle utilise un suffixe /n apres l'adresse IP, ou n represente le nombre de bits a 1 dans le masque de sous-reseau.
Exemples de notation CIDR :
---------------------------
192.168.1.0/24 = masque 255.255.255.0 (256 adresses, 254 hotes)
10.0.0.0/8 = masque 255.0.0.0 (16 777 216 adresses)
172.16.0.0/12 = masque 255.240.0.0 (1 048 576 adresses)
192.168.1.0/26 = masque 255.255.255.192 (64 adresses, 62 hotes)
10.10.10.0/30 = masque 255.255.255.252 (4 adresses, 2 hotes - liens point-a-point)
3. Sous-reseaux (Subnetting)
3.1 Pourquoi decouper en sous-reseaux ?
- Reduire la taille des domaines de broadcast : Un broadcast dans un reseau /24 (254 hotes) a moins d'impact que dans un /16 (65 534 hotes).
- Ameliorer la securite : Isoler des groupes de machines (serveurs, postes utilisateurs, imprimantes) dans des sous-reseaux distincts avec des regles de filtrage entre eux.
- Optimiser les performances : Moins de trafic broadcast = meilleur debit pour les applications.
- Organisation logique : Structurer le reseau par departement, etage, batiment, fonction.
- Economie d'adresses : Attribuer des blocs de taille adaptee au besoin reel (eviter le gaspillage).
3.2 Methode de calcul pas a pas
Voici la methode systematique pour decouper un reseau en sous-reseaux :
Etape 1 : Determiner le nombre de sous-reseaux necessaires ou le nombre d'hotes par sous-reseau.
Etape 2 : Calculer le nombre de bits a emprunter a la partie hote.
- Pour N sous-reseaux : emprunter n bits tels que 2^n ≥ N
- Pour H hotes par sous-reseau : garder h bits tels que 2^h - 2 ≥ H
Etape 3 : Construire le nouveau masque de sous-reseau.
Etape 4 : Calculer le pas (increment) = 2^(bits hote restants) = taille de chaque sous-reseau.
Etape 5 : Lister les sous-reseaux avec leurs adresses de reseau, premiere adresse utilisable, derniere adresse utilisable et broadcast.
3.3 Exemple pratique : Decouper 192.168.1.0/24 en 4 sous-reseaux
Reseau de depart : 192.168.1.0/24
Objectif : 4 sous-reseaux
Etape 1 : On a besoin de 4 sous-reseaux
Etape 2 : 2^n >= 4 => n = 2 (on emprunte 2 bits)
Etape 3 : Nouveau masque = /24 + 2 = /26
Masque = 255.255.255.192 (11111111.11111111.11111111.11000000)
Etape 4 : Pas = 2^(8-2) = 2^6 = 64
Etape 5 : Liste des sous-reseaux :
+-------------+------------------+------------------+-------------------+-----------+
| Sous-reseau | Adresse reseau | Premiere hote | Derniere hote | Broadcast |
+-------------+------------------+------------------+-------------------+-----------+
| SR 1 | 192.168.1.0/26 | 192.168.1.1 | 192.168.1.62 | 192.168.1.63 |
| SR 2 | 192.168.1.64/26 | 192.168.1.65 | 192.168.1.126 | 192.168.1.127 |
| SR 3 | 192.168.1.128/26 | 192.168.1.129 | 192.168.1.190 | 192.168.1.191 |
| SR 4 | 192.168.1.192/26 | 192.168.1.193 | 192.168.1.254 | 192.168.1.255 |
+-------------+------------------+------------------+-------------------+-----------+
Chaque sous-reseau : 64 adresses, 62 hotes utilisables
3.4 Table de reference CIDR (masques de /8 a /30)
| CIDR | Masque | Nombre d'adresses | Hotes utilisables | Usage typique |
|---|---|---|---|---|
| /8 | 255.0.0.0 | 16 777 216 | 16 777 214 | Classe A complete |
| /9 | 255.128.0.0 | 8 388 608 | 8 388 606 | Demi-classe A |
| /10 | 255.192.0.0 | 4 194 304 | 4 194 302 | Quart de classe A |
| /11 | 255.224.0.0 | 2 097 152 | 2 097 150 | |
| /12 | 255.240.0.0 | 1 048 576 | 1 048 574 | Plage privee 172.16.0.0 |
| /13 | 255.248.0.0 | 524 288 | 524 286 | |
| /14 | 255.252.0.0 | 262 144 | 262 142 | |
| /15 | 255.254.0.0 | 131 072 | 131 070 | |
| /16 | 255.255.0.0 | 65 536 | 65 534 | Classe B complete |
| /17 | 255.255.128.0 | 32 768 | 32 766 | |
| /18 | 255.255.192.0 | 16 384 | 16 382 | |
| /19 | 255.255.224.0 | 8 192 | 8 190 | |
| /20 | 255.255.240.0 | 4 096 | 4 094 | Sous-reseaux entreprise |
| /21 | 255.255.248.0 | 2 048 | 2 046 | |
| /22 | 255.255.252.0 | 1 024 | 1 022 | |
| /23 | 255.255.254.0 | 512 | 510 | |
| /24 | 255.255.255.0 | 256 | 254 | Classe C complete, LAN standard |
| /25 | 255.255.255.128 | 128 | 126 | Demi-classe C |
| /26 | 255.255.255.192 | 64 | 62 | Petit departement |
| /27 | 255.255.255.224 | 32 | 30 | Salle serveurs |
| /28 | 255.255.255.240 | 16 | 14 | Petit groupe, DMZ |
| /29 | 255.255.255.248 | 8 | 6 | Liens inter-routeurs |
| /30 | 255.255.255.252 | 4 | 2 | Liens point-a-point |
3.5 VLSM (Variable Length Subnet Masking)
Le VLSM permet d'utiliser des masques de taille differente dans un meme reseau, pour optimiser l'utilisation des adresses. On attribue des sous-reseaux de taille adaptee a chaque besoin.
Scenario : Reseau 192.168.10.0/24 a decouper pour :
- LAN Bureau : 100 hotes => besoin /25 (126 hotes)
- LAN Production : 50 hotes => besoin /26 (62 hotes)
- LAN Serveurs : 20 hotes => besoin /27 (30 hotes)
- Lien WAN 1 : 2 hotes => besoin /30 (2 hotes)
- Lien WAN 2 : 2 hotes => besoin /30 (2 hotes)
Methode : Toujours commencer par le plus grand besoin !
1. LAN Bureau (100 hotes) :
192.168.10.0/25 => 192.168.10.0 - 192.168.10.127 (126 hotes)
2. LAN Production (50 hotes) :
192.168.10.128/26 => 192.168.10.128 - 192.168.10.191 (62 hotes)
3. LAN Serveurs (20 hotes) :
192.168.10.192/27 => 192.168.10.192 - 192.168.10.223 (30 hotes)
4. Lien WAN 1 (2 hotes) :
192.168.10.224/30 => 192.168.10.224 - 192.168.10.227 (2 hotes)
5. Lien WAN 2 (2 hotes) :
192.168.10.228/30 => 192.168.10.228 - 192.168.10.231 (2 hotes)
Adresses restantes disponibles : 192.168.10.232 - 192.168.10.255 (pour extension future)
4. Sur-reseaux (Supernetting / CIDR)
4.1 Concept d'agregation de routes
Le supernetting (ou agregation de routes, ou summarization) est l'operation inverse du subnetting. Il consiste a regrouper plusieurs reseaux contigus en un seul bloc plus grand, afin de reduire la taille des tables de routage.
Avantages :
- Reduction de la taille des tables de routage
- Diminution de la consommation CPU/memoire des routeurs
- Acceleration des decisions de routage
- Meilleure stabilite (moins de mises a jour de routage)
4.2 Conditions pour agreger
- Les reseaux doivent etre contigus (adresses consecutives)
- Le nombre de reseaux a agreger doit etre une puissance de 2 (2, 4, 8, 16...)
- L'adresse de depart doit etre divisible par la taille du bloc agrege
- Le protocole de routage doit supporter le CIDR (OSPF, EIGRP, BGP - pas RIPv1)
4.3 Exemple pratique : agreger 4 reseaux /24 en un /22
Reseaux a agreger :
-------------------
192.168.4.0/24 => 11000000.10101000.00000100.00000000
192.168.5.0/24 => 11000000.10101000.00000101.00000000
192.168.6.0/24 => 11000000.10101000.00000110.00000000
192.168.7.0/24 => 11000000.10101000.00000111.00000000
Methode : trouver les bits communs (de gauche a droite)
-------
11000000.10101000.000001 | 00.00000000 (192.168.4.0)
11000000.10101000.000001 | 01.00000000 (192.168.5.0)
11000000.10101000.000001 | 10.00000000 (192.168.6.0)
11000000.10101000.000001 | 11.00000000 (192.168.7.0)
^
22 bits communs
Route agrege : 192.168.4.0/22
Masque : 255.255.252.0
Plage couverte : 192.168.4.0 - 192.168.7.255 (1024 adresses)
4.4 Impact sur la table de routage
AVANT agregation (4 entrees) :
+-----------------------+-----------------+-------------+
| Reseau destination | Masque | Passerelle |
+-----------------------+-----------------+-------------+
| 192.168.4.0 | 255.255.255.0 | 10.0.0.1 |
| 192.168.5.0 | 255.255.255.0 | 10.0.0.1 |
| 192.168.6.0 | 255.255.255.0 | 10.0.0.1 |
| 192.168.7.0 | 255.255.255.0 | 10.0.0.1 |
+-----------------------+-----------------+-------------+
APRES agregation (1 seule entree) :
+-----------------------+-----------------+-------------+
| Reseau destination | Masque | Passerelle |
+-----------------------+-----------------+-------------+
| 192.168.4.0 | 255.255.252.0 | 10.0.0.1 |
+-----------------------+-----------------+-------------+
4.5 Configuration de la route agregee
! Cisco IOS - Route statique resumee
ip route 192.168.4.0 255.255.252.0 10.0.0.1
! Cisco IOS - Agregation OSPF
router ospf 1
area 0 range 192.168.4.0 255.255.252.0
! Cisco IOS - Agregation EIGRP
router eigrp 100
ip summary-address eigrp 100 192.168.4.0 255.255.252.0
5. Protocoles essentiels
5.1 ARP (Address Resolution Protocol)
ARP permet de faire la correspondance entre une adresse IP (couche 3) et une adresse MAC (couche 2) dans un meme reseau local. Sans ARP, il serait impossible d'envoyer des trames Ethernet vers le bon destinataire.
Fonctionnement :
PC-A (192.168.1.10) veut communiquer avec PC-B (192.168.1.20)
PC-A ne connait pas l'adresse MAC de PC-B
1. PC-A envoie une requete ARP en BROADCAST (FF:FF:FF:FF:FF:FF) :
"Qui a l'adresse IP 192.168.1.20 ? Dites-le a 192.168.1.10 (MAC: AA:BB:CC:11:22:33)"
2. Tous les hotes du reseau recoivent la requete
Seul PC-B reconnait son adresse IP
3. PC-B repond en UNICAST a PC-A :
"192.168.1.20 est a l'adresse MAC DD:EE:FF:44:55:66"
4. PC-A stocke cette correspondance dans son CACHE ARP
(duree typique : 2-20 minutes selon l'OS)
Commandes utiles :
# Afficher le cache ARP
arp -a (Windows / Linux)
show arp (Cisco IOS)
# Vider le cache ARP
arp -d * (Windows, en admin)
ip -s neigh flush all (Linux)
clear arp-cache (Cisco IOS)
# Ajouter une entree statique
arp -s 192.168.1.20 DD-EE-FF-44-55-66 (Windows)
arp -s 192.168.1.20 DD:EE:FF:44:55:66 (Linux)
5.2 ICMP (Internet Control Message Protocol)
ICMP est utilise pour le diagnostic et le signalement d'erreurs dans les communications IP. Il fonctionne au niveau de la couche 3 (Reseau).
| Type | Code | Message | Description |
|---|---|---|---|
| 0 | 0 | Echo Reply | Reponse au ping |
| 3 | 0 | Destination Unreachable - Network | Reseau de destination inaccessible |
| 3 | 1 | Destination Unreachable - Host | Hote de destination inaccessible |
| 3 | 3 | Destination Unreachable - Port | Port de destination inaccessible |
| 3 | 4 | Fragmentation Needed | Fragmentation necessaire mais bit DF active |
| 5 | 0 | Redirect | Redirection vers une meilleure route |
| 8 | 0 | Echo Request | Requete ping |
| 11 | 0 | Time Exceeded - TTL | TTL expire en transit (utilise par traceroute) |
| 11 | 1 | Time Exceeded - Fragment | Temps de reassemblage depasse |
5.3 TCP vs UDP
| Caracteristique | TCP (Transmission Control Protocol) | UDP (User Datagram Protocol) |
|---|---|---|
| Connexion | Oriente connexion (3-way handshake) | Sans connexion |
| Fiabilite | Fiable (acquittements, retransmission) | Non fiable (best effort) |
| Ordre | Livraison ordonnee (numeros de sequence) | Pas de garantie d'ordre |
| Controle de flux | Oui (fenetre glissante) | Non |
| Controle de congestion | Oui (slow start, congestion avoidance) | Non |
| En-tete | 20-60 octets | 8 octets |
| Vitesse | Plus lent (overhead de fiabilite) | Plus rapide (overhead minimal) |
| Diffusion | Unicast uniquement | Unicast, broadcast, multicast |
| Cas d'usage | HTTP, FTP, SSH, SMTP, bases de donnees | DNS, DHCP, VoIP, streaming, jeux en ligne |
Le 3-way handshake TCP :
Client Serveur
| |
| ------- SYN (seq=x) ------> | 1. Le client demande une connexion
| |
| <-- SYN-ACK (seq=y,ack=x+1) | 2. Le serveur accepte et propose sa sequence
| |
| ------- ACK (ack=y+1) ----> | 3. Le client confirme : connexion etablie
| |
| <=== Echange de donnees ===> |
| |
| ------- FIN -------------> | 4. Fermeture (4-way handshake)
| <------ ACK -------------- |
| <------ FIN -------------- |
| ------- ACK -------------> |
5.4 NAT / PAT (Network Address Translation)
Le NAT permet de traduire des adresses IP privees en adresses IP publiques (et inversement), rendant possible l'acces a Internet depuis un reseau prive.
| Type de NAT | Description | Usage |
|---|---|---|
| NAT statique | Correspondance fixe 1:1 entre une IP privee et une IP publique | Serveurs accessibles depuis Internet (web, mail) |
| NAT dynamique | Correspondance dynamique N:N dans un pool d'adresses publiques | Pool d'adresses publiques partage |
| PAT (Port Address Translation) | Correspondance N:1 - plusieurs IP privees partagent une seule IP publique en utilisant des ports differents | Usage le plus courant (box Internet, routeurs d'entreprise) |
Exemple de PAT :
================
Reseau interne Routeur NAT Internet
192.168.1.10:50001 -----> 203.0.113.1:40001 -----> 93.184.216.34:443
192.168.1.11:50002 -----> 203.0.113.1:40002 -----> 93.184.216.34:443
192.168.1.12:50003 -----> 203.0.113.1:40003 -----> 93.184.216.34:80
Table NAT du routeur :
+-------------------+-------------------+---------------------+
| IP:Port interne | IP:Port externe | Destination |
+-------------------+-------------------+---------------------+
| 192.168.1.10:50001| 203.0.113.1:40001 | 93.184.216.34:443 |
| 192.168.1.11:50002| 203.0.113.1:40002 | 93.184.216.34:443 |
| 192.168.1.12:50003| 203.0.113.1:40003 | 93.184.216.34:80 |
+-------------------+-------------------+---------------------+
Configuration Cisco :
! NAT statique : mapper 192.168.1.100 vers 203.0.113.10
ip nat inside source static 192.168.1.100 203.0.113.10
! PAT (overload) : partager une seule IP publique
access-list 1 permit 192.168.1.0 0.0.0.255
ip nat inside source list 1 interface GigabitEthernet0/1 overload
! Definir les interfaces inside/outside
interface GigabitEthernet0/0
ip nat inside
interface GigabitEthernet0/1
ip nat outside
! Verification
show ip nat translations
show ip nat statistics
5.5 Table des ports courants
| Port | Protocole | Service | Description |
|---|---|---|---|
| 20 | TCP | FTP-Data | Transfert de donnees FTP |
| 21 | TCP | FTP-Control | Commandes de controle FTP |
| 22 | TCP | SSH | Secure Shell - acces distant securise |
| 23 | TCP | Telnet | Acces distant non securise (obsolete) |
| 25 | TCP | SMTP | Envoi de courrier electronique |
| 53 | TCP/UDP | DNS | Resolution de noms de domaine |
| 67 | UDP | DHCP Server | Attribution automatique d'adresses IP (serveur) |
| 68 | UDP | DHCP Client | Attribution automatique d'adresses IP (client) |
| 69 | UDP | TFTP | Transfert de fichiers simplifie |
| 80 | TCP | HTTP | Navigation web non securisee |
| 110 | TCP | POP3 | Reception de courrier (telechargement) |
| 123 | UDP | NTP | Synchronisation horaire |
| 143 | TCP | IMAP | Reception de courrier (synchronisation) |
| 161 | UDP | SNMP | Supervision reseau (requetes) |
| 162 | UDP | SNMP Trap | Supervision reseau (alertes) |
| 389 | TCP | LDAP | Annuaire (Active Directory) |
| 443 | TCP | HTTPS | Navigation web securisee (TLS) |
| 445 | TCP | SMB | Partage de fichiers Windows |
| 465 | TCP | SMTPS | SMTP securise (SSL/TLS implicite) |
| 514 | UDP | Syslog | Journalisation centralisee |
| 587 | TCP | SMTP Submission | Envoi de courrier securise (STARTTLS) |
| 636 | TCP | LDAPS | LDAP securise (SSL/TLS) |
| 993 | TCP | IMAPS | IMAP securise (SSL/TLS) |
| 995 | TCP | POP3S | POP3 securise (SSL/TLS) |
| 1433 | TCP | MSSQL | Microsoft SQL Server |
| 1521 | TCP | Oracle DB | Oracle Database Listener |
| 3306 | TCP | MySQL/MariaDB | Bases de donnees MySQL et MariaDB |
| 3389 | TCP | RDP | Bureau a distance Windows |
| 5432 | TCP | PostgreSQL | Base de donnees PostgreSQL |
| 5900 | TCP | VNC | Bureau a distance VNC |
| 8080 | TCP | HTTP Proxy | Proxy web / serveur alternatif |
| 8443 | TCP | HTTPS Alt | HTTPS alternatif (Tomcat, etc.) |
| 10000 | TCP | Webmin | Administration web de serveurs Linux |
- 0 - 1023 : Ports bien connus (Well-Known Ports) - reserves aux services systeme
- 1024 - 49151 : Ports enregistres (Registered Ports) - utilises par des applications specifiques
- 49152 - 65535 : Ports dynamiques/prives (Ephemeral Ports) - attribues temporairement aux clients
6. VLANs (Virtual Local Area Networks)
6.1 Concept
Un VLAN est un reseau local virtuel qui permet de segmenter logiquement un reseau physique en plusieurs domaines de broadcast independants. Les machines dans des VLANs differents ne peuvent pas communiquer directement entre elles sans un routeur ou un switch de couche 3.
SANS VLAN : Tous les postes dans le meme domaine de broadcast
=====================================================================
[Switch]
/ | | | \
PC1 PC2 PC3 PC4 PC5 <-- Tous recoivent les broadcasts de tous
AVEC VLANs : Domaines de broadcast separes
=====================================================================
[Switch]
/ | | \ \
PC1 PC2 PC3 PC4 PC5
VLAN 10 | VLAN 20
(Compta) | (RH)
|
VLAN 10
(Compta)
PC1 et PC3 sont dans le VLAN 10 : ils communiquent entre eux
PC4 et PC5 sont dans le VLAN 20 : ils communiquent entre eux
PC1 ne peut PAS communiquer avec PC4 sans passer par un routeur
Avantages des VLANs :
- Securite : Isolation du trafic entre departements ou fonctions
- Performance : Reduction de la taille des domaines de broadcast
- Flexibilite : Un poste peut changer de VLAN sans etre deplace physiquement
- Economie : Un seul switch physique peut heberger plusieurs reseaux logiques
- Administration : Gestion centralisee de la segmentation
6.2 Types de VLANs
| Type | Description | Usage |
|---|---|---|
| VLAN de donnees | Transporte le trafic utilisateur normal | Trafic des postes de travail (VLAN 10, 20, 30...) |
| VLAN natif | VLAN par defaut sur les liens trunk, trafic non tagge | VLAN 1 par defaut (recommande de changer) |
| VLAN de gestion | Utilisee pour l'administration des equipements reseau | Acces SSH/HTTPS aux switches et routeurs |
| VLAN voix | Dedie au trafic telephonie IP avec QoS prioritaire | Telephones IP (souvent VLAN auxiliaire sur un port) |
| VLAN par defaut | VLAN 1 - tous les ports y sont affectes par defaut | A eviter pour le trafic de production (securite) |
6.3 Configuration VLAN - Cisco IOS
! Creer les VLANs
Switch(config)# vlan 10
Switch(config-vlan)# name COMPTABILITE
Switch(config-vlan)# exit
Switch(config)# vlan 20
Switch(config-vlan)# name RESSOURCES_HUMAINES
Switch(config-vlan)# exit
Switch(config)# vlan 30
Switch(config-vlan)# name SERVEURS
Switch(config-vlan)# exit
Switch(config)# vlan 99
Switch(config-vlan)# name GESTION
Switch(config-vlan)# exit
! Affecter des ports en mode access
Switch(config)# interface range GigabitEthernet0/1-10
Switch(config-if-range)# switchport mode access
Switch(config-if-range)# switchport access vlan 10
Switch(config-if-range)# exit
Switch(config)# interface range GigabitEthernet0/11-20
Switch(config-if-range)# switchport mode access
Switch(config-if-range)# switchport access vlan 20
Switch(config-if-range)# exit
! Port avec telephone IP (VLAN voix)
Switch(config)# interface GigabitEthernet0/5
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10
Switch(config-if)# switchport voice vlan 50
Switch(config-if)# exit
! Verification
Switch# show vlan brief
Switch# show interfaces switchport
Switch# show interfaces trunk
6.4 Configuration VLAN - HP ProCurve (Aruba)
! Creer les VLANs
Switch(config)# vlan 10
Switch(vlan-10)# name COMPTABILITE
Switch(vlan-10)# untagged 1-10
Switch(vlan-10)# exit
Switch(config)# vlan 20
Switch(vlan-20)# name RESSOURCES_HUMAINES
Switch(vlan-20)# untagged 11-20
Switch(vlan-20)# exit
Switch(config)# vlan 30
Switch(vlan-30)# name SERVEURS
Switch(vlan-30)# tagged 24
Switch(vlan-30)# exit
! Verification
Switch# show vlans
Switch# show vlans 10
Switch# show vlans ports 1
- Cisco access port = HP untagged (le port appartient a un seul VLAN, trames non etiquetees)
- Cisco trunk port = HP tagged (le port transporte plusieurs VLANs, trames etiquetees 802.1Q)
6.5 Routage inter-VLAN
Pour que les VLANs puissent communiquer entre eux, un equipement de couche 3 (routeur ou switch L3) est necessaire. Deux methodes principales existent :
6.5.1 Router-on-a-Stick (sous-interfaces sur routeur)
Architecture :
=============
VLAN 10 (192.168.10.0/24) VLAN 20 (192.168.20.0/24)
| |
[Port access VLAN 10] [Port access VLAN 20]
| |
+------------- Switch --------------+
|
[Port Trunk]
|
[Routeur Gi0/0]
.10 sub-if .20 sub-if
Configuration routeur Cisco :
=============================
Router(config)# interface GigabitEthernet0/0
Router(config-if)# no shutdown
Router(config)# interface GigabitEthernet0/0.10
Router(config-subif)# encapsulation dot1Q 10
Router(config-subif)# ip address 192.168.10.1 255.255.255.0
Router(config)# interface GigabitEthernet0/0.20
Router(config-subif)# encapsulation dot1Q 20
Router(config-subif)# ip address 192.168.20.1 255.255.255.0
6.5.2 SVI (Switch Virtual Interface) sur switch L3
Configuration switch L3 Cisco :
===============================
Switch(config)# ip routing
Switch(config)# interface vlan 10
Switch(config-if)# ip address 192.168.10.1 255.255.255.0
Switch(config-if)# no shutdown
Switch(config)# interface vlan 20
Switch(config-if)# ip address 192.168.20.1 255.255.255.0
Switch(config-if)# no shutdown
! Les SVIs servent de passerelle par defaut pour chaque VLAN
! VLAN 10 : passerelle = 192.168.10.1
! VLAN 20 : passerelle = 192.168.20.1
7. Trunk (liens trunk 802.1Q)
7.1 Qu'est-ce qu'un trunk ?
Un lien trunk est un lien reseau qui transporte le trafic de plusieurs VLANs simultanement entre des switches, ou entre un switch et un routeur/serveur. Le protocole 802.1Q (dot1q) ajoute une etiquette (tag) de 4 octets dans l'en-tete Ethernet pour identifier le VLAN d'appartenance de chaque trame.
Trame Ethernet standard :
+--------+--------+------+----------+-----+
| MAC Dst| MAC Src| Type | Donnees | FCS |
+--------+--------+------+----------+-----+
Trame Ethernet avec tag 802.1Q :
+--------+--------+----------+------+----------+-----+
| MAC Dst| MAC Src| Tag 802.1Q| Type | Donnees | FCS |
+--------+--------+----------+------+----------+-----+
| |
+--- 4 octets ---+
| TPID | TCI |
| 0x8100| PRI|CFI|VLAN ID |
| 2 oct | 3b |1b | 12 bits|
+--------+--------+
TPID : Tag Protocol Identifier = 0x8100 (identifie le tag 802.1Q)
PRI : Priority (3 bits) = QoS / CoS (0 a 7)
CFI : Canonical Format Indicator (1 bit)
VLAN ID : Identifiant du VLAN (12 bits) = 0 a 4095 (4094 VLANs utilisables)
7.2 VLAN natif
Le VLAN natif est le VLAN dont le trafic circule sans tag 802.1Q sur un lien trunk. Par defaut, c'est le VLAN 1.
7.3 DTP (Dynamic Trunking Protocol)
DTP est un protocole proprietaire Cisco qui negocie automatiquement l'etablissement d'un lien trunk entre deux switches. Il est recommande de le desactiver pour des raisons de securite.
| Mode DTP | Description | Forme un trunk avec |
|---|---|---|
| dynamic auto | Attend passivement une demande de trunk | trunk, dynamic desirable |
| dynamic desirable | Propose activement un trunk | trunk, dynamic desirable, dynamic auto |
| trunk | Force le mode trunk (inconditionnellement) | trunk, dynamic desirable, dynamic auto |
| access | Force le mode access (pas de trunk) | Aucun (jamais trunk) |
| nonegotiate | Desactive l'envoi de trames DTP | Uniquement si l'autre cote est aussi en trunk |
7.4 Configuration Trunk - Cisco IOS
! Configurer un port en trunk
Switch(config)# interface GigabitEthernet0/24
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config-if)# switchport trunk native vlan 999
Switch(config-if)# switchport trunk allowed vlan 10,20,30,99
Switch(config-if)# switchport nonegotiate
Switch(config-if)# exit
! Ajouter un VLAN au trunk existant
Switch(config)# interface GigabitEthernet0/24
Switch(config-if)# switchport trunk allowed vlan add 40
! Retirer un VLAN du trunk
Switch(config-if)# switchport trunk allowed vlan remove 30
7.5 Configuration Trunk - HP ProCurve (Aruba)
! Sur HP, un port est "tagged" pour les VLANs a transporter en trunk
Switch(config)# vlan 10
Switch(vlan-10)# tagged 24
Switch(vlan-10)# exit
Switch(config)# vlan 20
Switch(vlan-20)# tagged 24
Switch(vlan-20)# exit
Switch(config)# vlan 30
Switch(vlan-30)# tagged 24
Switch(vlan-30)# exit
! Le VLAN natif est le VLAN "untagged" sur le port
Switch(config)# vlan 999
Switch(vlan-999)# untagged 24
Switch(vlan-999)# exit
7.6 Commandes de verification
! Cisco IOS
Switch# show interfaces trunk
Switch# show interfaces GigabitEthernet0/24 switchport
Switch# show vlan brief
Switch# show interfaces GigabitEthernet0/24 trunk
! Exemple de sortie "show interfaces trunk" :
Port Mode Encapsulation Status Native vlan
Gi0/24 on 802.1q trunking 999
Port Vlans allowed on trunk
Gi0/24 10,20,30,99
Port Vlans allowed and active in management domain
Gi0/24 10,20,30,99
! HP ProCurve
Switch# show vlans
Switch# show vlans ports 24
Switch# show trunks
8. Spanning Tree Protocol (STP)
8.1 Le probleme des boucles de commutation
Dans un reseau avec des liens redondants entre switches (necessaire pour la haute disponibilite), des boucles peuvent se former. Ces boucles causent trois problemes majeurs :
- Tempete de broadcast : Les trames broadcast circulent indefiniment, saturant la bande passante.
- Instabilite de la table MAC : Un switch apprend la meme adresse MAC sur plusieurs ports (confusion).
- Trames dupliquees : Un meme paquet arrive en plusieurs exemplaires au destinataire.
Exemple de boucle :
===================
[Switch A]
/ \
Lien 1 Lien 2 <-- Deux chemins entre A et B = BOUCLE !
\ /
[Switch B]
Une trame broadcast entrant sur Switch A est envoyee sur Lien 1 ET Lien 2.
Switch B la recoit sur les deux liens et la renvoie vers Switch A.
Switch A la renvoie... et ainsi de suite a l'infini !
STP resout ce probleme en BLOQUANT un des liens :
=================================================
[Switch A] (Root Bridge)
/ \
Lien 1 Lien 2 [BLOQUE]
(actif) (backup)
\ /
[Switch B]
Si Lien 1 tombe en panne, STP reactive automatiquement Lien 2.
8.2 Election du Root Bridge
STP elit un switch comme Root Bridge (pont racine). Tous les autres switches calculent le meilleur chemin vers le Root Bridge. Le switch avec le Bridge ID le plus bas devient Root Bridge.
Bridge ID = Bridge Priority (2 octets) + Adresse MAC (6 octets)
= Priorite (par defaut 32768) + MAC du switch
Exemple d'election :
Switch A : Priority 32768 + MAC AA:AA:AA:AA:AA:AA => BID = 32768.AAAAAAAAAAAA
Switch B : Priority 32768 + MAC BB:BB:BB:BB:BB:BB => BID = 32768.BBBBBBBBBBBB
Switch C : Priority 4096 + MAC CC:CC:CC:CC:CC:CC => BID = 4096.CCCCCCCCCCCC
Resultat : Switch C est elu Root Bridge (priorite la plus basse)
! Forcer un switch comme Root Bridge (Cisco)
Switch(config)# spanning-tree vlan 1 priority 4096
! Ou automatiquement :
Switch(config)# spanning-tree vlan 1 root primary (priority = 24576)
Switch(config)# spanning-tree vlan 1 root secondary (priority = 28672)
8.3 Roles et etats des ports STP
Roles des ports :
| Role | Description | Switch concerne |
|---|---|---|
| Root Port (RP) | Port avec le meilleur chemin vers le Root Bridge. Un seul par switch non-root. | Tous les switches sauf le Root Bridge |
| Designated Port (DP) | Port qui envoie le trafic vers le Root Bridge sur un segment donne. Un seul par segment. | Tous les ports du Root Bridge + meilleur port de chaque segment |
| Blocked / Non-Designated | Port bloque pour eviter les boucles. Ne transmet pas de trafic utilisateur. | Ports restants (redondants) |
Etats des ports STP (802.1D) :
| Etat | Duree | Transmet les donnees ? | Apprend les MAC ? | Recoit les BPDU ? | Description |
|---|---|---|---|---|---|
| Disabled | - | Non | Non | Non | Port administrativement desactive |
| Blocking | 20s (Max Age) | Non | Non | Oui | Port bloque, ecoute les BPDU |
| Listening | 15s (Forward Delay) | Non | Non | Oui | Determine son role, envoie/recoit des BPDU |
| Learning | 15s (Forward Delay) | Non | Oui | Oui | Apprend les adresses MAC |
| Forwarding | - | Oui | Oui | Oui | Port actif, transmet les donnees normalement |
8.4 Timers STP
| Timer | Valeur par defaut | Description |
|---|---|---|
| Hello Time | 2 secondes | Intervalle d'envoi des BPDU par le Root Bridge |
| Max Age | 20 secondes | Duree maximale d'attente avant de considerer un BPDU comme expire |
| Forward Delay | 15 secondes | Duree des etats Listening et Learning |
8.5 RSTP (Rapid Spanning Tree Protocol - 802.1w)
RSTP est une evolution de STP qui reduit le temps de convergence a moins d'une seconde dans la plupart des cas.
| Caracteristique | STP (802.1D) | RSTP (802.1w) |
|---|---|---|
| Convergence | 30-50 secondes | Moins d'1 seconde |
| Etats des ports | 5 (Disabled, Blocking, Listening, Learning, Forwarding) | 3 (Discarding, Learning, Forwarding) |
| Roles supplementaires | - | Alternate Port, Backup Port |
| Mecanisme | Attente des timers | Proposition/Accord (Proposal/Agreement) |
| Compatibilite | - | Retro-compatible avec STP |
! Activer RSTP sur Cisco
Switch(config)# spanning-tree mode rapid-pvst
! Verification
Switch# show spanning-tree
Switch# show spanning-tree summary
8.6 PortFast et BPDU Guard
PortFast permet a un port de passer directement en etat Forwarding, sans attendre les etats Listening et Learning (0 seconde au lieu de 30). A utiliser uniquement sur les ports connectes a des hotes finaux (PC, imprimantes, serveurs).
BPDU Guard desactive automatiquement un port si un BPDU y est detecte. Il protege contre les boucles accidentelles (par exemple, un utilisateur qui connecte un switch personnel).
! PortFast sur un port specifique
Switch(config)# interface GigabitEthernet0/1
Switch(config-if)# spanning-tree portfast
Switch(config-if)# spanning-tree bpduguard enable
! PortFast global (tous les ports access)
Switch(config)# spanning-tree portfast default
! BPDU Guard global
Switch(config)# spanning-tree portfast bpduguard default
! Reactiver un port desactive par BPDU Guard
Switch(config)# interface GigabitEthernet0/1
Switch(config-if)# shutdown
Switch(config-if)# no shutdown
! Ou configurer une reactivation automatique
Switch(config)# errdisable recovery cause bpduguard
Switch(config)# errdisable recovery interval 300
8.7 Schema STP complet
[SW-A] Root Bridge (Priority 4096)
DP| |DP
| |
cout=4 cout=4
| |
RP| |RP
[SW-B]------[SW-C]
DP BLK
Legende :
DP = Designated Port (transmet)
RP = Root Port (meilleur chemin vers Root Bridge)
BLK = Blocked Port (bloque pour eviter la boucle)
SW-A est Root Bridge (priorite la plus basse)
SW-B et SW-C ont chacun un Root Port vers SW-A
Sur le lien SW-B <-> SW-C :
- SW-B a le meilleur Bridge ID => son port est Designated
- SW-C bloque son port (Alternate Port en RSTP)
Si le lien SW-A <-> SW-C tombe :
- SW-C debloque son port vers SW-B
- Le trafic de SW-C passe par SW-B pour atteindre SW-A
9. DMZ (Zone Demilitarisee)
9.1 Concept
Une DMZ (Demilitarized Zone) est un sous-reseau isole qui heberge les services accessibles depuis Internet (serveur web, serveur mail, DNS public, etc.) tout en protegeant le reseau interne. La DMZ agit comme une zone tampon entre le reseau externe (Internet) et le reseau interne (LAN).
Principes fondamentaux :
- Les serveurs exposes a Internet sont places en DMZ, jamais directement sur le LAN
- Le trafic Internet ne doit jamais atteindre directement le LAN interne
- Si un serveur en DMZ est compromis, l'attaquant ne peut pas acceder directement au LAN
- Les regles de firewall controlent strictement les flux entre les zones
9.2 Architecture a un seul firewall (3 pattes)
Le firewall possede trois interfaces : une vers Internet, une vers la DMZ et une vers le LAN. C'est l'architecture la plus courante en PME.
INTERNET
|
[Interface WAN]
(203.0.113.1)
|
+--------------+
| FIREWALL |
+--------------+
/ \
[Interface DMZ] [Interface LAN]
(172.16.1.1) (192.168.1.1)
| |
+-----------+ +-----------+
| DMZ | | LAN |
| | | |
| Srv Web | | Postes |
| Srv Mail | | Serveurs |
| DNS pub | | internes |
+-----------+ +-----------+
172.16.1.0/24 192.168.1.0/24
9.3 Architecture a deux firewalls
Deux firewalls encadrent la DMZ. Le premier (front-end) filtre le trafic Internet, le second (back-end) protege le LAN. Architecture recommandee pour les environnements sensibles. Idealement, les deux firewalls sont de marques differentes pour eviter qu'une meme vulnerabilite compromette les deux.
INTERNET
|
+--------------+
| FIREWALL 1 | (Front-end / externe)
| Marque A |
+--------------+
|
+-----------+
| DMZ |
| |
| Srv Web |
| Srv Mail |
| Reverse |
| Proxy |
+-----------+
172.16.1.0/24
|
+--------------+
| FIREWALL 2 | (Back-end / interne)
| Marque B |
+--------------+
|
+-----------+
| LAN |
| |
| Postes |
| Serveurs |
| internes |
+-----------+
192.168.1.0/24
9.4 Regles de flux typiques
| Source | Destination | Ports autorises | Action | Justification |
|---|---|---|---|---|
| Internet | DMZ (Srv Web) | TCP 80, 443 | AUTORISER | Acces public au site web |
| Internet | DMZ (Srv Mail) | TCP 25, 587, 993 | AUTORISER | Reception/envoi de courrier |
| Internet | DMZ (DNS) | TCP/UDP 53 | AUTORISER | Resolution DNS publique |
| Internet | LAN | Tous | REFUSER | Jamais d'acces direct au LAN |
| DMZ | LAN | Tous | REFUSER | DMZ compromise ne doit pas atteindre le LAN |
| DMZ (Srv Web) | LAN (BDD) | TCP 3306 | AUTORISER | Exception : le serveur web accede a la BDD interne |
| LAN | DMZ | TCP 22, 80, 443 | AUTORISER | Administration des serveurs DMZ depuis le LAN |
| LAN | Internet | TCP 80, 443, 53 | AUTORISER | Navigation web et DNS pour les utilisateurs |
| DMZ | Internet | TCP 80, 443, UDP 53 | AUTORISER | Mises a jour des serveurs, resolution DNS |
9.5 Exemple de configuration firewall (iptables / Linux)
# Variables
WAN_IF="eth0" # Interface Internet
DMZ_IF="eth1" # Interface DMZ
LAN_IF="eth2" # Interface LAN
DMZ_WEB="172.16.1.10" # Serveur web en DMZ
DMZ_MAIL="172.16.1.20"# Serveur mail en DMZ
LAN_NET="192.168.1.0/24"
DMZ_NET="172.16.1.0/24"
# Politique par defaut : TOUT BLOQUER
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# Autoriser les connexions etablies (stateful)
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Internet -> DMZ : HTTP/HTTPS vers serveur web
iptables -A FORWARD -i $WAN_IF -o $DMZ_IF -d $DMZ_WEB -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i $WAN_IF -o $DMZ_IF -d $DMZ_WEB -p tcp --dport 443 -j ACCEPT
# Internet -> DMZ : SMTP vers serveur mail
iptables -A FORWARD -i $WAN_IF -o $DMZ_IF -d $DMZ_MAIL -p tcp --dport 25 -j ACCEPT
# LAN -> Internet : navigation web + DNS
iptables -A FORWARD -i $LAN_IF -o $WAN_IF -s $LAN_NET -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i $LAN_IF -o $WAN_IF -s $LAN_NET -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -i $LAN_IF -o $WAN_IF -s $LAN_NET -p udp --dport 53 -j ACCEPT
# LAN -> DMZ : administration SSH
iptables -A FORWARD -i $LAN_IF -o $DMZ_IF -s $LAN_NET -d $DMZ_NET -p tcp --dport 22 -j ACCEPT
# DMZ -> LAN : INTERDIT (sauf exception BDD)
iptables -A FORWARD -i $DMZ_IF -o $LAN_IF -s $DMZ_WEB -d 192.168.1.50 -p tcp --dport 3306 -j ACCEPT
# NAT : Masquerade pour le LAN et la DMZ vers Internet
iptables -t nat -A POSTROUTING -o $WAN_IF -s $LAN_NET -j MASQUERADE
iptables -t nat -A POSTROUTING -o $WAN_IF -s $DMZ_NET -j MASQUERADE
# NAT : Port forwarding Internet -> DMZ
iptables -t nat -A PREROUTING -i $WAN_IF -p tcp --dport 80 -j DNAT --to-destination $DMZ_WEB:80
iptables -t nat -A PREROUTING -i $WAN_IF -p tcp --dport 443 -j DNAT --to-destination $DMZ_WEB:443
iptables -t nat -A PREROUTING -i $WAN_IF -p tcp --dport 25 -j DNAT --to-destination $DMZ_MAIL:25
9.6 Schema de flux reseau complet
+============================================================+
| INTERNET |
+============================================================+
| HTTP/HTTPS (80,443) | SMTP (25)
| vers Srv Web | vers Srv Mail
v v
+----------------------------------------------------------+
| FIREWALL |
| WAN: 203.0.113.1 |
| DMZ: 172.16.1.1 |
| LAN: 192.168.1.1 |
+----------------------------------------------------------+
| |
v v
+-------------------+ +-------------------+
| DMZ | | LAN |
| 172.16.1.0/24 | | 192.168.1.0/24 |
| | | |
| [Web] .10 <-------+--- SSH ----|-> [PC Admin] .100 |
| [Mail] .20 | (22) | [PC Users] .101-200|
| [DNS] .30 | | [Srv BDD] .50 |
| | | [Srv Fichiers] .51|
| Web .10 -----TCP 3306--------> | Srv BDD .50 |
+-------------------+ +-------------------+
Flux autorises (resume) :
Internet --> DMZ : 80, 443, 25, 53
LAN --> DMZ : 22 (admin)
LAN --> WAN : 80, 443, 53
DMZ (web) --> LAN : 3306 (BDD uniquement)
DMZ --> LAN : BLOQUE (sauf exception ci-dessus)
Internet --> LAN : BLOQUE
10. Cablage reseau
10.1 Categories de cables RJ45
Le choix du cable est determinant pour les performances du reseau. Chaque categorie offre des caracteristiques differentes en termes de debit, frequence et blindage.
| Categorie | Debit max | Frequence | Distance max | Blindage | Usage recommande |
|---|---|---|---|---|---|
| Cat 5 | 100 Mbps | 100 MHz | 100 m | UTP (non blinde) | Obsolete - a remplacer |
| Cat 5e | 1 Gbps | 100 MHz | 100 m | UTP ou FTP | Bureautique, postes de travail |
| Cat 6 | 1 Gbps (10 Gbps sur 55m) | 250 MHz | 100 m (55 m en 10G) | UTP ou FTP | Standard actuel recommande |
| Cat 6a | 10 Gbps | 500 MHz | 100 m | FTP, STP ou SFTP | Data centers, liens critiques |
| Cat 7 | 10 Gbps | 600 MHz | 100 m | SFTP (blindage par paire + global) | Environnements perturbes (EMI) |
| Cat 8 | 25/40 Gbps | 2000 MHz | 30 m | SFTP | Data centers, courtes distances |
UTP (Unshielded Twisted Pair) : Pas de blindage, le plus courant et economique.
FTP (Foiled Twisted Pair) : Feuille d'aluminium autour de l'ensemble des paires.
STP (Shielded Twisted Pair) : Blindage individuel par tresse autour de chaque paire.
SFTP (Shielded Foiled Twisted Pair) : Blindage individuel par paire + feuille globale. Protection maximale.
10.2 Cable droit vs cable croise
Le type de cable (droit ou croise) depend des equipements a interconnecter. Les equipements modernes disposent generalement de l'Auto-MDIX qui detecte automatiquement le type de connexion, mais il est important de connaitre la difference.
| Type de cable | Connexion | Norme aux extremites | Utilisation |
|---|---|---|---|
| Cable droit | Equipements differents | T568B <--> T568B (ou T568A <--> T568A) | PC <--> Switch, Switch <--> Routeur |
| Cable croise | Equipements identiques | T568A <--> T568B | PC <--> PC, Switch <--> Switch |
10.3 Normes T568A et T568B - Schema de cablage
Les normes T568A et T568B definissent l'ordre des fils dans un connecteur RJ45. La norme T568B est la plus repandue en entreprise.
| Broche | T568A - Couleur | T568B - Couleur | Signal (Ethernet 100M) |
|---|---|---|---|
| 1 | Blanc/Vert | Blanc/Orange | TX+ (emission) |
| 2 | Vert | Orange | TX- (emission) |
| 3 | Blanc/Orange | Blanc/Vert | RX+ (reception) |
| 4 | Bleu | Bleu | Non utilise (100M) / BI_D3+ |
| 5 | Blanc/Bleu | Blanc/Bleu | Non utilise (100M) / BI_D3- |
| 6 | Orange | Vert | RX- (reception) |
| 7 | Blanc/Marron | Blanc/Marron | Non utilise (100M) / BI_D4+ |
| 8 | Marron | Marron | Non utilise (100M) / BI_D4- |
10.4 Fibre optique
La fibre optique transmet les donnees sous forme de lumiere, offrant des debits superieurs et des distances bien plus grandes que le cuivre.
| Caracteristique | Monomode (SMF) | Multimode (MMF) |
|---|---|---|
| Coeur | 9 µm | 50 ou 62.5 µm |
| Source lumineuse | Laser | LED ou VCSEL |
| Distance max | Jusqu'a 80+ km | Jusqu'a 2 km (OM5) |
| Debit | 100 Gbps+ | 10-100 Gbps (courte distance) |
| Cout | Eleve (emetteurs laser) | Modere |
| Couleur gaine | Jaune (OS1/OS2) | Orange (OM1/OM2), Turquoise (OM3/OM4), Vert (OM5) |
| Usage | WAN, longues distances, inter-sites | LAN, data centers, intra-batiment |
Types de connecteurs fibre :
| Connecteur | Type | Caracteristiques | Usage courant |
|---|---|---|---|
| LC | Petit format (push-pull) | Compact, haute densite | SFP/SFP+, data centers |
| SC | Standard (push-pull) | Robuste, facile a manipuler | FTTH, liaisons longues |
| ST | Baionnette (twist-lock) | Ancien standard, verrouillage mecanique | Installations anciennes |
| MPO/MTP | Multi-fibres (8, 12 ou 24) | Tres haute densite | Data centers, liens 40G/100G+ |
10.5 Power over Ethernet (PoE)
Le PoE permet d'alimenter les equipements reseau (telephones IP, cameras, bornes Wi-Fi) via le cable Ethernet, evitant ainsi un cablage electrique separe.
| Norme IEEE | Nom commercial | Puissance max (par port) | Puissance dispo (PD) | Paires utilisees | Equipements types |
|---|---|---|---|---|---|
| 802.3af | PoE | 15.4 W | 12.95 W | 2 paires | Telephones IP, cameras basiques |
| 802.3at | PoE+ | 30 W | 25.5 W | 2 paires | Bornes Wi-Fi, cameras PTZ |
| 802.3bt Type 3 | PoE++ / UPoE | 60 W | 51 W | 4 paires | Visioconference, eclairage LED |
| 802.3bt Type 4 | PoE++ / UPoE+ | 100 W | 71.3 W | 4 paires | Ecrans, thin clients, bornes avancees |
10.6 Bonnes pratiques de cablage
- Etiqueter systematiquement chaque cable aux deux extremites (ex: SW01-P12 <--> PATCH-B2-R3-P12)
- Respecter les rayons de courbure : minimum 4x le diametre du cable cuivre, 10x pour la fibre
- Separer les chemins : cables courant fort (electrique) et courant faible (reseau) dans des chemins distincts (min 30 cm)
- Tester chaque lien avec un testeur de cablage certifie apres l'installation
- Documenter le plan de brassage dans un tableau de correspondance (port switch / prise murale / local)
- Utiliser des panneaux de brassage pour faciliter la gestion et eviter les manipulations directes sur le switch
- Prevoir de la marge : tirer plus de cables que necessaire (+20% minimum) pour les evolutions futures
- Cat 6a minimum pour toute nouvelle installation (perennite 10 Gbps)
11. Switches manageables
11.1 Types de switches
Les switches existent en plusieurs niveaux de fonctionnalites. Le choix depend des besoins en gestion, performance et segmentation du reseau.
| Caracteristique | Non-manageable (L2 basique) | Manageable L2 | Manageable L3 |
|---|---|---|---|
| Configuration | Aucune (plug & play) | Interface web / CLI | Interface web / CLI |
| VLAN | Non | Oui | Oui |
| Routage inter-VLAN | Non | Non (necessite un routeur) | Oui (routage integre) |
| STP | Basique ou absent | Oui (STP/RSTP/MSTP) | Oui (STP/RSTP/MSTP) |
| LACP / Port-Channel | Non | Oui | Oui |
| QoS | Non | Oui | Oui (avance) |
| SNMP | Non | Oui | Oui |
| Port Mirroring | Non | Oui | Oui |
| ACL | Non | Basique | Oui (L3/L4) |
| Protocoles de routage | Non | Non | Oui (OSPF, RIP, routes statiques) |
| Cout | Bas | Moyen | Eleve |
| Usage | Petit bureau, usage domestique | PME, segmentation VLAN | Coeur de reseau, data centers |
11.2 Configuration initiale d'un switch manageable (Cisco)
Acces par console serie :
# Connexion physique : cable console RJ45-DB9 ou USB
# Parametres terminal : 9600 bauds, 8 bits, pas de parite, 1 bit stop
# Logiciels : PuTTY, SecureCRT, minicom (Linux)
# Premiere connexion - mode privilegie
Switch> enable
Switch# configure terminal
# Nom du switch
Switch(config)# hostname SW-CORE-01
SW-CORE-01(config)#
# Mot de passe enable (chiffre)
SW-CORE-01(config)# enable secret MonMotDePasseF0rt!
# Interface de management (VLAN de management)
SW-CORE-01(config)# interface vlan 10
SW-CORE-01(config-if)# ip address 192.168.10.2 255.255.255.0
SW-CORE-01(config-if)# no shutdown
SW-CORE-01(config-if)# exit
# Passerelle par defaut
SW-CORE-01(config)# ip default-gateway 192.168.10.1
# Activer SSH (desactiver Telnet)
SW-CORE-01(config)# hostname SW-CORE-01
SW-CORE-01(config)# ip domain-name monentreprise.local
SW-CORE-01(config)# crypto key generate rsa modulus 2048
SW-CORE-01(config)# ip ssh version 2
# Creer un utilisateur local
SW-CORE-01(config)# username admin privilege 15 secret MotDeP@sse!
# Configurer les lignes VTY pour SSH uniquement
SW-CORE-01(config)# line vty 0 15
SW-CORE-01(config-line)# transport input ssh
SW-CORE-01(config-line)# login local
SW-CORE-01(config-line)# exit
# Sauvegarder la configuration
SW-CORE-01# copy running-config startup-config
11.3 Port-Channel / LACP (agregation de liens)
L'agregation de liens permet de combiner plusieurs ports physiques en un seul lien logique, augmentant la bande passante et assurant la redondance.
# Configuration LACP sur Cisco (switch A et B identiques)
# Agregation de 2 ports GigabitEthernet en un Port-Channel
SW-CORE-01(config)# interface range GigabitEthernet0/1 - 2
SW-CORE-01(config-if-range)# channel-group 1 mode active
SW-CORE-01(config-if-range)# exit
SW-CORE-01(config)# interface Port-channel1
SW-CORE-01(config-if)# switchport mode trunk
SW-CORE-01(config-if)# switchport trunk allowed vlan 10,20,30
SW-CORE-01(config-if)# exit
# Verification
SW-CORE-01# show etherchannel summary
SW-CORE-01# show etherchannel port-channel
SW-CORE-01# show lacp neighbor
active : Le switch initie la negociation LACP (recommande des deux cotes).
passive : Le switch attend une negociation LACP de l'autre cote.
on : Force l'agregation sans negociation (PAgP/statique - a eviter).
11.4 Port Security
La securite de port limite le nombre d'adresses MAC autorisees sur un port et definit l'action en cas de violation.
# Activer la securite de port
SW-CORE-01(config)# interface GigabitEthernet0/10
SW-CORE-01(config-if)# switchport mode access
SW-CORE-01(config-if)# switchport port-security
SW-CORE-01(config-if)# switchport port-security maximum 2
SW-CORE-01(config-if)# switchport port-security violation restrict
SW-CORE-01(config-if)# switchport port-security mac-address sticky
SW-CORE-01(config-if)# exit
# Modes de violation :
# shutdown : Desactive le port (err-disabled) - par defaut
# restrict : Bloque le trafic + log, port reste actif
# protect : Bloque le trafic silencieusement
# Verification
SW-CORE-01# show port-security interface GigabitEthernet0/10
SW-CORE-01# show port-security address
# Reactiver un port en err-disabled
SW-CORE-01(config)# interface GigabitEthernet0/10
SW-CORE-01(config-if)# shutdown
SW-CORE-01(config-if)# no shutdown
11.5 DHCP Snooping
Le DHCP Snooping protege contre les serveurs DHCP non autorises (rogue DHCP) en filtrant les messages DHCP sur les ports non approuves.
# Activer DHCP Snooping globalement
SW-CORE-01(config)# ip dhcp snooping
SW-CORE-01(config)# ip dhcp snooping vlan 10,20,30
# Definir le port de confiance (vers le serveur DHCP ou le routeur)
SW-CORE-01(config)# interface GigabitEthernet0/24
SW-CORE-01(config-if)# ip dhcp snooping trust
SW-CORE-01(config-if)# exit
# Les ports acces (vers les postes) restent "untrust" par defaut
# Limiter le debit DHCP sur les ports acces (anti DoS)
SW-CORE-01(config)# interface range GigabitEthernet0/1 - 23
SW-CORE-01(config-if-range)# ip dhcp snooping limit rate 10
SW-CORE-01(config-if-range)# exit
# Verification
SW-CORE-01# show ip dhcp snooping
SW-CORE-01# show ip dhcp snooping binding
11.6 QoS (Quality of Service) - Bases
La QoS permet de prioriser certains types de trafic (voix, video) par rapport a d'autres (navigation web, telechargements).
| Valeur CoS (802.1p) | Valeur DSCP | Type de trafic | Priorite |
|---|---|---|---|
| 7 | 56 (CS7) | Controle reseau | La plus haute |
| 6 | 48 (CS6) | Controle inter-reseau | Tres haute |
| 5 | 46 (EF) | Voix (VoIP) | Haute |
| 4 | 34 (AF41) | Videoconference | Moyenne-haute |
| 3 | 26 (AF31) | Signalisation d'appels | Moyenne |
| 2 | 18 (AF21) | Donnees transactionnelles | Normale |
| 1 | 10 (AF11) | Donnees en masse (backup) | Basse |
| 0 | 0 (BE) | Best Effort (defaut) | La plus basse |
# Exemple QoS Cisco : prioriser la VoIP sur le VLAN voix
SW-CORE-01(config)# mls qos
# Faire confiance au marquage DSCP sur le port du telephone IP
SW-CORE-01(config)# interface GigabitEthernet0/5
SW-CORE-01(config-if)# mls qos trust dscp
SW-CORE-01(config-if)# exit
12. Routage
12.1 Routage statique vs dynamique
Le routage est le processus de selection du meilleur chemin pour acheminer les paquets d'un reseau a un autre. Il peut etre configure manuellement (statique) ou appris automatiquement (dynamique).
| Caracteristique | Routage statique | Routage dynamique |
|---|---|---|
| Configuration | Manuelle par l'administrateur | Automatique via protocoles |
| Adaptation | Aucune (pas de mise a jour auto) | S'adapte aux changements de topologie |
| Ressources | Minimales (CPU/RAM) | Consomme CPU/RAM/bande passante |
| Securite | Elevee (pas d'echange de routes) | Necessite authentification des voisins |
| Scalabilite | Faible (lourd a gerer sur grands reseaux) | Elevee (des centaines de routes) |
| Usage | Petits reseaux, route par defaut, stub networks | Reseaux moyens a grands, topologies complexes |
12.2 Lecture d'une table de routage
# Cisco - Afficher la table de routage
Router# show ip route
# Exemple de sortie :
# C 192.168.1.0/24 is directly connected, GigabitEthernet0/0
# S 10.0.0.0/8 [1/0] via 192.168.1.1
# O 172.16.0.0/16 [110/20] via 192.168.1.2, 00:05:12, GigabitEthernet0/1
# S* 0.0.0.0/0 [1/0] via 203.0.113.1
# Legende :
# C = Connected (directement connecte)
# S = Static (route statique)
# S* = Route statique par defaut (default route)
# O = OSPF
# R = RIP
# D = EIGRP
# B = BGP
# [AD/Metrique] = Distance Administrative / Metrique du protocole
# Linux - Afficher la table de routage
ip route show
# Exemple de sortie Linux :
# default via 192.168.1.1 dev eth0 proto static metric 100
# 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.50
# 10.0.0.0/8 via 192.168.1.254 dev eth0
12.3 Route par defaut (Default Route)
La route par defaut (0.0.0.0/0) est utilisee lorsqu'aucune route plus specifique n'est trouvee dans la table de routage. Elle pointe generalement vers la passerelle Internet.
# Cisco - Route par defaut
Router(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.1
# Linux - Route par defaut
sudo ip route add default via 192.168.1.1 dev eth0
# Linux - Modifier la route par defaut
sudo ip route replace default via 192.168.1.254 dev eth0
# Windows - Route par defaut
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1
12.4 Protocoles de routage dynamique
| Protocole | Type | Algorithme | Metrique | AD | Convergence | Usage |
|---|---|---|---|---|---|---|
| RIPv2 | IGP - Distance Vector | Bellman-Ford | Nombre de sauts (max 15) | 120 | Lente (30s timers) | Petits reseaux, labs, apprentissage |
| OSPF | IGP - Link-State | Dijkstra (SPF) | Cout (base sur la bande passante) | 110 | Rapide | Reseaux d'entreprise, standard ouvert |
| EIGRP | IGP - Hybride (Advanced DV) | DUAL | Composite (bande passante, delai, charge, fiabilite) | 90 (interne) / 170 (externe) | Tres rapide | Reseaux Cisco (proprietaire, ouvert depuis) |
| BGP | EGP - Path Vector | Best Path Selection | Attributs (AS-Path, Next-Hop, Local Pref...) | 20 (eBGP) / 200 (iBGP) | Lente (par conception) | Internet, interconnexion FAI, multi-homing |
Valeurs AD par defaut (Cisco) : Connected = 0, Static = 1, eBGP = 20, EIGRP interne = 90, OSPF = 110, RIP = 120, EIGRP externe = 170, iBGP = 200
12.5 Configuration de routes statiques
# ========================================
# Configuration Cisco IOS
# ========================================
# Route statique vers un reseau via une passerelle (next-hop)
Router(config)# ip route 10.10.0.0 255.255.0.0 192.168.1.1
# Route statique vers un reseau via une interface de sortie
Router(config)# ip route 10.10.0.0 255.255.0.0 GigabitEthernet0/1
# Route statique avec distance administrative personnalisee (route de secours)
Router(config)# ip route 10.10.0.0 255.255.0.0 192.168.2.1 10
# Route par defaut
Router(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.1
# Verification
Router# show ip route static
# ========================================
# Configuration Linux (ip route)
# ========================================
# Ajouter une route statique
sudo ip route add 10.10.0.0/16 via 192.168.1.1 dev eth0
# Ajouter une route avec metrique (poids)
sudo ip route add 10.10.0.0/16 via 192.168.1.1 dev eth0 metric 200
# Supprimer une route
sudo ip route del 10.10.0.0/16
# Rendre persistant (Debian/Ubuntu) - fichier /etc/network/interfaces :
# up ip route add 10.10.0.0/16 via 192.168.1.1 dev eth0
# Rendre persistant (RHEL/CentOS) - fichier /etc/sysconfig/network-scripts/route-eth0 :
# 10.10.0.0/16 via 192.168.1.1 dev eth0
12.6 Passerelle (Gateway) et metrique
La passerelle (gateway) est le routeur de prochain saut utilise pour atteindre un reseau distant. La metrique est une valeur numerique qui determine le cout d'un chemin : plus elle est basse, plus le chemin est prefere.
# Schema simplifie de routage avec metriques
#
# [PC] ---- [R1] ----metrique 10---- [R2] ---- [Serveur]
# | |
# +------ [R3] ----metrique 20--------+
#
# Le trafic PC -> Serveur empruntera le chemin via R1->R2 (metrique 10)
# Si le lien R1-R2 tombe, le trafic bascule sur R3 (metrique 20)
# Cisco - Verification de la passerelle
Router# show ip route 0.0.0.0
Router# show ip route | include Gateway
# Linux - Verification de la passerelle
ip route show default
# Sortie : default via 192.168.1.1 dev eth0 proto static metric 100
13. Wi-Fi (reseaux sans fil)
13.1 Normes 802.11 - Comparatif
Les normes Wi-Fi definissent les frequences, debits et technologies utilisees pour les communications sans fil. Chaque generation apporte des ameliorations significatives.
| Norme IEEE | Nom commercial | Annee | Frequence | Debit max theorique | Portee interieure | MIMO |
|---|---|---|---|---|---|---|
| 802.11a | - | 1999 | 5 GHz | 54 Mbps | ~35 m | Non |
| 802.11b | - | 1999 | 2.4 GHz | 11 Mbps | ~35 m | Non |
| 802.11g | - | 2003 | 2.4 GHz | 54 Mbps | ~38 m | Non |
| 802.11n | Wi-Fi 4 | 2009 | 2.4 + 5 GHz | 600 Mbps | ~70 m | 4x4 MIMO |
| 802.11ac | Wi-Fi 5 | 2013 | 5 GHz | 6.93 Gbps | ~35 m | 8x8 MU-MIMO (DL) |
| 802.11ax | Wi-Fi 6 / 6E | 2020 | 2.4 + 5 + 6 GHz | 9.6 Gbps | ~30 m | 8x8 MU-MIMO (UL+DL), OFDMA |
| 802.11be | Wi-Fi 7 | 2024 | 2.4 + 5 + 6 GHz | 46 Gbps | ~30 m | 16x16 MU-MIMO, MLO, 320 MHz |
13.2 Bandes de frequence : 2.4 GHz vs 5 GHz vs 6 GHz
| Caracteristique | 2.4 GHz | 5 GHz | 6 GHz (Wi-Fi 6E/7) |
|---|---|---|---|
| Portee | Longue (meilleure penetration des murs) | Moyenne | Courte (forte attenuation) |
| Debit | Faible a moyen | Eleve | Tres eleve |
| Interference | Forte (micro-ondes, Bluetooth, voisins) | Moderee | Faible (bande reservee Wi-Fi) |
| Canaux disponibles | 3 non-chevauchants | 25 (selon pays) | 59 (selon pays) |
| Largeur canal | 20 MHz (40 possible) | 20/40/80/160 MHz | 20/40/80/160/320 MHz |
| Usage ideal | IoT, couverture etendue | Multimedia, bureautique | Haute performance, VR/AR |
13.3 Canaux non-chevauchants (2.4 GHz)
En 2.4 GHz, seuls les canaux 1, 6 et 11 ne se chevauchent pas. Utiliser d'autres canaux provoque des interferences avec les AP voisins.
# Representation des canaux 2.4 GHz (largeur 20 MHz chacun)
#
# Canal: 1 2 3 4 5 6 7 8 9 10 11 12 13
# Freq: |---|---|---|---|---|---|---|---|---|---|---|---|---|
# (MHz) 2412 2437 2462
#
# Canaux non-chevauchants :
# [=== Canal 1 ===] [=== Canal 6 ===] [=== Canal 11 ===]
# 2401-2423 MHz 2426-2448 MHz 2451-2473 MHz
#
# Plan de deploiement en nid d'abeille :
#
# [ 1 ]---[ 6 ]---[11 ]
# / \ / \ / \
# [ 6 ]---[11 ]---[ 1 ]---[ 6 ]
# \ / \ / \ /
# [11 ]---[ 1 ]---[ 6 ]
#
# Chaque AP utilise un canal different de ses voisins directs
13.4 Securite Wi-Fi
| Protocole | Annee | Chiffrement | Authentification | Securite | Recommandation |
|---|---|---|---|---|---|
| WEP | 1999 | RC4 (40/104 bits) | Cle partagee statique | Cassable en minutes | A proscrire absolument |
| WPA | 2003 | TKIP (RC4 ameliore) | PSK ou 802.1X | Vulnerabilites connues | Obsolete - a eviter |
| WPA2 | 2004 | AES-CCMP (128 bits) | PSK ou 802.1X (Enterprise) | Bon (vulnerable KRACK corrige) | Standard minimum acceptable |
| WPA3 | 2018 | AES-GCMP (128/192 bits) | SAE (remplace PSK) ou 802.1X | Excellent (forward secrecy) | Recommande pour tout nouveau deploiement |
PSK : Mot de passe unique partage entre tous les utilisateurs. Simple mais risque si un employe quitte l'entreprise (il faut changer le mot de passe pour tous).
Enterprise (802.1X) : Chaque utilisateur s'authentifie avec ses propres identifiants via un serveur RADIUS. Revocation individuelle possible. Obligatoire en entreprise.
13.5 802.1X / RADIUS pour le Wi-Fi
# Architecture 802.1X pour Wi-Fi Enterprise
#
# [Client Wi-Fi] [Point d'Acces] [Serveur RADIUS]
# (Supplicant) (Authenticator) (Authentication Server)
# | | |
# |--- Association 802.11 ------>| |
# | | |
# |<------- EAP Request ---------| |
# |-------- EAP Response ------->| |
# | |--- RADIUS Access-Req -->|
# | |<-- RADIUS Challenge ----|
# |<------- EAP Challenge -------| |
# |-------- EAP Response ------->| |
# | |--- RADIUS Access-Req -->|
# | |<-- RADIUS Accept -------|
# |<------- EAP Success ---------| |
# | | |
# |===== Trafic autorise ========| |
#
# Methodes EAP courantes :
# EAP-TLS : Certificat client + serveur (le plus sur)
# PEAP-MSCHAPv2 : Login/mot de passe avec tunnel TLS (le plus courant)
# EAP-TTLS : Similaire a PEAP, plus flexible
13.6 AP autonome vs controleur
| Caracteristique | AP autonome | AP + Controleur (WLC) |
|---|---|---|
| Configuration | Individuelle (un par un) | Centralisee depuis le controleur |
| Mises a jour firmware | Manuelles sur chaque AP | Deployees depuis le controleur |
| Roaming | Basique | Transparent (fast roaming 802.11r) |
| Gestion RF | Manuelle (canal, puissance) | Automatique (RRM/ARM) |
| Scalabilite | Limitee (10-20 AP max) | Excellente (centaines d'AP) |
| Cout | Bas (pas de controleur) | Eleve (controleur + licences) |
| Usage | Petites structures, SOHO | Entreprises, campus, hotels |
13.7 Conseils pour un site survey (etude de couverture)
- Realiser un site survey avant et apres le deploiement avec des outils dedies (Ekahau, Acrylic, NetSpot)
- Viser un signal de -65 dBm minimum dans les zones de travail (-67 dBm pour la VoIP)
- Prevoir un chevauchement de 15-20% entre les cellules pour un roaming fluide
- Placer les AP en hauteur (2.5 - 3 m), orientees vers le bas, eviter les coins
- Eviter les canaux auto en 2.4 GHz : imposer 1, 6, 11 manuellement
- Reduire la puissance plutot que l'augmenter (evite les interferences inter-AP)
- Separer les SSID : un pour les employes (802.1X), un pour les invites (portail captif, VLAN isole)
- Desactiver les debits bas (1, 2, 5.5, 6, 9 Mbps) pour forcer les clients a se reconnecter a un AP plus proche
14. IPv6
14.1 Pourquoi IPv6 ?
IPv4 offre environ 4.3 milliards d'adresses (2^32), ce qui est insuffisant face a l'explosion des equipements connectes (smartphones, IoT, cloud). IPv6 resout ce probleme avec un espace d'adressage quasi illimite de 2^128 adresses (340 undecillions), tout en ameliorant le routage, la securite et l'auto-configuration.
- Taille d'adresse : 32 bits (IPv4) vs 128 bits (IPv6)
- Notation : Decimale pointee (IPv4) vs Hexadecimale avec deux-points (IPv6)
- ARP : Remplace par NDP (Neighbor Discovery Protocol) en IPv6
- Broadcast : N'existe plus en IPv6, remplace par le multicast
- En-tete : Simplifie en IPv6 (fixe 40 octets, pas de checksum)
- IPsec : Optionnel en IPv4, integre nativement en IPv6
- NAT : Plus necessaire (chaque appareil a une adresse publique unique)
14.2 Format d'une adresse IPv6
Une adresse IPv6 est composee de 8 groupes de 4 chiffres hexadecimaux separes par des deux-points.
# Format complet (8 groupes de 16 bits = 128 bits)
2001:0db8:0000:0000:0000:0000:0000:0001
# Prefixe reseau (64 bits) | Identifiant d'interface (64 bits)
2001:0db8:0000:0001 : 0000:0000:0000:0001
|--- Partie reseau ---| |--- Partie hote ---|
# Notation CIDR : 2001:db8::1/64 (le /64 est le standard pour un sous-reseau)
14.3 Regles d'abreviation
# Regle 1 : Supprimer les zeros en tete de chaque groupe
2001:0db8:0000:0042:0000:0000:0000:0001
--> 2001:db8:0:42:0:0:0:1
# Regle 2 : Remplacer UNE SEULE sequence consecutive de groupes nuls par ::
2001:db8:0:42:0:0:0:1
--> 2001:db8:0:42::1
# Attention : on ne peut utiliser :: qu'UNE SEULE FOIS par adresse
# (sinon l'adresse serait ambigue)
# Exemples :
# Complet --> Abrege
# 2001:0db8:0000:0000:0000:0000:0000:0001 --> 2001:db8::1
# fe80:0000:0000:0000:020c:29ff:fe12:3456 --> fe80::20c:29ff:fe12:3456
# 0000:0000:0000:0000:0000:0000:0000:0001 --> ::1 (loopback)
# 0000:0000:0000:0000:0000:0000:0000:0000 --> :: (adresse non specifiee)
14.4 Types d'adresses IPv6
| Type d'adresse | Prefixe | Portee | Equivalent IPv4 | Description |
|---|---|---|---|---|
| Global Unicast (GUA) | 2000::/3 (commence par 2 ou 3) | Internet | Adresse publique | Routable sur Internet, attribuee par les RIR |
| Link-Local | fe80::/10 | Lien local uniquement | 169.254.0.0/16 (APIPA) | Auto-configuree sur chaque interface, non routable |
| Unique Local (ULA) | fc00::/7 (fd00::/8 en pratique) | Reseau prive | 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 | Usage interne, non routable sur Internet |
| Multicast | ff00::/8 | Variable (selon scope) | 224.0.0.0/4 | Un-vers-plusieurs (remplace le broadcast) |
| Loopback | ::1/128 | Locale | 127.0.0.1 | Boucle locale de la machine |
| Adresse non specifiee | ::/128 | - | 0.0.0.0 | Utilisee avant l'attribution d'une adresse |
ff02::1 : Tous les noeuds du lien local (equivalent broadcast IPv4)
ff02::2 : Tous les routeurs du lien local
ff02::fb : mDNS (multicast DNS)
ff02::1:2 : Tous les agents relais DHCP
14.5 SLAAC vs DHCPv6
IPv6 offre deux methodes principales d'auto-configuration des adresses.
| Caracteristique | SLAAC (Stateless) | DHCPv6 Stateless | DHCPv6 Stateful |
|---|---|---|---|
| Adresse IP | Auto-generee (prefixe RA + EUI-64 ou aleatoire) | Auto-generee (SLAAC) | Attribuee par le serveur DHCPv6 |
| Passerelle | Apprise via RA (Router Advertisement) | Apprise via RA | Apprise via RA |
| DNS, domaine | Via RA (RDNSS, RFC 8106) | Via DHCPv6 | Via DHCPv6 |
| Serveur requis | Non (seulement le routeur) | Oui (serveur DHCPv6 leger) | Oui (serveur DHCPv6 complet) |
| Suivi des adresses | Non | Non | Oui (bail DHCPv6) |
| Usage | Simple, reseau domestique | Entreprise (info DNS via DHCP) | Controle strict des adresses |
14.6 Dual-Stack (double pile)
La strategie Dual-Stack consiste a faire fonctionner IPv4 et IPv6 simultanement sur les memes equipements et interfaces. C'est la methode de transition la plus courante.
# Schema Dual-Stack
#
# [PC Client]
# | IPv4 : 192.168.1.50
# | IPv6 : 2001:db8:1::50
# |
# +--- [Routeur Dual-Stack] --- [Internet IPv4]
# | IPv4 : 192.168.1.1 (acces sites IPv4)
# | IPv6 : 2001:db8:1::1
# |
# +--- [Routeur Dual-Stack] --- [Internet IPv6]
# (acces sites IPv6)
#
# Le systeme choisit automatiquement IPv6 si disponible (RFC 6724)
14.7 Commandes de verification IPv6
# ========================================
# Linux
# ========================================
# Afficher les adresses IPv6
ip -6 addr show
# Afficher la table de routage IPv6
ip -6 route show
# Ping IPv6
ping6 2001:db8::1
# ou
ping -6 2001:db8::1
# Ping link-local (necessite l'interface)
ping6 fe80::1%eth0
# Traceroute IPv6
traceroute6 2001:db8::1
# Voisins IPv6 (equivalent ARP)
ip -6 neigh show
# ========================================
# Windows
# ========================================
# Afficher les adresses IPv6
ipconfig /all
# ou PowerShell :
Get-NetIPAddress -AddressFamily IPv6
# Ping IPv6
ping -6 2001:db8::1
# Ping link-local (avec l'ID de zone)
ping -6 fe80::1%12
# Traceroute IPv6
tracert -6 2001:db8::1
# Table de voisinage IPv6
netsh interface ipv6 show neighbors
# Table de routage IPv6
netsh interface ipv6 show route
ip -6 addr show scope global pour n'afficher que les adresses IPv6 globales (routables), en excluant les link-local. Sur Windows PowerShell : Get-NetIPAddress -AddressFamily IPv6 -PrefixOrigin Dhcp pour voir les adresses attribuees par DHCPv6.
15. Securite reseau
15.1 Listes de controle d'acces (ACL)
Les ACL filtrent le trafic reseau en autorisant ou refusant des paquets selon des criteres definis (adresse source, destination, port, protocole).
| Type d'ACL | Numero (Cisco) | Criteres de filtrage | Placement recommande |
|---|---|---|---|
| ACL Standard | 1-99, 1300-1999 | Adresse IP source uniquement | Le plus pres de la destination |
| ACL Etendue | 100-199, 2000-2699 | IP source, IP destination, protocole, port source, port destination | Le plus pres de la source |
| ACL Nommee | Nom personnalise | Standard ou etendue (selon type) | Selon le type choisi |
# ========================================
# ACL Standard - Cisco
# ========================================
# Autoriser le reseau 192.168.10.0/24
Router(config)# access-list 10 permit 192.168.10.0 0.0.0.255
# Refuser tout le reste (implicite, mais on peut l'ecrire)
Router(config)# access-list 10 deny any log
# Appliquer l'ACL sur une interface (direction IN ou OUT)
Router(config)# interface GigabitEthernet0/1
Router(config-if)# ip access-group 10 in
# ========================================
# ACL Etendue - Cisco
# ========================================
# Autoriser HTTP/HTTPS depuis le LAN vers Internet
Router(config)# access-list 100 permit tcp 192.168.10.0 0.0.0.255 any eq 80
Router(config)# access-list 100 permit tcp 192.168.10.0 0.0.0.255 any eq 443
# Autoriser DNS (UDP 53)
Router(config)# access-list 100 permit udp 192.168.10.0 0.0.0.255 any eq 53
# Autoriser ICMP (ping)
Router(config)# access-list 100 permit icmp 192.168.10.0 0.0.0.255 any
# Refuser tout le reste avec log
Router(config)# access-list 100 deny ip any any log
# Appliquer
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ip access-group 100 in
# ========================================
# ACL Nommee - Cisco
# ========================================
Router(config)# ip access-list extended FILTRAGE-WEB
Router(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq 80
Router(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq 443
Router(config-ext-nacl)# deny ip any any log
Router(config-ext-nacl)# exit
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ip access-group FILTRAGE-WEB in
# Verification
Router# show access-lists
Router# show ip interface GigabitEthernet0/0 | include access
deny any implicite a la fin. Si aucune regle ne correspond, le paquet est rejete. Pensez toujours a ajouter les regles permit necessaires avant ce deny implicite.
15.2 Firewall : Stateful vs Stateless
| Caracteristique | Stateless (sans etat) | Stateful (avec suivi d'etat) |
|---|---|---|
| Fonctionnement | Examine chaque paquet independamment | Suit les connexions (table d'etats) |
| Contexte | Aucun (paquet par paquet) | Connait l'etat de la connexion (NEW, ESTABLISHED, RELATED) |
| Regles retour | Doit creer des regles explicites pour le trafic retour | Autorise automatiquement le trafic retour des connexions etablies |
| Performance | Rapide (pas de table a maintenir) | Legèrement plus lent (table d'etats) |
| Securite | Basique | Elevee |
| Exemple | ACL Cisco, Security Groups AWS | iptables/nftables, pfSense, ASA, FortiGate |
# Exemple iptables (Linux) - Firewall stateful
# Politique par defaut : tout bloquer
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
# Autoriser le trafic des connexions etablies et liees
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# Autoriser le loopback
sudo iptables -A INPUT -i lo -j ACCEPT
# Autoriser SSH depuis le LAN
sudo iptables -A INPUT -p tcp -s 192.168.10.0/24 --dport 22 -j ACCEPT
# Autoriser HTTP/HTTPS
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# Autoriser ICMP (ping)
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
# Logger les paquets refuses
sudo iptables -A INPUT -j LOG --log-prefix "IPTABLES-DROP: "
sudo iptables -A INPUT -j DROP
15.3 IDS / IPS (Detection et Prevention d'intrusion)
| Caracteristique | IDS (Intrusion Detection System) | IPS (Intrusion Prevention System) |
|---|---|---|
| Position | En parallele (copie du trafic via port mirroring) | En ligne (inline, le trafic passe a travers) |
| Action | Detecte et alerte | Detecte, alerte ET bloque |
| Impact trafic | Aucun (passif) | Latence possible (actif) |
| Risque | Attaques non bloquees | Faux positifs bloquant du trafic legitime |
| Outils | Snort (mode IDS), Suricata, Zeek | Snort (mode IPS), Suricata, Cisco Firepower |
# Architecture IDS vs IPS
#
# IDS (mode passif - port mirroring) :
#
# [Internet] ----> [Firewall] ----> [Switch] ----> [LAN]
# |
# (port mirror)
# |
# [IDS] --> Alertes
#
# IPS (mode inline) :
#
# [Internet] ----> [Firewall] ----> [IPS] ----> [Switch] ----> [LAN]
# |
# Bloque si menace
15.4 Segmentation reseau
La segmentation isole les differentes zones du reseau pour limiter la propagation des attaques (mouvement lateral) et appliquer le principe du moindre privilege.
- VLANs : Segmentation logique au niveau L2 (voir section 6)
- Sous-reseaux : Segmentation au niveau L3 avec filtrage inter-reseaux
- DMZ : Zone tampon pour les services exposes a Internet (voir section 9)
- Micro-segmentation : Politiques de securite granulaires au niveau de chaque workload (VMware NSX, Cisco ACI)
- Zero Trust : Ne faire confiance a aucun trafic, meme interne. Verifier chaque acces.
- Zones de securite : Regrouper les systemes par niveau de criticite (production, developpement, management)
15.5 802.1X - Controle d'acces au reseau (NAC)
Le 802.1X controle l'acces au reseau filaire et Wi-Fi en authentifiant chaque equipement ou utilisateur avant de lui accorder un acces.
# Configuration 802.1X sur un port switch Cisco
SW-CORE-01(config)# aaa new-model
SW-CORE-01(config)# aaa authentication dot1x default group radius
SW-CORE-01(config)# aaa authorization network default group radius
# Activer 802.1X globalement
SW-CORE-01(config)# dot1x system-auth-control
# Configurer le serveur RADIUS
SW-CORE-01(config)# radius server RADIUS-SRV
SW-CORE-01(config-radius-server)# address ipv4 192.168.10.50 auth-port 1812 acct-port 1813
SW-CORE-01(config-radius-server)# key MonSecretRADIUS!
SW-CORE-01(config-radius-server)# exit
# Activer 802.1X sur un port acces
SW-CORE-01(config)# interface GigabitEthernet0/5
SW-CORE-01(config-if)# switchport mode access
SW-CORE-01(config-if)# authentication port-control auto
SW-CORE-01(config-if)# dot1x pae authenticator
SW-CORE-01(config-if)# exit
# Verification
SW-CORE-01# show dot1x all
SW-CORE-01# show authentication sessions
15.6 VPN (Virtual Private Network)
| Caracteristique | VPN IPsec | VPN SSL/TLS |
|---|---|---|
| Couche OSI | Couche 3 (reseau) | Couche 4-7 (transport/application) |
| Client requis | Oui (client IPsec dedie) | Non (navigateur web) ou client leger |
| Acces | Reseau complet (tunnel L3) | Applications specifiques ou reseau complet |
| Ports | UDP 500 (IKE), UDP 4500 (NAT-T), protocole ESP (50) | TCP 443 (traverse facilement les firewalls) |
| Usage principal | Site-to-Site (interconnexion de sites) | Remote Access (teletravail) |
| Outils | strongSwan, Cisco ASA, FortiGate | OpenVPN, Cisco AnyConnect, WireGuard |
15.7 Bonnes pratiques de securite reseau
- Changer les mots de passe par defaut de tous les equipements reseau
- Desactiver les ports inutilises sur les switches (shutdown)
- Utiliser SSH au lieu de Telnet pour l'administration
- Segmenter le reseau en VLANs avec filtrage inter-VLAN
- Mettre en place 802.1X pour le controle d'acces filaire et Wi-Fi
- Activer DHCP Snooping et Dynamic ARP Inspection (DAI)
- Deployer un IDS/IPS pour detecter les menaces
- Appliquer les mises a jour firmware regulierement sur tous les equipements
- Centraliser les logs (syslog) et surveiller avec un SIEM
- Sauvegarder les configurations des equipements regulierement
- Documenter la topologie et les regles de filtrage
- Principe du moindre privilege : n'autoriser que le strict necessaire
16. Outils de diagnostic
16.1 ping - Test de connectivite
Envoie des paquets ICMP Echo Request et attend des Echo Reply. Permet de verifier la joignabilite d'un hote et mesurer la latence.
# Syntaxe de base
ping 192.168.1.1
ping google.com
# Options utiles (Linux)
ping -c 5 192.168.1.1 # Limiter a 5 paquets
ping -i 0.5 192.168.1.1 # Intervalle de 0.5 seconde
ping -s 1400 192.168.1.1 # Taille de paquet personnalisee (test MTU)
ping -W 2 192.168.1.1 # Timeout de 2 secondes
ping -t 64 192.168.1.1 # Definir le TTL
ping -f 192.168.1.1 # Flood ping (test de charge - root uniquement)
# Options utiles (Windows)
ping -n 5 192.168.1.1 # Limiter a 5 paquets
ping -t 192.168.1.1 # Ping continu (Ctrl+C pour arreter)
ping -l 1400 192.168.1.1 # Taille de paquet personnalisee
ping -w 2000 192.168.1.1 # Timeout en millisecondes
# Interpretation de la sortie :
# 64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.523 ms
# | | |
# Taille reponse TTL restant Latence (round-trip)
#
# TTL = 64 --> Probablement Linux
# TTL = 128 --> Probablement Windows
# TTL = 255 --> Probablement equipement reseau (Cisco)
#
# "Destination Host Unreachable" --> Pas de route vers l'hote
# "Request timed out" --> Hote injoignable ou ICMP filtre
# "TTL expired in transit" --> Boucle de routage ou trop de sauts
16.2 traceroute / tracert - Trace du chemin reseau
Affiche chaque routeur (saut) traverse entre la source et la destination, avec la latence a chaque etape.
# Linux
traceroute 8.8.8.8
traceroute -n 8.8.8.8 # Sans resolution DNS (plus rapide)
traceroute -T -p 443 8.8.8.8 # Utiliser TCP au lieu d'UDP (traverse mieux les firewalls)
traceroute -I 8.8.8.8 # Utiliser ICMP
# Windows
tracert 8.8.8.8
tracert -d 8.8.8.8 # Sans resolution DNS
# Interpretation :
# 1 192.168.1.1 1.234 ms 1.112 ms 0.987 ms <-- Passerelle locale
# 2 10.0.0.1 5.432 ms 5.123 ms 5.234 ms <-- Routeur FAI
# 3 * * * <-- Routeur ne repond pas (ICMP filtre)
# 4 72.14.232.35 15.23 ms 14.98 ms 15.45 ms <-- Routeur intermediaire
# 5 8.8.8.8 16.12 ms 15.89 ms 16.34 ms <-- Destination atteinte
#
# * * * = Le routeur filtre les paquets ICMP (pas forcement un probleme)
# Latence elevee a un saut = goulet d'etranglement possible
# Latence elevee a partir d'un saut = probleme sur ce segment
16.3 nslookup / dig - Resolution DNS
# nslookup (Windows & Linux)
nslookup google.com # Resolution simple
nslookup google.com 8.8.8.8 # Utiliser un serveur DNS specifique
nslookup -type=MX mondomaine.com # Enregistrements MX (mail)
nslookup -type=NS mondomaine.com # Serveurs de noms
nslookup -type=TXT mondomaine.com # Enregistrements TXT (SPF, DKIM)
nslookup -type=AAAA mondomaine.com # Enregistrements IPv6
# dig (Linux - plus detaille et precis)
dig google.com # Resolution A (IPv4)
dig google.com AAAA # Resolution AAAA (IPv6)
dig google.com MX # Enregistrements MX
dig google.com +short # Sortie courte (IP uniquement)
dig @8.8.8.8 google.com # Utiliser un serveur DNS specifique
dig google.com +trace # Trace complete de la resolution DNS
dig -x 8.8.8.8 # Reverse DNS (IP --> nom)
dig google.com ANY +noall +answer # Tous les enregistrements
# Interpretation dig :
# ;; ANSWER SECTION:
# google.com. 300 IN A 142.250.179.78
# | | | | |
# Nom TTL Classe Type Valeur
#
# TTL = 300 secondes = duree de mise en cache
16.4 arp - Table ARP (correspondance IP / MAC)
# Afficher la table ARP
arp -a # Windows et Linux
ip neigh show # Linux (commande moderne)
# Sortie typique :
# 192.168.1.1 dev eth0 lladdr aa:bb:cc:dd:ee:ff REACHABLE
# | | |
# Adresse IP Adresse MAC Etat
#
# Etats : REACHABLE (joignable), STALE (expire), INCOMPLETE (resolution en cours)
# Supprimer une entree ARP
sudo arp -d 192.168.1.1 # Linux/Windows
sudo ip neigh del 192.168.1.1 dev eth0 # Linux moderne
# Ajouter une entree statique (anti ARP spoofing)
sudo arp -s 192.168.1.1 aa:bb:cc:dd:ee:ff
16.5 ipconfig / ifconfig / ip - Configuration des interfaces
# ========================================
# Windows - ipconfig
# ========================================
ipconfig # Resume des interfaces
ipconfig /all # Details complets (MAC, DHCP, DNS, bail)
ipconfig /release # Liberer le bail DHCP
ipconfig /renew # Renouveler le bail DHCP
ipconfig /flushdns # Vider le cache DNS local
ipconfig /displaydns # Afficher le cache DNS
# PowerShell (plus moderne)
Get-NetIPConfiguration
Get-NetAdapter | Format-Table Name, Status, MacAddress, LinkSpeed
# ========================================
# Linux - ip (commande moderne, remplace ifconfig)
# ========================================
ip addr show # Afficher toutes les interfaces
ip addr show eth0 # Afficher une interface specifique
ip link show # Etat des interfaces (UP/DOWN)
ip -s link show # Statistiques (paquets, erreurs, drops)
ip route show # Table de routage
# Configurer une adresse IP
sudo ip addr add 192.168.1.50/24 dev eth0
sudo ip link set eth0 up
# Linux - ifconfig (ancien, encore disponible)
ifconfig # Afficher toutes les interfaces
ifconfig eth0 # Interface specifique
sudo ifconfig eth0 192.168.1.50 netmask 255.255.255.0 up
16.6 netstat / ss - Connexions et ports en ecoute
# ========================================
# netstat (Windows & Linux)
# ========================================
netstat -an # Toutes les connexions, format numerique
netstat -tuln # Linux : TCP/UDP en ecoute, format numerique
netstat -tunap # Linux : avec PID/nom du processus (root)
netstat -ano # Windows : avec PID
netstat -rn # Table de routage
# ========================================
# ss (Linux moderne, remplace netstat - plus rapide)
# ========================================
ss -tuln # TCP/UDP en ecoute
ss -tunap # Avec processus associe
ss -s # Resume statistiques
ss -t state established # Connexions TCP etablies uniquement
ss -t dst 192.168.1.1 # Connexions vers une IP specifique
ss -t sport = :80 # Connexions sur le port source 80
# Interpretation :
# Proto Local Address Foreign Address State PID/Program
# tcp 0.0.0.0:22 0.0.0.0:* LISTEN 1234/sshd
# tcp 192.168.1.50:22 10.0.0.1:54321 ESTABLISHED 5678/sshd
#
# LISTEN = Port en ecoute, en attente de connexion
# ESTABLISHED = Connexion active
# TIME_WAIT = Connexion fermee, en attente de liberation
# CLOSE_WAIT = L'autre cote a ferme, en attente de fermeture locale
16.7 nmap - Scanner de ports et de reseau
# Scan de base (ports les plus courants)
nmap 192.168.1.1
# Scan d'un sous-reseau entier (decouverte d'hotes)
nmap -sn 192.168.1.0/24 # Ping scan (pas de scan de ports)
# Scan de ports specifiques
nmap -p 22,80,443 192.168.1.1 # Ports specifiques
nmap -p 1-1024 192.168.1.1 # Plage de ports
nmap -p- 192.168.1.1 # Tous les 65535 ports
# Scan avance
nmap -sV 192.168.1.1 # Detection des versions de services
nmap -O 192.168.1.1 # Detection du systeme d'exploitation
nmap -A 192.168.1.1 # Scan agressif (OS + version + scripts + traceroute)
nmap -sS 192.168.1.1 # SYN scan (furtif, root requis)
nmap -sU 192.168.1.1 # Scan UDP
# Sortie dans un fichier
nmap -oN scan_resultat.txt 192.168.1.0/24 # Format texte
nmap -oX scan_resultat.xml 192.168.1.0/24 # Format XML
# Interpretation :
# PORT STATE SERVICE VERSION
# 22/tcp open ssh OpenSSH 8.9 (Ubuntu Linux)
# 80/tcp open http Apache httpd 2.4.52
# 443/tcp open ssl/http Apache httpd 2.4.52
# 3306/tcp filtered mysql
#
# open = Port accessible et service actif
# closed = Port accessible mais aucun service
# filtered = Port filtre par un firewall (pas de reponse)
16.8 tcpdump / Wireshark - Capture et analyse de paquets
# ========================================
# tcpdump (Linux - ligne de commande)
# ========================================
# Capturer tout le trafic sur une interface
sudo tcpdump -i eth0
# Capturer avec details et sans resolution DNS
sudo tcpdump -i eth0 -nn -v
# Filtrer par hote
sudo tcpdump -i eth0 host 192.168.1.1
# Filtrer par port
sudo tcpdump -i eth0 port 80
sudo tcpdump -i eth0 port 53 # Trafic DNS
# Filtrer par protocole
sudo tcpdump -i eth0 icmp # Seulement ICMP (ping)
sudo tcpdump -i eth0 tcp # Seulement TCP
# Combinaisons
sudo tcpdump -i eth0 src 192.168.1.50 and dst port 443
sudo tcpdump -i eth0 'tcp[tcpflags] & (tcp-syn) != 0' # SYN uniquement
# Sauvegarder la capture pour analyse dans Wireshark
sudo tcpdump -i eth0 -w capture.pcap -c 1000 # 1000 paquets max
# Lire une capture
sudo tcpdump -r capture.pcap -nn
# ========================================
# Wireshark - Filtres d'affichage courants
# ========================================
# Filtres par protocole
# http
# dns
# tcp
# arp
# icmp
# Filtres par adresse
# ip.addr == 192.168.1.1 (source OU destination)
# ip.src == 192.168.1.1 (source uniquement)
# ip.dst == 10.0.0.1 (destination uniquement)
# Filtres par port
# tcp.port == 443
# tcp.dstport == 80
# udp.port == 53
# Filtres combines
# ip.addr == 192.168.1.1 && tcp.port == 80
# http.request.method == "GET"
# dns.qry.name contains "google"
# tcp.flags.syn == 1 && tcp.flags.ack == 0 (SYN sans ACK = nouvelles connexions)
16.9 mtr - Combinaison ping + traceroute
mtr (My Traceroute) combine ping et traceroute en un seul outil avec des statistiques en temps reel sur chaque saut.
# Utilisation de base (mode interactif)
mtr 8.8.8.8
# Mode rapport (non interactif, ideal pour scripts)
mtr -r -c 100 8.8.8.8 # 100 paquets, mode rapport
mtr -r -c 100 -n 8.8.8.8 # Sans resolution DNS
# Avec TCP au lieu d'ICMP
mtr -T -P 443 8.8.8.8 # TCP sur le port 443
# Sortie CSV pour traitement
mtr -r -c 50 --csv 8.8.8.8
# Interpretation de la sortie mtr :
# Loss% Snt Last Avg Best Wrst StDev
# 1. 192.168.1.1 0.0% 100 0.5 0.6 0.3 1.2 0.2
# 2. 10.0.0.1 0.0% 100 5.2 5.4 4.8 8.1 0.5
# 3. 72.14.232.35 5.0% 100 15.3 16.1 14.2 45.3 4.2
# 4. 8.8.8.8 0.0% 100 16.5 16.8 15.1 22.4 1.1
#
# Loss% = Pourcentage de perte au saut (>5% = probleme potentiel)
# Snt = Nombre de paquets envoyes
# Last = Latence du dernier paquet
# Avg = Latence moyenne
# Best = Meilleure latence
# Wrst = Pire latence
# StDev = Ecart-type (variation, gigue)
#
# Perte a un saut intermediaire UNIQUEMENT = normal (rate limiting ICMP)
# Perte a un saut ET a tous les suivants = probleme sur ce segment
- ping : Verifier rapidement si un hote est joignable
- traceroute/mtr : Identifier OU se situe un probleme de latence ou de perte
- nslookup/dig : Problemes de resolution DNS
- arp/ip neigh : Problemes de communication sur le LAN (couche 2)
- netstat/ss : Verifier quels ports sont ouverts et quelles connexions sont actives
- nmap : Audit de securite, decouverte de services
- tcpdump/Wireshark : Analyse approfondie du trafic, debug de protocoles
17. Depannage reseau
17.1 Methodologie couche par couche (bottom-up)
L'approche bottom-up (de la couche physique vers la couche application) est la methode la plus fiable pour diagnostiquer un probleme reseau. On verifie chaque couche dans l'ordre, en remontant uniquement quand la couche inferieure est validee.
# Arbre de decision - Depannage bottom-up
#
# PROBLEME RESEAU DETECTE
# |
# +--[Couche 1 - Physique]
# | |-- Cable branche ? LED du port allumee ?
# | |-- Cable endommage ? Tester avec un autre cable
# | |-- Port switch fonctionnel ? Tester sur un autre port
# | |-- Alimentation PoE OK ? (si applicable)
# | +-- OK ? --> Passer a la couche 2
# |
# +--[Couche 2 - Liaison]
# | |-- Adresse MAC apprise par le switch ? (show mac address-table)
# | |-- VLAN correct ? (show vlan brief)
# | |-- Port en err-disabled ? (show interfaces status)
# | |-- STP bloque le port ? (show spanning-tree)
# | |-- Duplex mismatch ? (show interfaces)
# | +-- OK ? --> Passer a la couche 3
# |
# +--[Couche 3 - Reseau]
# | |-- Adresse IP correcte ? Masque correct ?
# | |-- Passerelle configuree et joignable ? (ping gateway)
# | |-- Route vers la destination ? (show ip route / ip route)
# | |-- ACL bloquante ? (show access-lists)
# | |-- ICMP filtre ? (tester TCP directement)
# | +-- OK ? --> Passer a la couche 4
# |
# +--[Couche 4 - Transport]
# | |-- Port TCP/UDP ouvert ? (netstat/ss, nmap)
# | |-- Firewall local bloque le port ? (iptables, Windows Firewall)
# | |-- Service en ecoute ? (ss -tuln)
# | +-- OK ? --> Passer a la couche 7
# |
# +--[Couche 7 - Application]
# |-- Service demarre ? (systemctl status / services.msc)
# |-- Configuration du service correcte ?
# |-- DNS fonctionne ? (nslookup/dig)
# |-- Certificat SSL valide ? (openssl s_client)
# +-- Logs du service ? (journalctl / Event Viewer)
17.2 Problemes courants par couche
| Couche | Probleme courant | Symptome | Commande de diagnostic | Solution |
|---|---|---|---|---|
| 1 - Physique | Cable defectueux | Pas de lien, LED eteinte | show interfaces status |
Remplacer le cable, tester avec un testeur |
| 1 - Physique | Mauvais type de cable (droit/croise) | Pas de lien sur ancien equipement | Verification visuelle des connecteurs | Utiliser le bon type ou activer Auto-MDIX |
| 2 - Liaison | VLAN incorrect | Pas de communication avec les autres postes du meme reseau | show vlan brief |
Verifier et corriger l'affectation VLAN du port |
| 2 - Liaison | Port en err-disabled | Lien detecte puis coupe immediatement | show interfaces status err-disabled |
shutdown puis no shutdown, corriger la cause (port-security, BPDU guard) |
| 2 - Liaison | Duplex mismatch | Lenteur, erreurs CRC, collisions tardives | show interfaces |
Forcer le meme duplex des deux cotes ou auto/auto |
| 2 - Liaison | Boucle STP | Broadcast storm, reseau sature | show spanning-tree |
Verifier la topologie STP, activer BPDU Guard sur les ports acces |
| 3 - Reseau | Mauvaise adresse IP ou masque | Pas de communication reseau | ipconfig /all ou ip addr show |
Corriger l'adresse IP et le masque |
| 3 - Reseau | Passerelle manquante ou fausse | Communication locale OK, mais pas inter-reseaux | ip route show ou route print |
Configurer la bonne passerelle par defaut |
| 3 - Reseau | ACL trop restrictive | Certains services bloques | show access-lists |
Verifier et corriger les regles ACL |
| 4 - Transport | Port filtre par un firewall | Connexion timeout sur le port | nmap -p PORT IP, ss -tuln |
Ouvrir le port dans le firewall |
| 4 - Transport | Service non demarre | Connection refused | ss -tuln, systemctl status service |
Demarrer le service |
| 7 - Application | DNS defaillant | Navigation web impossible, ping par IP OK | nslookup google.com |
Verifier la config DNS, tester avec 8.8.8.8 |
| 7 - Application | Certificat SSL expire | Erreur HTTPS dans le navigateur | openssl s_client -connect host:443 |
Renouveler le certificat SSL |
17.3 Checklist de verification rapide
1. Le cable est-il branche ? La LED du port est-elle allumee (verte/orange) ?
2. L'adresse IP est-elle correcte ? (
ipconfig /all ou ip addr show)3. La passerelle repond-elle au ping ? (
ping 192.168.x.1)4. Le DNS fonctionne-t-il ? (
nslookup google.com)5. Internet est-il joignable ? (
ping 8.8.8.8 - teste sans DNS)6. Le service cible est-il en ecoute ? (
nmap -p PORT IP)7. Un firewall bloque-t-il le trafic ? (verifier iptables, Windows Firewall, equipements reseau)
8. Y a-t-il eu un changement recent ? (mise a jour, modification de config, deplacement de cable)
17.4 Scenario 1 : Un poste n'a plus acces a Internet
# Etape 1 : Verifier la connectivite physique
# --> LED du port allumee ? Cable bien branche ?
# Si LED eteinte : tester un autre cable, un autre port switch
# Etape 2 : Verifier la configuration IP
ipconfig /all # Windows
ip addr show # Linux
# Resultat attendu : IP valide, masque correct, passerelle configuree
# Si IP en 169.254.x.x (APIPA) : le DHCP ne repond pas
# --> Verifier le serveur DHCP, le VLAN, le DHCP relay
# Etape 3 : Ping de la passerelle
ping 192.168.1.1
# Si echec : probleme L2 (VLAN, STP, port-security) ou L3 (mauvaise IP/masque)
# Si succes : passer a l'etape 4
# Etape 4 : Ping d'une IP publique
ping 8.8.8.8
# Si echec : probleme de routage ou firewall entre le LAN et Internet
# Si succes : passer a l'etape 5
# Etape 5 : Test DNS
nslookup google.com
# Si echec : probleme DNS
# --> Verifier la config DNS du poste
# --> Tester avec un autre serveur : nslookup google.com 8.8.8.8
# --> Vider le cache DNS : ipconfig /flushdns
# Si succes a toutes les etapes : le probleme est applicatif
# --> Verifier le proxy, le navigateur, le certificat SSL
17.5 Scenario 2 : Lenteur reseau generalisee
# Etape 1 : Identifier l'ampleur du probleme
# --> Un seul poste ? Un VLAN ? Tout le reseau ?
# Etape 2 : Verifier les interfaces du switch/routeur
show interfaces | include errors|drops|CRC
show interfaces counters errors
# Beaucoup d'erreurs CRC --> Cable defectueux ou duplex mismatch
# Beaucoup de drops --> Saturation du port ou QoS mal configuree
# Input/Output errors elevees --> Probleme materiel
# Etape 3 : Verifier la charge CPU et memoire des equipements
show processes cpu history # Cisco
show memory statistics # Cisco
# CPU > 80% en permanence --> Boucle STP, broadcast storm, attaque
# Etape 4 : Verifier la bande passante
# Sur le poste : tester avec iperf3 (outil de mesure de debit)
# Serveur : iperf3 -s
# Client : iperf3 -c 192.168.1.100 -t 30
# Etape 5 : Capturer le trafic pour analyse
sudo tcpdump -i eth0 -w /tmp/capture.pcap -c 5000
# Ouvrir dans Wireshark, chercher :
# - Broadcast excessif (filtre : eth.dst == ff:ff:ff:ff:ff:ff)
# - Retransmissions TCP (filtre : tcp.analysis.retransmission)
# - Trafic anormal (gros volumes inattendus)
# Etape 6 : Verifier STP
show spanning-tree summary
show spanning-tree detail | include forward|blocking|err
# Ports en forwarding/blocking inattendus = topologie STP instable
17.6 Scenario 3 : Deux VLANs ne communiquent plus
# Contexte : VLAN 10 (192.168.10.0/24) et VLAN 20 (192.168.20.0/24)
# ne communiquent plus entre eux
# Etape 1 : Verifier la communication intra-VLAN
# Depuis un PC VLAN 10, ping un autre PC VLAN 10
ping 192.168.10.x
# --> Si echec intra-VLAN, le probleme est plus bas (L1/L2)
# Etape 2 : Verifier que le routeur/switch L3 est joignable
ping 192.168.10.1 # Passerelle VLAN 10
ping 192.168.20.1 # Passerelle VLAN 20
# Si passerelle injoignable :
# --> Verifier l'interface VLAN sur le switch L3 / routeur
show ip interface brief | include Vlan
# --> L'interface est-elle UP/UP ?
# --> L'adresse IP est-elle correcte ?
# Etape 3 : Verifier le routage inter-VLAN
show ip route
# --> Y a-t-il une route pour 192.168.10.0/24 et 192.168.20.0/24 ?
# --> Sur un switch L3 : les interfaces VLAN sont-elles configurees avec "no shutdown" ?
# Etape 4 : Verifier les ACL
show access-lists
show ip interface Vlan10 | include access
show ip interface Vlan20 | include access
# --> Une ACL bloque-t-elle le trafic inter-VLAN ?
# Etape 5 : Verifier le trunk
show interfaces trunk
# --> Les VLAN 10 et 20 sont-ils autorises sur le trunk ?
# --> Le trunk est-il en mode "trunking" (pas "access") ?
# Si VLAN manquant :
# switchport trunk allowed vlan add 10,20
# Etape 6 : Verifier la configuration VLAN
show vlan brief
# --> Les VLAN existent-ils sur tous les switches impliques ?
# --> Les ports sont-ils dans le bon VLAN ?