|
Sur Internet,
les ordinateurs communiquent
entre eux grâce au protocole
TCP/IP qui utilise des
numéros de 32
bits, que l'on écrit sous
forme de 4 numéros allant de 0 à
255 (4 fois 8 bits), on les note
donc sous la forme
xxx.xxx.xxx.xxx où chaque xxx
représente un entier de 0 à 255.
Ces numéros servent aux
ordinateurs du réseau pour se
reconnaître, ainsi il ne doit
pas exister deux ordinateurs sur
le réseau ayant la même adresse
IP (IP signifie Internet
Protocol).
Par exemple,
194.153.205.26 est une
adresse TCP/IP donnée sous une
forme technique. Ce sont ces
adresses que connaîssent les
ordinateurs qui communiquent
entre eux.
C'est l'IANA
(Internet Assigned Numbers
Agency) qui est chargée
d'attribuer ces numéros.
Comme nous
l'avons vu une adresse IP est
une adresse 32 bits 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 (on
l'appelle netID)
- Les nombres de droite
désignent les ordinateurs de
ce réseau (on l'appelle
host-ID)
Prenons un exemple:
Internet est
représenté ci-dessus par deux
petits réseaux.
Notons le réseau de gauche
194.28.12. Il contient alors les
ordinateurs suivants:
- 194.28.12.1 à
194.28.12.4
Notons celui de droite
178.12.77. Il comprendra les
ordinateurs suivants:
- 178.12.77.1 à
178.12.77.6
Les réseaux sont donc notés
194.28.12 et 178.12.77, puis on
numérote incrémentalement chacun
des ordinateurs le constituant.
Imaginons un gros réseau noté
58.24: on donnera
généralement aux ordinateurs
reliés à lui les adresses IP
allant de 58.24.0.1 à
58.24.255.254. 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é 102 peut
contenir des ordinateurs dont
l'adresse IP peut aller de
102.0.0.1 à 102.255.255.254
(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 194.26.0.1 et
194.26.255.254 (256*256-2=65534
possibilités), c'est la notion
de classe.
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, on obtient
ce que l'on appelle l'adresse
réseau.
Ainsi, 194.28.12.0 est une
adresse réseau et on ne peut
donc pas l'attribuer à un des
ordinateurs du réseau
Lorsque l'on
annule la partie netid,
c'est-à-dire lorsque l'on
remplace les bits réservés au
réseau, on obtient ce que l'on
appelle 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, on obtient ce que l'on
appelle l'adresse de
diffusion (en anglais
broadcast), c'est-à-dire une
adresse qui permettra d'envoyer
le message à toutes les machines
situées sur le réseau spécifié
par le netID.
Lorsque tous
les bits de la partie netid sont
à 1, on obtient ce que l'on
appelle l'adresse de
diffusion limitée (multicast).
L'adresse
127.0.0.1 est appelée
adresse de boucle locale (en
anglais loopback), car
elle désigne la machine locale
(en anglais localhost).
Les adresses
IP sont donc réparties en
classes, c'est-à-dire selon le
nombre d'octets qui représentent
le réseau.
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 27
(00000000 à 01111111)
possibilités de réseaux,
c'est-à-dire 128. Toutefois le
réseau 0 (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
1.0.0.0 à 126.0.0.0
(lorsque les derniers octets
sont des zéros cela indique
qu'il s'agit d'un réseau et non
d'un ordinateur!)
Les trois
octets de droite représentent
les ordinateurs du réseaux, le
réseau peut donc contenir:
224-2 = 16777214
ordinateurs.
Une adresse
IP de classe A, en binaire,
ressemble à ceci:
| 0 |
xxxxxxx |
xxxxxxxx |
xxxxxxxx |
xxxxxxxx |
|
Réseau |
Ordinateurs |
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 214 (10
000000 00000000 à 10 111111
11111111) possibilités de
réseaux, c'est-à-dire 16384. Les
réseaux disponibles en classe B
sont donc les réseaux allant de
128.0.0.0 à
191.255.0.0
Les deux
octets de droite représentent
les ordinateurs du réseau, le
réseau peut donc contenir:
216-21 =
65534 ordinateurs.
Une adresse
IP de classe B, en binaire,
ressemble à ceci:
| 10 |
xxxxxx |
xxxxxxxx |
xxxxxxxx |
xxxxxxxx |
|
Réseau |
Ordinateurs |
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 221
possibilités de réseaux,
c'est-à-dire 2097152. Les
réseaux disponibles en classe C
sont donc les réseaux allant de
192.0.0.0 à
223.255.255.0
L'octet de
droite représente les
ordinateurs du réseau, le réseau
peut donc contenir:
28-21 =
254 ordinateurs.
Une adresse
IP de classe C, en binaire,
ressemble à ceci:
|
110 |
xxxxx |
xxxxxxxx |
xxxxxxxx |
xxxxxxxx |
|
Réseau |
Ordinateurs |
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
Il arrive
fréquemment dans une entreprise
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). Dans ce cas, seul
l'ordinateur relié à Internet a
besoin de réserver une adresse
IP auprès de l'INTERNIC.
Toutefois, les autres
ordinateurs ont tout de même
besoin d'une adresse IP pour
pouvoir communiquer ensemble de
façon interne.
Ainsi, l'INTERNIC
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 de conflits
d'adresses IP sur le réseau. Il
s'agit des adresses suivantes:
- 10.0.0.1 à
10.255.255.254
- 172.16.0.1 à
172.31.255.254
- 192.168.0.1 à
192.168.255.254
Pour
comprendre ce qu'est un masque,
il peut-être intéressant de
jeter un oeil à 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 rendre
égaux à zéro. Une fois ce masque
créé, il suffit de faire un ET
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 aux 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).
Il y en a en fait plusieurs. Un
d'entre-eux est de pouvoir
connaître le réseau associé à
une adresse IP. En effet, comme
nous l'avons vu précédemment, 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). De
plus, nous avons vu que l'on
note un réseau en prenant le
nombre d'octets qui le
caractérise, puis en complétant
avec des 0.
Ainsi, le réseau associé à
l'adresse 34.56.123.12
est 34.0.0.0 (puisqu'il
s'agit d'une adresse de classe
A). Il suffit donc pour
connaître l'adresse du réseau
associé à l'adresse IP
34.56.123.12 d'appliquer un
masque dont le premier octet ne
comporte que des 1 (ce qui donne
255), puis des 0 sur les octets
suivants (ce qui donne 0..).
Le masque est:
11111111.00000000.00000000.00000000
Le masque associé à l'adresse IP
34.208.123.12 est donc
255.0.0.0.
La valeur binaire de
34.208.123.12 est:
00100010.11010000.01111011.00001100
Un ET entre
00100010.11010000.01111011.00001100
ET
11111111.00000000.00000000.00000000
donne
00100010.00000000.00000000.00000000
C'est-à-dire 34.0.0.0,
c'est bien le réseau associé à
l'adresse 34.208.123.12
En
généralisant, on obtient les
masques suivants pour chaque
classe:
- Pour une adresse de
Classe A, seul le
premier octet nous
intéresse, on a donc un
masque de la forme
11111111.00000000.00000000.00000000,
c'est-à-dire en notation
décimale:
255.0.0.0
- Pour une adresse de
Classe B, les deux
premiers octets nous
intéresse, on a donc un
masque de la forme
11111111.11111111.00000000.00000000,
c'est-à-dire en notation
décimale:
255.255.0.0
- Pour une adresse de
Classe C on s'intéresse
aux trois premiers octets,
on a donc un masque de la
forme
11111111.11111111.11111111.00000000,
c'est-à-dire en notation
décimale:
255.255.255.0
Reprenons
l'exemple du réseau 34.0.0.0, 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 255.192.0.0
Si on
applique ce masque, à l'adresse
34.208.123.12 on obtient:
34.192.0.0
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 34.0.0.0
- Soit les deux premiers
bits du deuxième octet sont
00,
auquel cas le résultat du
masquage est 255.0.0.0
- Soit les deux premiers
bits du deuxième octet sont
01,
auquel cas le résultat du
masquage est 255.64.0.0
- Soit les deux premiers
bits du deuxième octet sont
10,
auquel cas le résultat du
masquage est 255.128.0.0
- Soit les deux premiers
bits du deuxième octet sont
11,
auquel cas le résultat du
masquage est 255.192.0.0
Ce masquage divise donc un
réseau de classe A (pouvant
admettre 16777214 ordinateurs)
en 4 sous-réseaux (d'où le nom
de masque de sous-réseau)
pouvant admettre 222
ordinateurs, c'est-à-dire
4194304 ordinateurs.
Au passage on remarque que le
nombre d'ordinateurs possibles
dans les deux cas est au total
de 16777214 ordinateurs (4 x
4194304 - 2 = 16777214)
Le nombre de
sous-réseaux dépend du nombre de
bits que l'on attribue 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 |
|
Chaque station
possède une
adresse IP
propre.
Cependant, les
utilisateurs ne
veulent pas
travailler avec
des adresses
numériques du
genre
194.153.205.26
mais avec des
noms de stations
ou des adresses
plus explicites
(appelées
adresses FQDN)
du style
http://www.socotech.com/
ou
webmaster@socotech.com.
Ainsi,
TCP/IP
permet
d'associer des
noms en langage
courant aux
adresses
numériques grâce
à un système
appelé DNS
(Domain Name
Service).
On appelle
résolution de
noms de domaines
(ou
résolution
d'adresses)
la corrélation
entre les
adresses IP et
le nom de
domaine associé.
Aux origines de
TCP/IP, étant
donné que les
réseaux étaient
très peu
étendus,
c'est-à-dire que
le nombre
d'ordinateurs
connectés à un
même réseau
était faible,
les
administrateurs
réseau créaient
des fichiers
appelés
tables de
conversion
manuelle
(fichiers
généralement
nommés hosts
ou hosts.txt),
associant sur
une ligne, grâce
à des caractères
ASCII, l'adresse
IP de la machine
et le nom
littéral
associé, appelé
nom d'hôte.
Le système
précédent a
l'inconvénient
majeur de
nécessiter la
mise à jour des
tables de tous
les ordinateurs
en cas d'ajout
ou modification
d'un nom de
machine. Ainsi,
avec l'explosion
de la taille des
réseaux, et de
leur
interconnexion,
il a fallu
mettre en place
un système plus
centralisé de
gestion des
noms. Ce système
est nommé
Domain Name
System,
traduisez
Système de nom
de domaine.
Ce système
consiste en une
hiérarchie de
noms permettant
de garantir
l'unicité d'un
nom dans une
structure
arborescente.
On appelle
nom de domaine,
le nom à deux
composantes,
dont la première
est un nom
correspondant au
nom de
l'organisation
ou de
l'entreprise, le
second à la
classification
de domaine (.fr,
.com, ...).
Chaque machine
d'un domaine est
appelée hôte.
Le nom d'hôte
qui lui est
attribué doit
être unique dans
le domaine
considéré (le
serveur web d'un
domaine porte
généralement le
nom www).
L'ensemble
constitué du nom
d'hôte, d'un
point, puis du
nom de domaine
est appelé
adresse FQDN
(Fully
Qualified Domain
Name, soit
Nom de
Domaine
Totalement
Qualifié).
Cette adresse
permet de
repérer de façon
unique une
machine. Ainsi
www.commentcamarche.net
représente une
adresse FQDN.
Les machines
appelées
serveurs de nom
de domaine
permettent
d'établir la
correspondance
entre le nom de
domaine et
l'adresse IP sur
les machines
d'un réseau.
Chaque domaine
possède ainsi,
un serveur de
noms de
domaines, relié
à un serveur de
nom de domaine
de plus haut
niveau. Ainsi,
le système de
nom est une
architecture
distribuée,
c'est-à-dire
qu'il n'existe
pas d'organisme
ayant à charge
l'ensemble des
noms de
domaines. Par
contre, il
existe un
organisme (l'InterNIC
pour les noms de
domaine en .com,.net,.org
et .edu par
exemple). Le
système de
noms de domaine
est transparent
pour
l'utilisateur,
néanmoins il ne
faut pas oublier
les points
suivants:
- Chaque
ordinateur
doit être
configuré
avec
l'adresse
d'une
machine
capable de
transformer
n'importe
quel nom en
une adresse
IP. Cette
machine est
appelée
Domain Name
Server. (Pas
de panique:
lorsque vous
installez le
kit de
connexion
d'un
fournisseur
d'accès
Internet,
celui-ci va
automatiquement
modifier vos
paramètres
pour prendre
en compte ce
point de
vue!)
-
L'adresse IP
d'un second
Domain Name
Server
(secondary
Domain Name
Server) peut
également
être
introduite:
il peut
relayer le
premier en
cas de
panne.
- Le nom
d'un serveur
de nom ne
peut bien
sûr pas être
donné
La
classification
du domaine,
parfois appelées
TLD (Top
Level Domain,
soit domaines
de plus haut
niveau),
correspond
généralement a
une répartition
géographique.
Toutefois, il
existe des noms,
créés pour les
Etats-Unis à la
base, permettant
de classifier le
domaine selon le
secteur
d'activité, par
exemple:
- .arpa
correspond
aux machines
issues du
réseau
originel
- .com
correspond
aux
entreprises
à vocation
commerciales
(désormais
ce code de
domaine ne
rime plus à
grand chose
et est
devenu
international)
- .edu
correspond
aux
organismes
éducatifs
- .gov
correspond
aux
organismes
gouvernementaux
- .mil
correspond
aux
organismes
militaires
- .net
correspond
aux
organismes
ayant trait
aux réseaux
- .org
correspond
aux
entreprises
à but non
lucratif
|
Code |
Pays |
|
AC |
Ile de
l'Ascencion |
|
AD |
Andorre |
|
AE |
Emirats
Arabes
Unis
|
|
AF |
Afghanistan |
|
AG |
Antigua
et
Barbuda |
|
AI |
Anguilla |
|
AL |
Albanie |
|
AM |
Arménie |
|
AN |
Antilles
Néerlandaises |
|
AO |
Angola |
|
AQ |
Antarctique |
|
AR |
Argentine |
|
AS |
Samoa
Américaines |
|
AT |
Autriche |
|
AU |
Australie |
|
AW |
Aruba |
|
AZ |
Azerbaïdjan |
|
BA |
Bosnie-Herzégovine |
|
BB |
Barbade |
|
BD |
Bangladesh |
|
BE |
Belgique |
|
BF |
Burkina-Faso |
|
BG |
Bulgarie |
|
BH |
Bahrayn |
|
BI |
Burundi |
|
BJ |
Bénin |
|
BM |
Bermudes |
|
BN |
Brunei
Darussalam |
|
BO |
Bolivie |
|
BR |
Brésil |
|
BS |
Bahamas |
|
BT |
Boutan |
|
BV |
Ile
Bouvet |
|
BW |
Botswana |
|
BY |
Bélarusse |
|
BZ |
Belize |
|
CA |
Canada |
|
CC |
Iles
Cocos |
|
CD |
République
démocratique
du Congo |
|
CF |
République
Centrafricaine |
|
CG |
Congo |
|
CH |
Suisse |
|
CI |
Côte
d'Ivoire |
|
CK |
Iles
Cook |
|
CL |
Chili |
|
CM |
Cameroun |
|
CN |
Chine |
|
CO |
Colombie |
|
COM |
Organisme
à but
commercial |
|
CR |
Costa
Rica |
|
CU |
Cuba |
|
CV |
Cap Vert |
|
CX |
Ile
Christmas |
|
CY |
Chypre |
|
CZ |
République
Tchèque |
|
DE |
Allemagne |
|
DJ |
Djibouti |
|
DK |
Danemark |
|
DM |
Dominique |
|
DO |
République
Dominicaine |
|
DZ |
Algérie |
|
EC |
Equateur |
|
EDU |
Organisme
ayant un
rapport
avec
l'éducation |
|
EE |
Estonie |
|
EG |
Egypte |
|
EH |
Sahara
Occidental |
|
ER |
Eritrée |
|
ES |
Espagne |
|
ET |
Ethiopie |
|
FI |
Finlande |
|
FJ |
Fidji |
|
FK |
Iles
Falkland
(Malouines) |
|
FM |
Micronésie |
|
FO |
Iles
Faroe |
|
FR |
France |
|
FX |
France
(Territoire
Européen) |
|
GA |
Gabon |
|
GB |
Grande-Bretagne |
|
GD |
Grenade |
|
GE |
Géorgie |
|
GF |
Guyane
Française |
|
GG |
Guernesey |
|
GH |
Ghana |
|
GI |
Gibraltar |
|
GL |
Groenland |
|
GM |
Gambie |
|
GN |
Guniée |
|
GOV |
Organisme
gouvernemental |
|
GP |
Guadeloupe |
|
GQ |
Guinée
Equatoriale |
|
GR |
Grèce |
|
GS |
Géorgie
du Sud |
|
GT |
Guatemala |
|
GU |
Guam
(USA) |
|
GW |
Guinée-Bissau |
|
GY |
Guyana |
|
HK |
Hong
Kong |
|
HM |
Iles
Heard
and
McDonald |
|
HN |
Honduras |
|
HR |
Croatie |
|
HT |
Haïti |
|
HU |
Hongrie |
|
ID |
Indonésie |
|
IE |
Irlande |
|
IL |
Israël |
|
IM |
Ile de
Man |
|
IN |
Inde |
|
IO |
Territoires
Britanniques
de
l'océan
Indien |
|
IQ |
Irak |
|
IR |
Iran |
|
IS |
Islande |
|
IT |
Italie |
|
JM |
Jamaïque |
|
JO |
Jordanie |
|
JP |
Japon |
|
KE |
Kenya |
|
KG |
Kirghizstan |
|
KH |
Cambodge |
|
KI |
Kiribati |
|
KM |
Comores |
|
KN |
saint
Kitts
Nevis
Anguilla |
|
KP |
Corée du
Nord |
|
KR |
Corée du
Sud |
|
KW |
Koweït |
|
KY |
Iles
Caïman |
|
KZ |
Kazakhstan |
|
LA |
Laos |
|
LB |
Liban |
|
LC |
Sainte-Lucie |
|
LI |
Liechtenstein |
|
LK |
Sri
Lanka |
|
LR |
Libéria |
|
LS |
Lesoto |
|
LT |
Lituanie |
|
LU |
Luxembourg |
|
LV |
Lettonie |
|
LY |
Libye |
|
MA |
Maroc |
|
MC |
Monaco |
|
MD |
Moldavie |
|
MG |
Madagascar |
|
MH |
Iles
Marshall |
|
MK |
Macédoine |
|
ML |
Mali |
|
MIL |
Organisme
militaire |
|
MM |
Myanmar |
|
MN |
Mongolie |
|
MO |
Macao |
|
MP |
Iles
Marianne
du Nord |
|
MQ |
Martinique |
|
MR |
Mauritanie |
|
MS |
Montserrat |
|
MU |
Ile
Maurice |
|
MV |
Maldives |
|
MW |
Malawi |
|
MX |
Mexique |
|
MY |
Malaisie |
|
MZ |
Mozambique |
|
NA |
Namibie |
|
NC |
Nouvelle-Calédonie |
|
NE |
Niger |
|
NET |
Organisme
ayant un
rapport
avec
Internet |
|
NF |
Iles
Norfolk |
|
NG |
Nigeria |
|
NI |
Nicaragua |
|
NL |
Pays-Bas |
|
NO |
Norvège |
|
NP |
Népal |
|
NR |
Nauru |
|
NT |
Zone
Neutre |
|
NU |
Niue |
|
NZ |
Nouvelle-Zélande |
|
OM |
Oman |
|
ORG |
Organisme
non
référencé |
|
PA |
Panama |
|
PE |
Pérou |
|
PF |
Polynésie
française |
|
PG |
Papouasie
Nouvelle-Guinée |
|
PH |
Philippines |
|
PK |
Pakistan |
|
PL |
Pologne |
|
PM |
Saint-Pierre
et
Miquelon |
|
PN |
Pitcairin |
|
PR |
Porto
Rico
(USA) |
|
PS |
Territoires
palestiniens |
|
PT |
Portugal |
|
PY |
Paraguay |
|
PW |
Palau |
|
QA |
Qatar |
|
RE |
Réunion |
|
RO |
Roumanie |
|
RU |
Fédération
Russe |
|
RW |
Rwanda |
|
SA |
Arabie
Saoudite |
|
SB |
Iles
Salomon |
|
SC |
Seychelles |
|
SD |
Soudan |
|
SE |
Suède |
|
SG |
Singapour |
|
SH |
Sainte-Hélène |
|
SI |
Slovénie |
|
SJ |
Iles
Svalbard
et Jan
Mayen |
|
SK |
République
Slovaque |
|
SL |
Sierra
Leone |
|
SM |
San
Marin |
|
SN |
Sénégal |
|
SO |
Somalie |
|
SR |
Surinam |
|
ST |
Saint
Tomé et
Principe |
|
SY |
Syrie |
|
SU |
Union
Soviétique |
|
SV |
El
Salvador |
|
SZ |
Swaziland |
|
TC |
Iles
Turques
et
Caicos |
|
TD |
Tchad |
|
TF |
Territoire
Austral
Français |
|
TG |
Togo |
|
TH |
Thaïlande |
|
TJ |
Tadjikistan |
|
TK |
Tokelau |
|
TM |
Turkmenistan |
|
TN |
Tunisie |
|
TO |
Tonga |
|
TP |
Timor
Est |
|
TR |
Turquie |
|
TT |
Trinité
et
Tobago |
|
TV |
Tuvalu |
|
TW |
Taïwan |
|
TZ |
Tanzanie |
|
UA |
Ukraine |
|
UG |
Ouganda |
|
UK |
Royaume-Uni |
|
UM |
US Minor
Outlying
Islands |
|
US |
Etats-Unis |
|
UY |
Uruguay |
|
UZ |
Ouzbékistan |
|
VA |
Cité du
Vatican |
|
VC |
Saint-vincent
et
Grenadines |
|
VE |
Venezuela |
|
VG |
Iles
Vierges
Britanniques |
|
VI |
Iles
Vierges
Américaines |
|
VN |
Viêt Nam |
|
VU |
Vanuatu |
|
WF |
Wallis
et
Futuna |
|
WS |
Samoa de
l'Ouest |
|
YE |
Yémen |
|
YT |
Mayotte |
|
YU |
Yougoslavie |
|
ZA |
Afrique
du sud |
|
ZM |
Zambie |
|
ZR |
Zaïre |
|
ZW |
Zimbabwe |
|
De nombreux programmes TCP/IP peuvent être exécutés simultanément sur Internet (vous pouvez par exemple ouvrir plusieurs navigateurs simultanément ou bien naviguer sur des pages HTML tout en téléchargeant un fichier par FTP). Chacun de ces programmes travaille avec un protocole, toutefois l'ordinateur doit pouvoir distinguer les différentes sources de données.
Ainsi, pour faciliter ce processus, chacune de ces applications se voit attribuer une adresse unique sur la machine, codée sur 16 bits: un port (la combinaison adresse IP + port est alors une adresse unique au monde, elle est appelée socket).
L'adresse IP sert donc à identifier de façon unique un ordinateur sur le réseau tandis que le numéro de port indique l'application à laquelle les données sont destinées. De cette manière, lorsque l'ordinateur reçoit des informations destinées à un port, les données sont envoyées vers l'application correspondante. S'il s'agit d'une requête à destination de l'application, l'application est appelée application serveur. S'il s'agit d'une réponse, on parle alors d'application cliente.
Le processus qui consiste à pouvoir faire transiter sur une connexion des informations provenant de diverses applications s'appelle le multiplexage. De la même façon le fait d'arriver à mettre en parallèle (donc répartir sur les diverses applications) le flux de données s'appelle le démultiplexage.
Ces opérations sont réalisées grâce au port, c'est-à-dire un numéro associé à un type d'application, qui, combiné à une adresse IP, permet de déterminer de façon unique une application qui tourne sur une machine donnée.
Il existe des milliers de ports (ceux-ci sont codés sur 16 bits, il y a donc 65536 possibilités), c'est pourquoi une assignation standard a été mise au point, afin d'aider à la configuration des réseaux.
Voici certaines de ces assignations par défaut:
Les ports 0 à 1023 sont les ports reconnus ou réservés (Well Known Ports). Ils sont assignés par le IANA (Internet Assigned Numbers Authority) et sont, sur beaucoup de systèmes, uniquement utilisables par les processus système ou les programmes exécutés par des utilisateurs privilégiés. Un administrateur réseau peut toutefois lier des services aux ports de son choix.
Les ports 1024 à 49151 sont appelés ports enregistrés (Registered Ports)
Les ports 49152 à 65535 sont les ports dynamiques ou privés
Ainsi, un serveur (un ordinateur que l'on contacte et qui propose des services tels que FTP, Telnet, ...) possède des numéros de port fixes auxquels l'administrateur réseau a associé des services. Ainsi, les ports d'un serveur sont généralement compris entre 0 et 1023 (fourchette de valeurs associées à des services connus).
Du côté du client, le port est choisi aléatoirement parmi ceux disponibles par le système d'exploitation. Ainsi, les ports du client ne seront jamais compris entre 0 et 1023 car cet intervalle de valeurs représente les ports connus.
|
Une URL (Uniform Resource Locator) est un format de nommage universel pour désigner une ressource sur Internet. Il s'agit d'une chaîne de caractères ASCII imprimables qui se décompose en cinq parties:
- Le nom du protocole : c'est-à-dire en quelque sorte le langage utilisé pour communiquer sur le réseau. Le protocole le plus largement utilisé est le protocole HTTP (HyperText Transfer Protocol), le protocole permettant d'échanger des pages Web au format HTML. De nombreux autres protocoles sont toutefois utilisables (FTP,News,Mailto,Gopher,...)
- Identifiant et mot de passe : permet de spécifier les paramètres d'accès à un serveur sécurisé. Cette option est déconseillée car le mot de passe est visible dans l'URL
- Le nom du serveur : Il s'agit d'un nom de domaine de l'ordinateur hébergeant la ressource demandée. Notez qu'il est possible d'utiliser l'adresse IP du serveur, ce qui rend par contre l'URL moins lisible.
- Le numéro de port : il s'agit d'un numéro associé à un service permettant au serveur de savoir quel type de ressource est demandée. Le port associé par défaut au protocole est le port numéro 80. Ainsi, lorsque le service Web du serveur est associé au numéro de port 80, le numéro de port est facultatif
- Le chemin d'accès à la ressource : Cette dernière partie permet au serveur de connaître l'emplacement auquel la ressource est située, c'est-à-dire de manière générale l'emplacement (répertoire) et le nom du fichier demandé
Une URL a donc la structure suivante :
| Protocole |
Mot de passe (facultatif) |
Nom du serveur |
Port
(facultatif si 80) |
Chemin |
| http:// |
user:password@ |
www.socotech.com |
:80 |
/glossair/glossair.php3 |
Les protocoles suivant peuvent par exemple être utilisés par l'intermédiaire de l'URL :
- http, pour la consultation de pages web
- ftp, pour la consultation de sites FTP
- telnet, pour la connexion à un terminal distant
- mailto, pour l'envoi d'un courrier électronique
- wais
- gopher
Le nom de fichier dans l'URL peut être suivi d'un point d'interrogation puis de données au format ASCII, il s'agit de données supplémentaires envoyées en paramètre d'une application sur le serveur (un script CGI par exemple). L'URL ressemblera alors à une chaîne de caractères comme celle-ci :
http://www.socotech.com/forum/index.php3?cat=1&page=2
Etant donné que l'URL est un moyen d'envoyer des informations à travers Internet (pour envoyer des données à un script CGI par exemple), il est nécessaire de pouvoir envoyer des caractères spéciaux, or les URL ne peuvent pas contenir de caractères spéciaux. De plus, certains caractères sont réservés car ils ont une signification (le slash permet de spécifier un sous-répertoires, les caractères & et ? servent à l'envoi de données par formulaires...). Enfin les URL peuvent être inclus dans un document HTML, ce qui rend difficile l'insertion de caractères tels que < ou > dans l'URL.
C'est pourquoi un codage est nécessaire ! Le codage consiste à remplacer les caractères spéciaux par le caractère % (devenant lui aussi un caractère spécial) suivi du code ASCII du caractère à coder en notation hexadécimale.
Voici la liste des caractères nécessitant un codage particulier :
| Caractère |
Codage URL |
| Tabulation |
%09 |
| Espace |
%20 |
| " |
%22 |
| # |
%23 |
| % |
%25 |
| & |
%26 |
| ( |
%28 |
| ) |
%29 |
| , |
%2C |
| . |
%2E |
| / |
%2F |
| : |
%3A |
| ; |
%3B |
| < |
%3C |
| = |
%3D |
| > |
%3E |
| ? |
%3F |
| @ |
%40 |
| [ |
%5B |
| \ |
%5C |
| ] |
%5D |
| ^ |
%5E |
| ' |
%60 |
| { |
%7B |
| | |
%7C |
| } |
%7D |
| ~ |
%7E |

|
|
|
|
|
|
|