Adresse IP
Décembre 2015
Sommaire
Adresse IP - Définition
Déchiffrement d'une adresse IP
Adresses particulières
Classes de réseaux (obsolète)
o Classe A
o Classe B
o Classe C
Attribution des adresses IP
Adresses IP réservées
Netmask
o Interet d'un masque de sous-réseau
o Création de sous-réseaux
Adresse IP - Définition
Sur Internet, les ordinateurs communiquent entre eux grâce au protocole IP
(Internet Protocol), qui utilise des adresses numériques, appelées adresses IP,
composées de 4 nombres entiers (4 octets) entre 0 et 255 et notées sous la forme
[Link]. Par exemple, [Link] est une adresse IP donnée sous
une forme technique.
Ces adresses servent aux ordinateurs du réseau pour communiquer entre-eux,
ainsi chaque ordinateur d'un réseau possède une adresse IP unique sur ce réseau.
C'est l'ICANN (Internet Corporation for Assigned Names and Numbers,
remplaçant l'IANA, Internet Assigned Numbers Agency, depuis 1998) qui est
chargée d'attribuer des adresses IP publiques, c'est-à-dire les adresses IP des
ordinateurs directement connectés sur le réseau public internet.
Déchiffrement d'une adresse IP
Une adresse IP est une adresse 32 bits, généralement notée sous forme de 4
nombres entiers séparés par des points. On distingue en fait deux parties dans
l'adresse IP :
une partie des nombres à gauche désigne le réseau est appelée ID de
réseau (en anglais netID),
Les nombres de droite désignent les ordinateurs de ce réseau est appelée
ID d'hôte (en anglais host-ID).
Soit l'exemple ci-dessous :
Notons le réseau de gauche [Link]. Il contient les ordinateurs suivants :
[Link] à [Link]
Notons celui de droite [Link]. Il comprend les ordinateurs suivants :
[Link] à [Link]
Dans le cas ci-dessus, les réseaux sont notés 194.28.12 et 178.12.77, puis on
numérote incrémentalement chacun des ordinateurs le constituant.
Imaginons un réseau noté [Link]. Les ordinateurs de ce réseau pourront avoir
les adresses IP allant de [Link] à [Link]. Il s'agit donc d'attribuer les
numéros de telle façon qu'il y ait une organisation dans la hiérarchie des
ordinateurs et des serveurs.
Ainsi, plus le nombre de bits réservé au réseau est petit, plus celui-ci peut
contenir d'ordinateurs.
En effet, un réseau noté [Link] peut contenir des ordinateurs dont l'adresse IP
peut varier entre [Link] et [Link] (256*256*256-2=16777214
possibilités), tandis qu'un réseau noté 194.26 ne pourra contenir que des
ordinateurs dont l'adresse IP sera comprise entre [Link] et [Link]
(256*256-2=65534 possibilités), c'est la notion de classe d'adresse IP.
Adresses particulières
Lorsque l'on annule la partie host-id, c'est-à-dire lorsque l'on remplace les bits
réservés aux machines du réseau par des zéros (par exemple [Link]), on
obtient ce que l'on appelle l'adresse réseau. Cette adresse ne peut être attribuée
à aucun des ordinateurs du réseau.
Lorsque la partie netid est annulée, c'est-à-dire lorsque les bits réservés au
réseau sont remplacés par des zéros, on obtient l'adresse machine. Cette adresse
représente la machine spécifiée par le host-ID qui se trouve sur le réseau
courant.
Lorsque tous les bits de la partie host-id sont à 1, l'adresse obtenue est appellée
l'adresse de diffusion (en anglais broadcast). Il s'agit d'une adresse spécifique,
permettant d'envoyer un message à toutes les machines situées sur le réseau
spécifié par le netID.
Enfin, l'adresse [Link] est appelée adresse de rebouclage (en anglais
loopback), car elle désigne la machine locale (en anglais localhost).
Classes de réseaux (obsolète)
Dans le système de définition des réseau ip originel les adresses IP étaient
réparties en classes, selon le nombre d'octets qui représentent le réseau, lui
même déterminé par les premiers bits de l'adresse ip:
Aujourd'hui ce système a été remplacé par le CIDR au milieu des années 90 .
On avait à cette époque 3 classes pour les adresses unicast, une classe pour les
adresses multidestinataires (multicast), la classe D et une classe E non utilisée:
Classe A
Dans une adresse IP de classe A, le premier octet représente le réseau.
Le bit de poids fort (le premier bit, celui de gauche) est à zéro, ce qui signifie
qu'il y a 2^7 (00000000 à 01111111) possibilités de réseaux, soit 128
possibilités. Toutefois, le réseau 0 (bits valant 00000000) n'existe pas et le
nombre 127 est réservé pour désigner votre machine.
Les réseaux disponibles en classe A sont donc les réseaux allant de [Link] à
[Link] (les derniers octets sont des zéros ce qui indique qu'il s'agit bien de
réseaux et non d'ordinateurs !)
Les trois octets de droite représentent les ordinateurs du réseaux, le réseau peut
donc contenir un nombre d'ordinateur égal à :
2^24-2^1 = 16777214 ordinateurs.
Une adresse IP de classe A, en binaire, ressemble à ceci :
0 xxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
Réseau Ordinateurs
Classe B
Dans une adresse IP de classe B, les deux premiers octets représentent le réseau.
Les deux premiers bits sont 1 et 0, ce qui signifie qu'il y a 2^14 (10 000000
00000000 à 10 111111 11111111) possibilités de réseaux, soit 16384 réseaux
possibles. Les réseaux disponibles en classe B sont donc les réseaux allant de
[Link] à [Link]
Les deux octets de droite représentent les ordinateurs du réseau. Le réseau peut
donc contenir un nombre d'ordinateurs égal à :
2^16-2^1 = 65534 ordinateurs.
Une adresse IP de classe B, en binaire, ressemble à ceci :
10 xxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
Réseau Ordinateurs
Classe C
Dans une adresse IP de classe C, les trois premiers octets représentent le réseau.
Les trois premiers bits sont 1,1 et 0, ce qui signifie qu'il y a 2^21 possibilités de
réseaux, c'est-à-dire 2097152. Les réseaux disponibles en classe C sont donc les
réseaux allant de [Link] à [Link]
L'octet de droite représente les ordinateurs du réseau, le réseau peut donc
contenir:
2^8-2^1 = 254 ordinateurs.
Une adresse IP de classe C, en binaire, ressemble à ceci :
110 xxxxx xxxxxxxx xxxxxxxx xxxxxxxx
Réseau Ordinateurs
Attribution des adresses IP
Le but de la division des adresses IP en trois classes A,B et C est de faciliter la
recherche d'un ordinateur sur le réseau. En effet avec cette notation il est
possible de rechercher dans un premier temps le réseau que l'on désire atteindre
puis de chercher un ordinateur sur celui-ci. Ainsi, l'attribution des adresses IP se
fait selon la taille du réseau.
Classe Nombre de réseaux possibles Nombre d'ordinateurs maxi sur chacun
A 126 16777214
B 16384 65534
C 2097152 254
Les adresses de classe A sont réservées aux très grands réseaux, tandis que l'on
attribuera les adresses de classe C à des petits réseaux d'entreprise par exemple
Adresses IP réservées
Il arrive fréquemment dans une entreprise ou une organisation qu'un seul
ordinateur soit relié à internet, c'est par son intermédiaire que les autres
ordinateurs du réseau accèdent à internet (on parle généralement de proxy ou de
passerelle).
Dans ce cas de figure, seul l'ordinateur relié à internet a besoin de réserver une
adresse IP auprès de l'ICANN. Toutefois, les autres ordinateurs ont tout de
même besoin d'une adresse IP pour pouvoir communiquer ensemble en interne.
Ainsi, l'ICANN a réservé une poignée d'adresses dans chaque classe pour
permettre d'affecter une adresse IP aux ordinateurs d'un réseau local relié à
internet sans risquer de créer des conflits d'adresses IP sur le réseau des réseaux.
Il s'agit des adresses suivantes :
Adresses IP privées de classe A : [Link] à [Link], permettant la
création de vastes réseaux privés comprenant des milliers d'ordinateurs.
Adresses IP privées de classe B : [Link] à [Link], permettant de
créer des réseaux privés de taille moyenne.
Adresses IP privées de classe C : [Link] à [Link], pour la
mise en place de petits réseaux privés.
Netmask
Pour comprendre ce qu'est un masque de sous-réseau, il peut-être intéressant de
consulter la section « assembleur » qui parle du masquage en binaire
En résumé, on fabrique un masque contenant des 1 aux emplacements des bits
que l'on désire conserver, et des 0 pour ceux que l'on veut annuler. Une fois ce
masque créé, il suffit de faire un ET logique entre la valeur que l'on désire
masquer et le masque afin de garder intacte la partie que l'on désire et annuler le
reste.
Ainsi, un masque réseau (en anglais netmask) se présente sous la forme de 4
octets séparés par des points (comme une adresse IP), il comprend (dans sa
notation binaire) des zéros au niveau des bits de l'adresse IP que l'on veut
annuler (et des 1 au niveau de ceux que l'on désire conserver).
Intérêt d'un masque de sous-réseau
Le premier intérêt d'un masque de sous-réseau est de permettre d'identifier
simplement le réseau associé à une adresse IP.
En effet, le réseau est déterminé par un certain nombre d'octets de l'adresse IP (1
octet pour les adresses de classe A, 2 pour les adresses de classe B, et 3 octets
pour la classe C). Or, un réseau est noté en prenant le nombre d'octets qui le
caractérise, puis en complétant avec des 0. Le réseau associé à l'adresse
[Link] est par exemple [Link], car il s'agit d'une adresse IP de classe A.
Pour connaître l'adresse du réseau associé à l'adresse IP [Link], il suffit
donc d'appliquer un masque dont le premier octet ne comporte que des 1 (soit
255 en notation décimale), puis des 0 sur les octets suivants.
Le masque est: 11111111.00000000.00000000.00000000
Le masque associé à l'adresse IP [Link] est donc [Link].
La valeur binaire de [Link] est:
00100010.11010000.01111011.00001100
Un ET logique entre l'adresse IP et le masque donne ainsi le résultat suivant :
00100010.11010000.01111011.00001100
ET
11111111.00000000.00000000.00000000
00100010.00000000.00000000.00000000
Soit [Link]. Il s'agit bien du réseau associé à l'adresse [Link]
En généralisant, il est possible d'obtenir les masques correspondant à chaque
classe d'adresse :
Pour une adresse de Classe A, seul le premier octet doit être conservé. Le
masque possède la forme suivante
11111111.00000000.00000000.00000000, c'est-à-dire [Link] en
notation décimale ;
Pour une adresse de Classe B, les deux premiers octets doivent être
conservé, ce qui donne le masque suivant
11111111.11111111.00000000.00000000, correspondant à [Link] en
notation décimale ;
Pour une adresse de Classe C, avec le même raisonnement, le masque
possédera la forme suivante 11111111.11111111.11111111.00000000,
c'est-à-dire [Link] en notation décimale
Création de sous-réseaux
Reprenons l'exemple du réseau [Link], et supposons que l'on désire que les
deux premiers bits du deuxième octet permettent de désigner le réseau.
Le masque à appliquer sera alors :
11111111.11000000.00000000.00000000
C'est-à-dire [Link]
Si on applique ce masque, à l'adresse [Link] on obtient :
[Link]
En réalité il y a 4 cas de figures possibles pour le résultat du masquage d'une
adresse IP d'un ordinateur du réseau [Link]
Soit les deux premiers bits du deuxième octet sont 00, auquel cas le
résultat du masquage est [Link]
Soit les deux premiers bits du deuxième octet sont 01, auquel cas le
résultat du masquage est [Link]
Soit les deux premiers bits du deuxième octet sont 10, auquel cas le
résultat du masquage est [Link]
Soit les deux premiers bits du deuxième octet sont 11, auquel cas le
résultat du masquage est [Link]
Ce masquage divise donc un réseau de classe A (pouvant admettre 16 777 214
ordinateurs) en 4 sous-réseaux - d'où le nom de masque de sous-réseau -
pouvant admettre 2^22 ordinateurs, c'est-à-dire 4 194 304 ordinateurs.
Le nombre de sous-réseaux dépend du nombre de bits attribués en plus au réseau
(ici 2). Le nombre de sous-réseaux est donc :
Nombre de bits Nombre de sous-réseaux
1 2
2 4
3 8
4 16
5 32
6 64
7 128
8 (impossible pour une classe C) 256