Rappels et exercices préparatoires
Durée1h00
L’adressage IPv4
Une adresse IPv4 (par exemple, 192.168.1.1) se représente sous forme de quatre entiers de 8 bits séparés par des points.
Chaque entier est compris entre 0 et 255 (correspondant à 8 bits). Ces quatre entiers forment une adresse unique sur un réseau IPv4.
- Les bits les plus à gauche identifient le réseau.
- Les bits les plus à droite identifient l’équipement.
Masque de réseau
Un masque de réseau IPv4 (par exemple, 255.255.255.0) se compose également de quatre octets.
Il définit quelle partie de l’adresse correspond au réseau et quelle partie correspond à l’hôte.
- La partie du masque avec des bits à 1 indique la portion qui identifie le réseau.
- La partie avec des bits à 0 indique la portion qui identifie hôte.
Exemple de masque : 255.255.255.0 (correspondant à un prefix /24)
- En binaire :
11111111.11111111.11111111.00000000
- Les 24 premiers bits (prenant la valeur 1) sont pour le réseau.
- Les 8 derniers bits (prenant la valeur 0) sont pour les hôtes.
Utilité du masque et adresse du réseau
L’adresse IPv4 et le masque de sous-réseau sont utiles pour déterminer si deux adresses IPv4 (et donc si les deux équipements identifiés par cette adresse) sont dans le même réseau ou non.
En appliquant une opération ET logique entre une adresse IP et un masque, nous déterminons l’adresse du réseau.
Exemple :
| Adresse IP |
192.168.1.10 |
11000000.10101000.00000001.00001010 |
| Masque |
255.255.255.0 |
11111111.11111111.11111111.00000000 |
| Adresse réseau |
192.168.1.0 |
11000000.10101000.00000001.00000000 |
Sous-réseaux
Un sous-réseau est une partie d’un réseau plus vaste.
Le sous-réseau 192.168.1.0/24 fait partie du réseau 192.168.0.0/16 qui fait lui-même partie
du réseau 192.0.0.0/8 par exemple.
Quizz
---
primary_color: steelblue
secondary_color: lightgray
text_color: black
shuffle_questions: false
shuffle_answers: true
---
### Quelle est la longueur d'une adresse IPv4 ?
- [X] 32 bits
> Bonne réponse, une adresse IPv4 est codée sur 32 bits, soit quatre octets, et est écrite sous forme de quatre entiers séparés par des points (ex : 192.168.0.1)
- [ ] 128 bits
> Mauvaise réponse, une adresse IPv4 est codée sur 32 bits, soit quatre octets, et est souvent écrite sous forme de quatre nombres séparés par des points (ex : 192.168.0.1). Une adresse de 128 bits soit 16 octets correspond à une adresse IPv6
### Quel est l'avantage/désavantage d'IPv6 par rapport à IPv4
- [X] Les adresses IPv6 sont plus grandes que celles en IPv4 pour permettre une plus grande quantité d'adresses, ce qui est nécessaire à mesure que l'Internet continue de se développer.
> Bonne réponse, une adresse IPv4 est codée sur 32 bits alors qu'une adresse IPv6 est codée sur 128 bits, ce qui offre des capacités d'adressage beaucoup plus importantes.
- [X] Une adresse IPv6 est plus grande et les paquets encombrent plus le réseau
> Bonne réponse, les adresses IPv6 (128 bits) sont plus grandes que les adresses IPv4 (32 bits). Mais IPv6 comprend des conventions d'affichage et mécanismes de compression des adresses qui permettent de réduire la longueur des adresses dans certaines situations (par exemple, les zéros successifs peuvent être remplacés par ::), mais uniquement dans leur représentation textuelle, dans les paquets ça prend quatre fois plus d'octets.
### Attribution d'adresses de diffusion et de réseau
- [ ] Il est conseillé d'attribuer à un équipement une adresse de diffusion comme par exemple l'adresse 192.168.1.255/24 ?
> Mauvaise réponse, il n'est pas conseillé d'attribuer une adresse de diffusion à un équipement car ce n'est pas d'une adresse dite unicast.
- [ ] Il est conseillé d'attribuer l'adresse réseau à un équipement
> Mauvaise réponse, attribuer une adresse réseau à un équipement peut prêter à confusion et est souvent déconseillé
### Quelle est la plage des valeurs que peut prendre une adresse IPv4 ?
- [X] Des adresses allant de 0.0.0.0 à 255.255.255.255
> Bonne réponse, la plage de valeur d'une adresse IPv4 va de 0.0.0.0 à 255.255.255.255 car chaque entier est codé sur 8 bits. La valeur la plus faible est 0 et la plus grande est 255
- [ ] Des adresses allant de 0.0.0.0 à 255.255.255.254
> Mauvaise réponse, la plage de valeur d'une adresse IPv4 va de 0.0.0.0 à 255.255.255.255 et non jusqu'à 255.255.255.254 car chaque entier est codé sur 8 bits. La valeur la plus faible est 0 et la plus grande est 255. L'adresse 255.255.255.255 est quant à elle une adresse de diffusion d'IPv4
### Calcul du masque de réseau
Un réseau doit contenir 32 machines. Quelle est le masque de réseau à attribuer à ce réseau pour ne pas gaspiller d'adresse ?
Trouver la plage qui couvre au moins 34 adresses :
- [X] $/26$
> Bonne réponse, le masque de réseau est /26 pour contenir 32 machines car en plus des 32 adresses unicast pour les machines, il faut réserver l'adresse réseau et l'adresse de diffusion, ce qui correspond à un besoin de 32 + 2 = 34 adresses au total. Sachant que 2⁵ = 32 (ce qui permet d'identifier pas assez d'équipement, et que 2⁶ = 64, on en déduit que /26 est le masque qui nous convient car 32 - 26 = 6 bits utilisés pour cette identification
- [ ] $/25$
> Mauvaise réponse, le masque de réseau est /26 et non pas /25 pour contenir 32 machines car en plus des 32 adresses unicast pour les machines, il faut réserver l'adresse réseau et l'adresse de diffusion, ce qui correspond à un besoin de 32 + 2 = 34 adresses au total. Sachant que 2⁵ = 32 (ce qui permet d'identifier pas assez d'équipement, et que 2⁶ = 64, on en déduit que /26 est le masque qui nous convient, car 32 - 26 = 6 bits utilisés pour cette identification
### Attribution d'adresses à un réseau
- [ ] Pour Le réseau 163.173.0.0/16, la plage d'adresse attribuable aux équipements va de 163.173.0.0 à 163.173.255.255
> Mauvaise réponse, car pour Le réseau 163.173.0.0/16, la plage d'adresse attribuable aux équipements va de 163.173.0.0 à 163.173.255.255 mais 163.173.0.0 est l'adresse de diffusion et 163.173.255.255 l'adresse de broadcast
- [X] Pour Le réseau 163.173.0.0/16, la plage d'adresse attribuable aux équipements va de 163.173.0.1 à 163.173.255.254
> Bonne réponse, car pour Le réseau 163.173.0.0/16, la plage d'adresse attribuable aux équipements va de 163.173.0.0 à 163.173.255.255 mais 163.173.0.0 est l'adresse de diffusion et 163.173.255.255 l'adresse de broadcast
- [X] Pour Le réseau 163.173.0.0/16, le nombre d'adresses unicast attribuables est $(2^{16})-2 $
> Bonne réponse, le nombre d'adresses unicast attribuables est $2^{16}-2$
### Attribution d'adresses de diffusion
Combien d'adresse IP unicast peuvent être attribuées sur le réseau 127.0.0.0/8 ?
- [ ] $2^{32}$
> Mauvaise réponse, sur le réseau 127.0.0.0/8 24 bits (et non pas 32 bits) sont utilisés pour identifier les équipements et si l'adresse du réseau et de diffusion n'est pas utilisée, cela fait 2^{24}bit-2
- [ ] $2^{24}$
> Mauvaise réponse, sur le réseau 127.0.0.0/8 24 bits sont utilisés pour identifier les équipements mais si l'adresse du réseau et de diffusion n'est pas utilisée, cela fait 2^{24}-2
- [X] $2^{24}-2$
> Bonne réponse, sur le réseau 127.0.0.0/8, 24 bits sont utilisés pour identifier les équipements et si l'adresse du réseau et de diffusion n'est pas utilisée, cela fait 2^{24}-2
Les différents types d’adresses IPv4
Les adresses IPv4 publiques versus privées
Les adresses IPv4 publiques sont accessibles depuis Internet. Elles sont attribuées de manière unique.
Les adresses IPv4 privées, en revanche, sont réservées pour une utilisation au sein d’un réseau local. Elles ne sont pas routées
sur Internet. Une adresse privée sert à identifier une machine dans un réseau interne.
Une adresse IP privée n’est pas routable au sens où elle n’est pas
accessible depuis l’Internet (à moins qu’un mécanismes additionel tel qu’un NAT - en ce qui concerne IPv4 - soit mis en place
sur un équipement réseau tel qu’un routeur par exemple).
Avantages des adresses privées:
L’économie d’adresses publiques (surtout en IPv4) : elles permettent en pratique à des machines de partager une seule adresse publique.
Plages d’adresses IPv4 privées (RFC 1918) :
Les plages d’adresses IPv4 privées sont les suivantes :
10.0.0.0 – 10.255.255.255 (16 777 216 adresses)
172.16.0.0 – 172.31.255.255 (1 048 576 adresses)
192.168.0.0 – 192.168.255.255 (65 536 adresses)
Les adresses multicast
Une adresse multicast permet d’envoyer un paquet à un groupe d’hôtes abonnés. Ainsi en un seul envoie d’un paquet, tous les abonnés sont contactés. Une adresse unicast au contraire
fait référence à un seul destinataire.
Les plages d’adresses multicast IPv4 vont de 224.0.0.0 à 239.255.255.255. I
L’adresse de broadcast
Une adresse de broadcast est utilisée pour envoyer un paquet à tous les hôtes d’un réseau.
Elle se distingue par le fait que tous les bits de la portion hôte de l’adresse IP sont à 1.
Exemple :
| Adresse IP |
192.168.1.10 |
11000000.10101000.00000001.00001010 |
| Masque |
255.255.255.0 |
11111111.11111111.11111111.00000000 |
| Adresse de broadcast |
192.168.1.255 |
11000000.10101000.00000001.11111111 |
Les adresses de loopback :
La plage d’adresse IPv4 127.0.0.0/8 (les adresses IPv4 comprises entre 127.0.0.0 et 127.255.255.255 donc) est attribuée/réservée à la boucle locale.
L’adresse la plus utilisée dans cette plage est 127.0.0.1, qui représente généralement la boucle locale par défaut.
Les adresses de boucle locale permettent de tester le fonctionnement des applications réseau ou des services localement
(sur l’équipement sans qu’un seul paquet ne soit envoyé par une quelconque interface réseau) : elles permettent à des applications
sur un équipement de communiquer entre elles directement.
Quelques quizzes sur l’adressage
---
primary_color: steelblue
secondary_color: lightgray
text_color: black
shuffle_questions: false
shuffle_answers: true
---
### Adresses IP publiques et privées
Question : parmis les adresses ci-dessous quelles sont les adresses privées .
- [X] 192.168.10.5
> Bonne réponse, l'adresse 192.168.10.5 fait partie de la plage d'adresse privée 192.168.0.0/16
- [ ] 3.3.3.3
> Mauvaise réponse, l'adresse 3.3.3.3 est une adresse publique
- [X] 10.12.4.200
> Bonne réponse, l'adresse 10.12.4.200 fait partie de la plage d'adresse privée 10.0.0.0/8
- [X] 172.20.1.2
> Bonne réponse, l'addresse 172.20.1.2 appartient à la plage d'adresses IP privées allant de 172.16.0.0 à 172.31.255.255
- [ ] 172.40.10.3
> Mauvaise réponse, l'addresse 172.40.10.3 est en dehors de la plage d'adreses IP privées allant de 172.16.0.0 à 172.31.255.255
---
primary_color: steelblue
secondary_color: lightgray
text_color: black
shuffle_questions: false
shuffle_answers: true
---
### Réseau privé 192.168.1.0/24
Question : combien d'adresses sont disponibles sur le réseau privé Un réseau 192.168.1.0/24
- [X] 2⁸ = 256 adresses IP
> Bonne réponse, 2⁸ = 256 adresses IP sont disponibles dans le réseau 192.168.1.0/24 car 8 bits = 32 - 24 = longueur adresse IPv4 - longueur du préfix sont utilisés pour délimiter la portion identifiant les hôtes. Le réseau 192.168.1.0/24 dispose de 2⁸ = 256 adresses IP, parmis lesquelles on trouve une adresse de broadcast et une adresse de réseau
- [ ] 2^{24} adresses IP
> Mauvaise réponse, vous avez noté que 2^{24} adresses IP sont disponibles dans le réseau 192.168.1.0/24 alors que 8 bits = 32 - 24 = longueur adresse IPv4 - longueur du préfix sont utilisés pour délimiter la portion identifiant les hôtes. Le réseau 192.168.1.0/24 dispose de 2⁸ = 256 adresses IP, parmis lesquelles on trouve une adresse de broadcast et une adresse de réseau
### Réseau privé 10.0.0.0/8
Question : combien d'adresses sont disponibles sur le réseau privé Un réseau 192.168.1.0/24
- [X] 2^{24} = 16 777 216 adresses IP
> Bonne réponse, 32 bits = 32 - 8 = longueur adresse IPv4 - longueur du préfix sont utilisés pour délimiter la portion identifiant les hôtes. Le réseau 10.0.0.0/8 dispose de 2⁸ = 16 777 216 adresses IP, parmis lesquelles on trouve une adresse de broadcast et une adresse de réseau
- [ ] 2^{8} = 256 adresses IP
> Mauvaise réponse, vous avez noté que 2^{8} = 256 adresses IP se trouvaient dans le réseau privé 10.0.0.0/8 alors que 24 bits = 32 - 8 = longueur adresse IPv4 - longueur du préfix sont utilisés pour délimiter la portion identifiant les hôtes. Le réseau 10.0.0.0/8 dispose de 2⁸ = 16 777 216 adresses IP, parmis lesquelles on trouve une adresse de broadcast et une adresse de réseau
ARP
ARP (Address Resolution Protocol) remplit une fonction indispensable qui est celle de rechercher l’adresse physique (de niveau 2 ; dans le TP, il s’agit de l’adresse MAC pour Media Access Control), d’un hôte à partir de son adresse de niveau 3 (dans le TP, il s’agit de l’adresse IPv4 qui est connue du PC à l’origine de la recherche).
ARP gère un cache (table) dans lequel les adresses MAC sont mappées aux adresses IP.
Un équipement opérant au niveau de la couche 3 a besoin d’ARP pour mapper les adresses réseau IP aux adresses MAC pour pouvoir plus tard envoyer des paquets IP (encapsulés dans les trames). Avant qu’un équipement envoit un datagramme, il consulte
son cache ARP pour identifier si une adresse MAC correspond à une adresse IP donnée destinataire. S’il
n’y a pas d’entrée pour cette adresse IP, l’équipement diffuse à tous les équipements se trouvant sur le réseau. Chaque équipement
compare l’adresse IP à la sienne. Seul l’équipement dont l’adresse IP correspond, répond à l’émetteur. Enfin l’equipement crée l’association à l’adresse MAC au niveau de sa propre table.
A quel moment un équipement a recours à ARP
Un équipement (PC1) veut communiquer avec un autre équipement (PC2) dont il connait l’adresse IPv4 (@IP de PC2).
Pour cela, PC1 dispose de 4 informations primordiales:
- sa propre adresse IP
- son propre masque
- l’adresse IP de PC2
- l’adresse de son propre réseau qui résulte d’un ET binaire (AND) entre sa propre adresse IP et sa propre adresse IP
Avant d’émettre une requête ARP, PC1 applique un ET binaire (AND) entre l’adresse IP de PC2 et son propre masque.
Si le résultat correspond à l’adresse du réseau de PC1, alors PC1 et PC2 appartiennent au même réseau
(cas 1) sinon PC1 et PC2 n’appartiennent pas au même réseau (cas 2).
Cas 1 : un équipement veut communiquer avec un autre équipement se trouvant dans le même réseau.
PC1 diffuse une requête ARP dans son réseau pour rechercher l’adresse physique de PC2.
Cas 2 : un équipement veut communiquer avec un autre équipement se trouvant dans le même réseau
PC1 diffuse une requête ARP dans son réseau pour rechercher l’adresse physique du routeur servant de passerelle.
Cas 3 : Proxy ARP
Le proxy ARP, tel que défini dans la RFC 1027, a été mis en œuvre pour que deux équipements
séparés en segments de réseau physiques connectés par un routeur (dans le même réseau ou sous-réseau IP de)
puissent résoudre les adresses IP vers MAC. Lorsque les équipements ne se trouvent pas sur le même réseau de couche liaison de données, mais sur le même
réseau IP, ils tentent de se transmettre des données comme s’ils se trouvaient sur le réseau local. Or, le routeur
qui sépare les équipement n’envoit pas de message de diffusion, car les routeurs ne transmettent pas les diffusions.
Par conséquent, les adresses ne peuvent pas être résolues.
Le proxy ARP est activé par défaut, de sorte que le routeur proxy qui réside entre les réseaux locaux réponde avec
son adresse MAC comme s’il s’agissait du destinataire uquel la diffusion est adressée.
Structure d’une trame ethernet
| Préambule |
SFD |
MAC destination |
MAC source |
Type |
Données |
FCS |
| 7o |
1o |
6o |
6o |
2o |
46o à 1500o |
4o |
- Préambule : suite de bits servant à synchroniser émetteur et récepteur
- SFD (Start Frame Delimiter) indique le début réel de la trame
- Champ Type indique le protocole encapsulé (0x0806 pour ARP)
- Données formant la charge utile (de 46 à 1500 octets)
Structure d’une requête et/ou réponse ARP
| HTYPE |
PTYPE |
HLEN |
PLEN |
OPCODE |
@Hw source |
@net source |
@Hw destination |
@net destination |
| 2 o |
2 o |
2 o |
2o |
2o |
6o pour MAC |
4o pour IPv4 |
6o pour MAC |
4 o pour ipv4 |
- HTYPE (Hardware Type): type de réseau (pour ethernet, prend la valeur 1)
- PTYPE (Protocol Type): protocole de couche réseau (pour IPv4, prend la valeur 0x0800)
- HLEN (Hardware Length) : longueur de l’adresse matérielle (pour une adresse MAC, prend la valeur 6)
- PLEN (Protocol Length) : longueur de l’adresse protocolaire (pour une adresse ipv4, prend la valeur 4)
- OPCODE: type de message ARP (prend la valeur 1 pour une requête ARP et la valeur 0 pour une réponse ARP
- A partir du HTYPE et PTYPE sont définis les champs qui suivent:
- HW source/destination (adresse physique), ici : @ MAC source/destination
- @ source/destination correspond à l’adresse réseau, ici Ipv4, comme définit dans le champs PTYPE
Quelques quizzes supplémentaires
---
primary_color: steelblue
secondary_color: lightgray
text_color: black
shuffle_questions: false
shuffle_answers: true
---
### Adresse IP 192.168.1.1/24
Question : combien d'adresses sont disponibles sur le réseau privé Un réseau 192.168.1.0/24
- [X] Code binaire correspondant à 192.168.1.1 est : 11000000 . 11000000. 0000 0001 . 0000 0001
> Bonne réponse, le code binaire correspondant à 192.168.1.0 est : 11000000 . 11000000. 0000 0001 . 0000 0001
- [X] Adresse du Réseau : 192.168.1.0/24
> Bonne réponse, en applicant un ET entre le code binaire correspondant à 192.168.1.0 est : 11000000 . 11000000. 0000 0001 . 0000 0000 et celui correspondant à 255.255.255.0(soit 1111 1111. 1111 1111. 1111 1111, on obtient 11000000 . 11000000. 0000 0001 . 0000 0000.00000 soit l'adresse 192.168.1.0
- [X] Masque : 255.255.255.0
> Bonne réponse, Les 24 premiers bits sont positionnés à 1: 1111 1111. 1111 1111 . 1111 1111. 0000 0000 resse de réseau
- [X] Adresse de broadcast : 192.168.1.255
> Bonne réponse, les 8 derniers bits sont positionnés à 1: 1111 1111. 1111 1111 . 1111 1111. 0000 0000 resse de réseau
- [X] 254 adresses IP unicast peuvent être attribuées à des équipements
> Bonne réponse, 2⁸ -2 adresses sont attribuables
### Adresse réseau 10.10.32.0/20
- [X] Masque : 255.255.240.0
> Bonne réponse, le masque correspondant à /20 est en binaire = 1111 1111 . 1111 1111 . 1111 0000 . 0000 0000 ce qui correspond au masque 255.255.240.0
- [X] 2^{12}-2 = 4094 adresses IP peuvent être attribuées à des équipements sur ce réseau
> Bonne réponse, 2^{12}-2 = 4094 machines sont hébergeables