Formation effectuée par
Tibob <
tibob@via.ecp.fr> le 23 octobre 1998.
Introduction
Qu'est-ce qu'un reseau ?
Un réseau informatique permet de relier des ordinateurs pour
qu'ils puissent s'échanger des données. Il peut se composer d'un simple
câble série entre deux ordinateurs à plusieurs millions d'ordinateurs
reliés entre eux par divers moyens hétérogènes, comme Internet.
On branche en général plus de 2 ordinateurs sur un réseau, à
l'aide d'une "multiprise réseau", un hub ou un switch.
[IMAGE d'un hub] [image d'un switch]
Ces appareil reçoivent les informations réseau (packets) sur un
port et les renvoient sur les autres.
La différence entre un hub et un switch est que le hub renvoie
les packets sur tous les ports, alors que le switch identifie le
destinataire du packet et ne l'envoie qu'à lui.
Topographie du réseau VIA
On peut la visualiser sur une image faite par Arnaud Bienvenu :
Nous utilisons la technologie LANE (LAN Emulation) qui permet
de faire croire aux ordinateurs q'ils sont connectés à un réseau Ethernet
(ils ne voient pas l'ATM). Nous reparlerons de cette technologie dans une
autre formation.
Les switchs 1000 communiquent avec le switch ATM (Corebuilder 7000)
en 155 Mbps (ATM) par une paire de fibres optiques, entre eux dans un
bâtiment à 100 Mbps (Fast Ethernet) par une paire torsadée croisée et avec
les chambres à 10 Mbps par une paire torsadée par chambre. En géneral, seul
un infime pourcentage des 10 Mbps sont utilisés, comme le montrent les
statistiques du réseau
VIA.
Réseau local
Ethernet
Le protocole physique de transmission des packets réseau utilisé
sur la résidence (et le plus répandu) est Ethernet.
Les ordinateurs sur le réseau local sont identifiés par le numéro
(universel) de leur carte réseau : l'adresse MAC, qui comporte 6 octets et
est généralement notée sous la forme
XX:XX:XX:XX:XX:XX
.
Quand une machine veut parler à une autre, elle envoie un paquet
sur le réseau, contenant l'adresse MAC destination, l'adresse source, la
longueur du packet, les données et un CRC.
Packet Ethernet
Adresse de destination |
Adresse source |
type |
Data |
CRC |
6 octets |
6 octets |
2 octets |
46 à 1500 octets |
4 octets |
Les switchs et hubs se débrouillent pour faire parvenir ce packet
à bon port, il n'y a pas de vérification de la bonne réception des packets.
Il y a une adresse particuliere : l'adresse de Broadcast, qui
signifie que ce paquet est pour tous les ordinateurs du réseau, est qui
est
FF:FF:FF:FF:FF:FF
.
IP over Ethernet
Dans la pratique, on utilise un protocole logiciel pour
communiquer de façon sûre entre les ordinateurs (il n'y a pas de confirmation
de réception de packet en Ethernet).
Le protocole le plus répandu est TCP/IP. C'est le protocole
utilisé sur Internet.
Les packets TCP/IP sont encapsulés dans les packets du protocole
de réseau local (ici Ethernet, mais ça peut etre Token Ring, ATM, FDDI...).
Les headers sont plus compliqués, mais contiennent comme en
Ethernet deux informations essentielles: L'adresse IP source et l'adresse
IP destination. L'adresse IP est unique au monde et identifie la machine
sur le réseau mondial Internet.
Le passage d'IP a MAC se fait par l'intermédiaire d'un type
particulier de paquets Ethernet, l'ARP request/reply:
A veut parler avec B, dont il a l'IP.
A demande à tout le monde sur le reseau local (broadcast)
"qui a l'IP B ?" (ARP request)
B apprend par ce biais l'adresse MAC de A et lui
répond directement que c'est lui et que son adresse MAC est
BB:BB:BB:BB:BB:BB
Les deux ordinateurs ont appris leurs adresses MAC respectives
et peuvent maintenant communiquer directement entre eux.
Le passage de MAC à IP se fait grâce a un serveur spécifique et
le protocole RARP (Reverse ARP) request/reply. Nous n'utilisons pas tout à
fait ce service: à
VIA nous utilisons le DHCP (Dynamic Host
Configuratio Protocol) qui a l'avantage de donner à l'ordinateur qui boote
son IP mais aussi l'ensemble de sa configuration réseau.
Internet
Internet est un réseau de réseaux, baseé sur le protocole TCP/IP.
Subnet
Internet est organisé en sous-réseaux, ou subnets.
Les IP sont réparties par sites ainsi:
Distribution des IP sur Internet
Classe | IP de : | à : | Premiers bits | Nombre de domaines | Nombres de machines sur un domaine |
Classe A | 0.0.0.0 | 127.255.255.255 | 0 | 128 (14bits) | 16 millions (24 bits) |
Classe B | 128.0.0.0 | 191.255.255.255 | 1 0 | 16 mille | 65 mille (16 bits) |
Classe C | 192.0.0.0 | 233.255.255.255 | 1 1 0 | 2 millions | 256 |
Classe D | 234.0.0.0 | 239.255.255.255 | 1 1 1 0 | Multicast group ID (28 bits) |
Classe E | 240.0.0.0 | 247.255.255.255 | 1 1 1 1 0 | reservé (27 bits) |
Ce sont les Classes A, B et C qui sont distribuées. Toutes les
classes A et B sont prises, et il y a de moins en moins de classes C. Le
protocole IPng (IPv6) doit régler ce problème, mais il n'est pas encore
implémenté sur certains OS payants...
Centrale a la chance d'avoir une classe B, ce qui permet à VIA
d'avoir 4096 IPs rien que pour elle...
En fait, on découpe la classe en sous-réseaux. Pourquoi ? Parce
qu'on sépare les machines qui n'ont rien à voir entre elles. Par exemple
VIA est séparée du Bat-Ens et des Labos. Une raison est que ca serait
l'enfer d'avoir des broadcasts dans tous les sens sur un domaine de 65000
machines; déja que l'IPX (protocole different de IP, utilisé pour les jeux,
style starcraft etc), basé sur le broadcast est pénible...
De plus il y a un routeur entre les sous-réseaux, ce qui permet
de sécuriser les accès (interdire un domaine...).
Pour ce faire, on alloue un certain nombre de bits à la définition
du subnet et un certain nombre à la definition de la machine.
Par exemple sur le réseau des connectés à
VIA, il y a 11
bits pour l'identification de la machine (donc 2096 adresses).
Sur le réseau des serveurs, c'est 9 bits, etc.
Ceci définit
- un subnet mask, qui comprend tous les bits de machine a 0 et les
autres à 1 (255.255.248.0 pour le réseau des connectés)
- une adresse de subnet, qui est l'adresse qui définit le subnet avec
tous les bits de machines a 0 (138.195.136.0 pour le subnet des connectés).
- une adresse de broadcast, qui est l'adresse de subnet avec tous les
bits de machine a 1 (138.195.143.255 our le reseau des connectés)
Certaines machines réseau considèrent aussi l'adresse de subnet comme une adresse de broadcast.
Routeur
Le routeur est une machine (ordinateur, materiel dédié...) qui
relie au moins deux subnets.
Sa tâche est de faire passer les packuets le nécessitant d'un
subnet a l'autre. Un ordinateur qui veut parler à un ordinateur sur un
autre subnet confie ses paquets au routeur qui s'en charge pour lui et
réenvoie éventuellement au routeur suivant, etc.
Comment ca marche ?
Déjà, l'ordinateur doit savoir si le destinataire est ou n'est
pas sur le réseau local. Il regarde donc si l'adresse IP destination est
dans son subnet (il compare IPdest AND subnetmask à IPsubnet).
- Si l'IP est dans le subnet, il fait un ARP request, et envoie son
packet directement a la machine
- Si l'IP n'est pas dans le subnet, il envoie le packet au routeur
(donc avec pour adresse MAC destination l'adresse MAC du routeur) avec
pour IP destination l'IP du destinataire.
Le routeur, recevant un packet qui n'est pas pour lui (ce n'est
pas son IP), regarde si il est connecté au subnet de destination.
- S'il y est connecté, il envoie le packet à la machine directement
sur ce subnet (apres avoir fait un ARP request)
- S'il n'y est pas connecté, il envoie le packet au routeur suivant, et
ainsi de suite.
Mais il pourrait y avoir des paquets qui circulent indefiniment!
Time To Live
Un peu de pratique
TCPDump
Packets UDP :
Ping
Traceroute michael.vatican.va
Packets TCP
Telnet <- sur un serveur telnet (mdp etc) et sur IRC
Conclusion
Mais internet ce n'est pas que ça.
Il existe plein de protocoles divers et variés
DNS
telnet, tcp, http, smtp, snmp...