# Adressage IP > Chaque appareil connecté à un réseau possède une adresse unique qui permet de l'identifier : c'est l'adresse IP. --------- ## Qu'est-ce qu'une adresse IP ? Une **adresse IP** (Internet Protocol) est un identifiant numérique attribué à chaque appareil connecté à un réseau utilisant le protocole IP. Elle permet : - D'**identifier** de manière unique chaque machine sur le réseau - De **localiser** cette machine pour lui envoyer des données - De **router** les paquets de données à travers Internet ### Analogie Tout comme votre adresse postale permet au facteur de vous livrer votre courrier, l'adresse IP permet aux données de trouver leur destinataire sur le réseau. --------- ## IPv4 : Structure d'une adresse Une adresse IPv4 est composée de **4 octets** (32 bits), séparés par des points. Chaque octet peut prendre une valeur comprise entre **0 et 255**. ``` Exemple : 192.168.1.25 ``` | Octet 1 | Octet 2 | Octet 3 | Octet 4 | |:-------:|:-------:|:-------:|:-------:| | 192 | 168 | 1 | 25 | | 11000000 | 10101000 | 00000001 | 00011001 | ### Nombre d'adresses possibles Avec 32 bits, on peut théoriquement avoir $`2^{32}`$ = **4 294 967 296** adresses différentes. > **Problème** : Ce nombre est aujourd'hui insuffisant ! C'est pourquoi IPv6 a été créé (128 bits). --------- ## Adresses publiques et privées ### Adresses publiques Une adresse **publique** est unique sur Internet. Elle est attribuée par votre fournisseur d'accès (FAI) et permet à votre box d'être identifiée sur le réseau mondial. ### Adresses privées Les adresses **privées** sont réservées aux réseaux locaux (LAN). Elles ne sont pas routables sur Internet. | Classe | Plage d'adresses | Nombre d'adresses | |--------|------------------|-------------------| | A | 10.0.0.0 → 10.255.255.255 | 16 millions | | B | 172.16.0.0 → 172.31.255.255 | 1 million | | C | 192.168.0.0 → 192.168.255.255 | 65 536 | > **Remarque** : Chez vous, vos appareils ont probablement une adresse en 192.168.x.x --------- ## Le masque de sous-réseau Le **masque de sous-réseau** permet de distinguer deux parties dans une adresse IP : - La partie **réseau** (commune à toutes les machines du même réseau) - La partie **hôte** (unique pour chaque machine) ### Notation Le masque s'écrit comme une adresse IP, avec des bits à 1 pour la partie réseau et des bits à 0 pour la partie hôte. | Masque | Notation CIDR | Bits réseau | Bits hôte | |--------|---------------|-------------|-----------| | 255.0.0.0 | /8 | 8 | 24 | | 255.255.0.0 | /16 | 16 | 16 | | 255.255.255.0 | /24 | 24 | 8 | | 255.255.255.128 | /25 | 25 | 7 | | 255.255.255.192 | /26 | 26 | 6 | ### Exemple Avec l'adresse **192.168.1.25** et le masque **255.255.255.0** (/24) : ``` Adresse IP : 192.168.1.25 Masque : 255.255.255.0 ───────────── Partie réseau : 192.168.1.x (les 3 premiers octets) Partie hôte : x.x.x.25 (le dernier octet) ``` Toutes les machines du réseau **192.168.1.0/24** auront une adresse de la forme **192.168.1.X** où X varie de 1 à 254. --------- ## La méthode magique pour calculer les adresses Voici une méthode simple et rapide pour calculer les adresses d'un réseau à partir d'une adresse IP et de son masque. ### Le nombre magique Le **nombre magique** = 256 - valeur de l'octet "intéressant" du masque L'octet "intéressant" est celui qui n'est ni 255 ni 0. ### Exemple 1 : Masque /24 (255.255.255.0) **Adresse** : 192.168.1.25/24 L'octet intéressant est le 4ème : **0** Nombre magique = 256 - 0 = **256** (donc tout le dernier octet) | Élément | Calcul | Résultat | |---------|--------|----------| | Adresse réseau | Mettre 0 dans la partie hôte | **192.168.1.0** | | Première adresse utilisable | Adresse réseau + 1 | **192.168.1.1** | | Dernière adresse utilisable | Broadcast - 1 | **192.168.1.254** | | Adresse de broadcast | Mettre 255 dans la partie hôte | **192.168.1.255** | | Nombre d'hôtes | $`2^8 - 2 = 254`$ | **254 machines** | ### Exemple 2 : Masque /26 (255.255.255.192) **Adresse** : 192.168.1.130/26 L'octet intéressant est le 4ème : **192** Nombre magique = 256 - 192 = **64** Les adresses réseau sont donc des multiples de 64 : 0, 64, 128, 192... Puisque 130 est compris entre **128** et **192**, notre réseau commence à 128. | Élément | Calcul | Résultat | |---------|--------|----------| | Adresse réseau | Plus grand multiple de 64 ≤ 130 | **192.168.1.128** | | Première adresse utilisable | 128 + 1 | **192.168.1.129** | | Dernière adresse utilisable | 128 + 64 - 1 - 1 = 190 | **192.168.1.190** | | Adresse de broadcast | 128 + 64 - 1 = 191 | **192.168.1.191** | | Nombre d'hôtes | $`2^6 - 2 = 62`$ | **62 machines** | ### Exemple 3 : Masque /20 (255.255.240.0) **Adresse** : 172.16.45.100/20 L'octet intéressant est le 3ème : **240** Nombre magique = 256 - 240 = **16** Les adresses réseau (sur le 3ème octet) sont des multiples de 16 : 0, 16, 32, 48... Puisque 45 est compris entre **32** et **48**, notre réseau commence à 32. | Élément | Résultat | |---------|----------| | Adresse réseau | **172.16.32.0** | | Première adresse utilisable | **172.16.32.1** | | Dernière adresse utilisable | **172.16.47.254** | | Adresse de broadcast | **172.16.47.255** | | Nombre d'hôtes | $`2^{12} - 2 = 4094`$ | **4094 machines** | --------- ## Tableau récapitulatif des masques courants | CIDR | Masque | Nombre magique | Nombre d'hôtes | |------|--------|----------------|----------------| | /8 | 255.0.0.0 | 256 (octet 2) | 16 777 214 | | /16 | 255.255.0.0 | 256 (octet 3) | 65 534 | | /24 | 255.255.255.0 | 256 (octet 4) | 254 | | /25 | 255.255.255.128 | 128 | 126 | | /26 | 255.255.255.192 | 64 | 62 | | /27 | 255.255.255.224 | 32 | 30 | | /28 | 255.255.255.240 | 16 | 14 | | /29 | 255.255.255.248 | 8 | 6 | | /30 | 255.255.255.252 | 4 | 2 | --------- ## Exercices ### Exercice 1 : Identification Pour chaque adresse, indiquez s'il s'agit d'une adresse publique ou privée : 1. 192.168.0.1 2. 8.8.8.8 3. 10.0.0.50 4. 172.20.1.1 5. 91.198.174.192 ### Exercice 2 : Calcul d'adresses (méthode magique) Pour chaque adresse IP et masque, calculez : - L'adresse réseau - La première adresse utilisable - La dernière adresse utilisable - L'adresse de broadcast - Le nombre d'hôtes possibles 1. **192.168.10.50/24** 2. **10.0.0.100/8** 3. **172.16.100.200/26** 4. **192.168.5.67/28** 5. **10.10.10.10/20** ### Exercice 3 : Appartenance au même réseau Les machines suivantes peuvent-elles communiquer directement (sans routeur) ? 1. Machine A : 192.168.1.10/24 et Machine B : 192.168.1.200/24 2. Machine A : 192.168.1.10/24 et Machine B : 192.168.2.10/24 3. Machine A : 10.0.0.5/8 et Machine B : 10.255.255.250/8 4. Machine A : 172.16.50.10/26 et Machine B : 172.16.50.100/26 ### Exercice 4 : Conception de réseau Une entreprise dispose de l'adresse réseau **192.168.0.0/24** et souhaite créer 4 sous-réseaux de taille égale. 1. Quel masque de sous-réseau faut-il utiliser ? 2. Quelles sont les plages d'adresses pour chaque sous-réseau ? 3. Combien de machines peut-on adresser dans chaque sous-réseau ? > **[Voir la correction](./CORRECTION.md)** --------- ## Pour aller plus loin - **IPv6** : Le successeur d'IPv4 avec des adresses sur 128 bits - **NAT** : Network Address Translation, permet à plusieurs machines de partager une seule IP publique - **DHCP** : Attribution automatique des adresses IP --------- Auteur : Florian Mathieu Licence CC BY NC Licence Creative Commons
Ce cours est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.