Réseaux - Cours 5. Datagrammes IP, ARP et ICMP. Cyril Pain-Barre. Semestre 1 - version du 13/11/2009. IUT Informatique Aix-en-Provence

Documents pareils
Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

Réseaux IUP2 / 2005 IPv6

Introduction. Adresses

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

Réseaux - Cours 3. BOOTP et DHCP : Amorçage et configuration automatique. Cyril Pain-Barre. IUT Informatique Aix-en-Provence

Rappels réseaux TCP/IP

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

7.3 : Ce qu IPv6 peut faire pour moi

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Dynamic Host Configuration Protocol

Configuration automatique

Protocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier

Couche Transport TCP et UDP

Année Universitaire session 1 d automne Parcours : CSB5 Licence 3 STS Informatique

Introduction aux Technologies de l Internet

Internet Protocol. «La couche IP du réseau Internet»

Présentation du modèle OSI(Open Systems Interconnection)

IPv6. Protocole, format et applications. Tuyêt Trâm DANG NGOC. Université de Cergy-Pontoise. Tuyêt Trâm DANG NGOC IPv6 1 / 150

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

DHCP. Dynamic Host Configuration Protocol

LES PROTOCOLES DES RÉSEAUX

Plan. Programmation Internet Cours 3. Organismes de standardisation

Télécommunications. IPv4. IPv4 classes. IPv4 réseau locaux. IV - IPv4&6, ARP, DHCP, DNS

Cisco Certified Network Associate

Réseaux Internet & Services

DIFF AVANCÉE. Samy.

Configuration automatique

Les Réseaux. les protocoles TCP/IP

2. DIFFÉRENTS TYPES DE RÉSEAUX

Culture informatique. Cours n 9 : Les réseaux informatiques (suite)

Protocoles réseaux. Abréviation de Binary Digit. C'est la plus petite unité d'information (0, 1).

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

Ch2 La modélisation théorique du réseau : OSI Dernière maj : jeudi 12 juillet 2007

Notions de Réseaux TCP/IP et environnements Microsoft Windows. Michel Cabaré Novembre 2002 ver 2.0

Le service IPv4 multicast pour les sites RAP

TABLE DES MATIERES. I. Objectifs page 2. II. Types de réseaux page 2. III. Transmission page 2. IV. Câbles page 3. V.

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT

Chapitre 6 -TP : Support Réseau des Accès Utilisateurs

Les Virtual LAN. F. Nolot 2008

Couche application. La couche application est la plus élevée du modèle de référence.

L3 informatique Réseaux : Configuration d une interface réseau

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

Internet - Outils. Nicolas Delestre. À partir des cours Outils réseaux de Paul Tavernier et Nicolas Prunier

TP 1 : LES COMMANDES RESEAUX Matière: RESEAUX LOCAUX

TCP/IP, NAT/PAT et Firewall

module Introduction aux réseaux DHCP et codage Polytech / 5

TD 2 Chapitre 4 : Support des Services et Serveurs. Objectifs : Maîtriser l'exploitation des tables de routage dynamique.

U.E. ARES - TD+TME n 1

N o t i o n s d e b a s e s u r l e s r é s e a u x C h a p i t r e 2

SOMMAIRE : CONFIGURATION RESEAU SOUS WINDOWS... 2 INSTRUCTIONS DE TEST DE CONNECTIVITE... 5

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP

Les Virtual LAN. F. Nolot. Master 1 STIC-Informatique 1

Installation et configuration d un serveur DHCP (Windows server 2008 R2)

Sécurité d IPv6. Sécurité d IPv6. Stéphane Bortzmeyer AFNIC bortzmeyer@nic.fr. Stéphane Bortzmeyer AFNIC bortzmeyer@nic.fr

Les firewalls libres : netfilter, IP Filter et Packet Filter

UDP/TCP - Protocoles transport

Introduction aux réseaux

Cisco Discovery - DRSEnt Module 7

Cisco Certified Network Associate Version 4

Internet Group Management Protocol (IGMP) Multicast Listener Discovery ( MLD ) RFC 2710 (MLD version 1) RFC 3810 (MLD version 2)

Le Multicast. A Guyancourt le

Plan. Rappels sur Netflow v1 v8. Netflow v9. Collecteur UTC «IPFlow» Cisco IOS : Implémentation de Netflow IPv6

Présentation et portée du cours : CCNA Exploration v4.0

Les clés d un réseau privé virtuel (VPN) fonctionnel

Introduction à l'analyse réseau Philippe Latu philippe.latu(at)linux-france.org

Administration des ressources informatiques

Mise en place d un cluster NLB (v1.12)

Découverte de réseaux IPv6

Packet Tracer : configuration des listes de contrôle d'accès étendues, scénario 1

LES RESEAUX INFORMATIQUES

Multicast & IGMP Snooping

IPFIX (Internet Protocol Information export)

Réseaux - Cours 4. Traduction d adresse (NAT/PAT) et Service de Nom de Domaine (DNS) Cyril Pain-Barre. IUT Informatique Aix-en-Provence

Master d'informatique 1ère année. Réseaux et protocoles. Architecture : les bases

NOTIONS DE RESEAUX INFORMATIQUES

Chap.9: SNMP: Simple Network Management Protocol

Algorithmique et langages du Web

Le Protocole DHCP. Définition. Références. Fonctionnement. Les baux

Introduction à TCP/IP

Chapitre 11 : Le Multicast sur IP

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

Infocus < >

Technologies de l Internet

1 DHCP sur Windows 2008 Server Introduction Installation du composant DHCP Autorisation d'un serveur DHCP...

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

TCP/IP Internet/Intranet/Extranet

Programme formation pfsense Mars 2011 Cript Bretagne

Devoir Surveillé de Sécurité des Réseaux

Sécurité et Firewall

Métrologie des réseaux IP

Cours Réseaux. Plan. I. Réseau: Définitions et éléments II. Le modèle à couches

Le protocole VTP. F. Nolot 2007

Réseaux et protocoles Damien Nouvel

Domain Name System. Schéma hiérarchique. Relation

Figure 1a. Réseau intranet avec pare feu et NAT.

Projet 8INF206 : Sécurité réseau informatique Attaque de l homme du milieu (MITM) Guillaume Pillot

RTP et RTCP. EFORT

Transcription:

Réseaux - Cours 5 Datagrammes IP, ARP et ICMP Cyril Pain-Barre IUT Informatique Aix-en-Provence Semestre 1 - version du 13/11/2009 1/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 1/49

Datagrammes IP (RFC 791) 2/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 2/49

Datagramme IP sur Ethernet V2 trame Ethernet v2 contenant un datagramme IP (EtherType en Hexa) : Préambule Adresse Destination Adresse Source type données 08 00 Datagramme IP CRC (dé)multiplexage Ethernet v2 : ARP RARP IP... le protocole destinataire des données est indiqué par le champ EtherType 0x0806 0x8035 0x0800 Ethernet V2 trame données 3/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 3/49

Format du datagramme IP en-tête : nombre variable d octets (multiple de 4) données : nombre quelconque d octets (limité à 65 315) en tête bits : taille variable partie fixe (20 octets) 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 VER HLEN Time To Live Identification TOS Protocole Adresse IP Source Adresse IP Destination 1 2 2 6 7 8 9 0 1 2 3 4 5 6 7 8 9 Flags Options IP (éventuelles) Longueur Totale Déplacement Bourrage 3 0 3 1 65 535 octets max taille variable Données 4/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 4/49

Champ Version en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Time To Live Identification Protocole Flags Adresse IP Source Adresse IP Destination Options IP (éventuelles) Données Déplacement Bourrage 65 535 octets max codé sur 4 bits identifie la version du (format du) datagramme actuellement, la version est 4 (codée 0100 en binaire) dans le datagramme IPv6, ce champ est maintenu et vaut 6 permet de s assurer que le datagramme sera correctement interprété 5/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 5/49

Champs Adresses adresse IP Source : (32 bits) identifie l hôte à l origine du datagramme adresse IP Destination : (32 bits) identifie le destinataire final du datagramme en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Time To Live Identification Protocole Flags Adresse IP Source Adresse IP Destination Options IP (éventuelles) Données Déplacement Bourrage 65 535 octets max IP Source IP Destination Ces adresses ne sont pas modifiées par les routeurs. Toutefois, en cas de NAT/NAPT (translation d adresse), la NATbox peut les modifier (voir second semestre). 6/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 6/49

Champ Longueur d en-tête (HLEN) (internet) Header LENgth VER HLEN TOS Longueur Totale Time To Live Identification Protocole Flags Adresse IP Source Adresse IP Destination Options IP (éventuelles) codée sur 4 bits indique le nombre de mots de 32 bits de l en-tête (comprenant les options) : en-tête de 20 à 60 octets 5 HLEN 15 si HLEN > 5 alors il y a des options en tête taille variable taille variable partie fixe (20 octets) Données Déplacement Bourrage 65 535 octets max 7/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 7/49

Champ Longueur Totale en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Identification Flags Déplacement Time To Live Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Bourrage Données 65 535 octets max codée sur 16 bits indique le nombre de total d octets du datagramme (en-tête + données) comprise entre 20 et 65 535 8/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 8/49

Champ Type Of Service (TOS) codé sur 8 bits : 0 1 2 3 4 5 6 7 Priorité D T R 0 0 inutilisés Priorité : de 0 à 7 distinction entre normal et controle routeurs : infos trafic 6 et 7 en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Time To Live Identification val 2 Protocole Flags Adresse IP Source Adresse IP Destination Options IP (éventuelles) Données Priorité Déplacement Bourrage signification 65 535 octets max bits D, T et R : type d acheminement désiré : D(elay) : delai d acheminement court T(hroughput) : débit de transmission élevé R(eliability) : grande fiabilité le TOS constitue un souhait, souvent ignoré 000 001 010 011 100 101 110 111 routine priority immediate flash flash override critic internetwork control network control 9/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 9/49

Champ Time To Live (TTL) en tête taille variable taille variable partie fixe (20 octets) VER HLEN Time To Live Identification TOS Protocole Flags Adresse IP Source Adresse IP Destination Options IP (éventuelles) codé sur 8 bits indiqué par l émetteur pour limiter : la durée de vie du datagramme (en secondes) le nombre de routeurs traversés par le datagramme décrémenté par routeurs et stations traitant le datagramme : de 1 à chaque traversée d un routeur du temps passé en file d attente Données Longueur Totale Déplacement si atteint 0, le datagramme est détruit, et l émetteur est informé par un message ICMP évite qu un datagramme ne circule indéfiniment évite que des fragments ne soient gardés inutilement Bourrage 65 535 octets max 10/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 10/49

Champ Protocole en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Identification Flags Déplacement Time To Live Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Bourrage Données 65 535 octets max codé sur 8 bits indique le protocole devant recevoir les données du datagramme les valeurs de ce champ sont gérées par l autorité centrale et accessibles sur le site www.iana.org 11/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 11/49

Champ Protocole quelques valeurs officielles : val 10 protocole 0 IP 1 ICMP 2 IGMP 6 TCP 17 UDP 89 OSPF en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Identification Flags Déplacement Time To Live Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Bourrage Données 65 535 octets max démultiplexage IP : ICMP UDP TCP... 1 17 6 IP données 12/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 12/49

Champ d en-tête (checksum) codé sur 16 bits contrôle l intégrité de l en-tête uniquement en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Identification Flags Déplacement Time To Live Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Bourrage Données 65 535 octets max IP ne vérifie pas si les données ont subi des erreurs de transmission calculé par l émetteur vérifié lors dela réception (routeurs et destinataire) : stocker le checksum calculer le checksum si différents alors détruire le datagramme recalculé et modifié par les routeurs (car modifient au moins le TTL) 13/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 13/49

Champ d en-tête : calcul en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Identification Flags Déplacement Time To Live Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Bourrage Données 65 535 octets max 2 + + + + + + + + + + + + ret1 VER Flags HLEN Time To Live 16 bits Longueur Totale Identification TOS Déplacement Protocole 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Adresse IP Source Adresse IP Destination Options IP (éventuelles) = val1 Bourrage 1 3 + ret2 4 + 5 val1 = val2 val2 = val3 checksum ret1 ret2 1 2 3 4 5 mettre checksum à 0 calculer somme des mots de 16 bits de l en tête ajouter ret1 à val1 ajouter ret2 à val2 checksum = complément à 1 de val3 14/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 14/49

MTU et fragmentation Maximum Transfer Unit (MTU) : taille max des données (charge utile) transportées sur un réseau physique Ethernet : 1 500 octets Token Ring : 4 ou 16 Ko X.25 : 128 octets recommandés (max 255) SMDS : 9 188 octets Frame Relay : 1 600 octets... et donc des datagrammes en tête taille variable taille variable partie fixe (20 octets) VER HLEN Time To Live Identification TOS Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Données Longueur Totale Déplacement IP fragmente tout datagramme plus grand que le MTU du réseau qui doit le transporter : Flags Bourrage 65 535 octets max MTU = 4000 MTU = 1500 MTU = 1000 chaque fragment est un datagramme acheminé indépendamment (peut suivre une route différente des autres fragments) et peut être à son tour fragmenté 15/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 15/49

Champs Fragmentation en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Identification Flags Déplacement Time To Live Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Bourrage Données 65 535 octets max 16 bits 3 bits 13 bits identification 0 D M déplacement toujours à 0 flags identification : valeur identifiant le datagramme d origine relativement à l adresse IP Source bit D(on t Fragment) : le datagramme ne doit pas être fragmenté (détruit et message ICMP si impossible) bit M(ore) : à 0 si ce datagramme est le dernier (ou seul) fragment déplacement (Offset) : indique la position du premier octet de données dans le datagramme d origine. Cette position est déplacement 8. Vaut 0 si pas de fragmentation Cyril Pain-Barre Datagrammes IP, ARP et ICMP 16/49 16/50

Réassemblage en tête taille variable taille variable partie fixe (20 octets) VER HLEN TOS Longueur Totale Identification Flags Déplacement Time To Live Protocole Adresse IP Source Adresse IP Destination Options IP (éventuelles) Bourrage Données 65 535 octets max réalisé par le destinataire final : met en attente les fragments des datagrammes incomplets les réordonne détruit tous les fragments d un datagramme si le TTL de l un d eux passe à 0 (et envoie un message ICMP à l émetteur) 17/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 17/49

Résolution d adresse 18/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 18/49

Nécessité de la résolution d adresse situation : une station/routeur S a un datagramme à transmettre à une station/routeur D du même réseau. D est l adresse IP de la destination finale du datagramme (remise directe) ou celle d un routeur obtenue par consultation de la table de routage (remise indirecte) (adresses IP) résolution d adresse (adresses physiques) IP Hôte Réseau Datag. IP commutation/routage paquet,trame,cellule... IP Hôte Réseau la transmission doit se faire en utilisant le service de la couche hôte-réseau (réseau physique) la couche hôte-réseau n utilise pas les adresses IP mais des adresses physiques (adresses MAC) la résolution d adresse est le mécanisme permettant d obtenir l adresse physique (de l interface/carte réseau) de la station possédant une certaine adresse IP Cyril Pain-Barre Datagrammes IP, ARP et ICMP 19/49 19/50

Méthodes possibles pour la résolution d adresse résolution directe l adresse physique est déterminée comme une fonction de l adresse IP méthode simple à mettre en œuvre si les adresses physiques sont configurables interrogation d un serveur un serveur est chargé de collecter les adresses physiques et IP des hôtes du réseau les stations interrogent le serveur pour résoudre les adresses méthode souvent utilisée lorsque le réseau ne permet pas la diffusion mais la résolution n est plus possible si le serveur devient injoignable... 20/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 20/49

Résolution dynamique par ARP Pour les réseaux permettant la diffusion, la méthode privilégiée est ARP (Address Resolution Protocol), définie dans la RFC 826. ARP a l avantage d être à la fois dynamique et décentralisée : les changements d association adresse IP/adresse MAC sont automatiquement et rapidement pris en compte aucun serveur n est nécessaire et une panne d une station n a aucun impact global ARP a été originellement défini pour IP et Ethernet. Mais il est plus général et peut être utilisé sur tout type de réseau permettant la diffusion, pour le compte de différents protocoles réseau (dont IP) IP sur Ethernet utilise systématiquement ARP 21/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 21/49

Principe de la résolution par ARP S 194.199.116.5 194.199.116.115 194.199.116.22 S 194.199.116.5 1 194.199.116.115 194.199.116.22 réseau 194.199.116.0 (permettant la diffusion) requête (broadcast) : qui est 194.199.116.2? 194.199.116.39 194.199.116.10 194.199.116.2 D 194.199.116.39 194.199.116.10 194.199.116.2 D S 194.199.116.5 2 194.199.116.115 2 194.199.116.22 S 194.199.116.5 194.199.116.115 194.199.116.22 requête (broadcast) : qui est 194.199.116.2? réponse (unicast) : moi, voilà mon adresse MAC 194.199.116.39 2 2 194.199.116.10 2 194.199.116.2 D 194.199.116.39 194.199.116.10 3 194.199.116.2 D 1 S envoie en broadcast une requête ARP signifiant qu il souhaite obtenir l adresse physique correspondant à D 2 la requête est reçue et traitée par toutes les stations du réseau 3 seule la station d adresse D répond en envoyant en unicast à S une réponse ARP contenant l adresse physique demandée 23/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 22/49

Format du datagramme ARP bits : 0 8 16 31 Type de réseau Protocole L. @phy L. @pro Opération (1 ou 2) adresse physique source taille variable adresse protocole source adresse physique destination adresse protocole destination la taille du datagramme ARP dépend des protocoles en jeu la taille (en octets) des adresses physiques (comme Ethernet) est indiquée par le champ Longueur adresses physiques (L. @phy) la taille (en octets) des adresses protocole (comme IP) est indiquée par le champ Longueur adresses protocole (L. @pro) les requêtes et les réponses ont le même format ; le champ Opération indique s il s agit d une requête (Opération vaut 1) ou d une réponse (Opération vaut 2) 24/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 23/49

Datagramme ARP : type de réseau et protocole bits : 0 8 16 31 Type de réseau Protocole L. @phy L. @pro Opération (1 ou 2) adresse physique source taille variable adresse protocole source adresse physique destination adresse protocole destination Type de réseau précise le réseau physique utilisé et donc le type d adresse recherchée Protocole précise la couche réseau utilisée et donc le type d adresse à partir duquel la résolution doit être opérée les valeurs que peuvent prendre ces champs sont définies par l IANA (www.iana.org) : Type de réseau vaut 0x0001 pour Ethernet Protocole vaut 0x0800 pour IP 25/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 24/49

Datagramme ARP : adresses bits : 0 8 16 31 Type de réseau Protocole L. @phy L. @pro Opération (1 ou 2) taille variable adresse physique source adresse protocole source adresse physique destination adresse protocole destination qu il s agisse d une requête ou d une réponse : adresse physique source contient l adresse physique de l émetteur du datagramme adresse protocole source contient son adresse réseau adresse physique destination est inconnue pour une requête (00:00:00:00:00:00 pour Ethernet), et celle du destinataire pour une réponse adresse protocole destination contient l adresse réseau du destinataire (dans une requête, c est l adresse à résoudre) Cyril Pain-Barre Datagrammes IP, ARP et ICMP 25/49 26/50

Requête ARP pour IP sur Ethernet V2 adresses de l émetteur IP : 194.199.116.5 ethernet : 08:00:05:0e:ab:51 adresses de la cible IP : 194.199.116.2 ethernet (recherchée) : 08:00:07:5c:10:0a Trame Ethernet V2 (en hexadécimal) : destination source type données préambule ff:ff:ff:ff:ff:ff 08:00:05:0e:ab:51 08 06 Datagramme ARP (requête) CRC (broadcast) Requête ARP (en binaire) : Type réseau : Protocole : L. @ phy : L. @ pro : Ethernet (1) IP (0x0800) 6 4 Opération : requête (1) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 1 1 0 1 0 1 0 0 0 1 Ethernet source (08:00:05:0e:ab:51) 1 1 0 0 0 0 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 1 0 0 0 0 0 0 0 1 0 1 IP source (194.199.116.5) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Ethernet destination (inconnue) 1 1 0 0 0 0 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 1 0 0 0 0 0 0 0 0 1 0 IP destination (194.199.116.2) 27/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 26/49

Réponse ARP pour IP sur Ethernet v2 émetteur de la réponse IP : 194.199.116.2 ethernet : 08:00:07:5c:10:0a destinataire de la réponse IP : 194.199.116.5 ethernet : 08:00:05:0e:ab:51 Trame Ethernet V2 (en hexadécimal) : destination source type données préambule 08:00:05:0e:ab:51 08:00:07:5c:10:0a 08 06 Datagramme ARP (réponse) CRC (unicast) Réponse ARP (en hexadécimal) : Type réseau : Ethernet (1) Protocole : L. @ phy : 6 IP (0x0800) L. @ pro : 4 0 0 0 1 0 8 0 0 0 6 0 4 0 0 0 2 Opération : réponse (2) 0 8 0 0 0 7 5 c 1 0 0 a Ethernet source (08:00:07:5c:10:0a) c 2 c 7 7 4 0 2 IP source (194.199.116.2) 0 8 0 0 0 5 0 e a b 5 1 Ethernet destination (08:00:05:0e:ab:51) c 2 c 7 7 4 0 5 IP destination (194.199.116.5) 28/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 27/49

Optimisations d ARP cache (mémoire temporaire) ARP obligatoire stocké sur les hôtes : contient une liste d associations adresse MAC, adresse IP évite d émettre une nouvelle requête lorsque l association a déjà été obtenue une association a une durée de vie limitée (environ 20 minutes) chaque fois qu une association est confirmée, sa durée de vie est remise à 20 min les associations dont la durée de vie expire sont supprimées traitement de la requête : les requêtes étant envoyées en broadcast, toutes les stations les traitent or elles incluent l adresse MAC et l adresse IP de l émetteur en recevant une requête, les stations mettent à jour leur cache avec les infos sur l émetteur émission d une requête ARP fictive si changement de carte (et donc d adresse MAC) : en plaçant sa propre adresse IP comme celle recherchée personne ne répondra mais tout le monde aura mis à jour son cache avec la nouvelle adresse MAC Cyril Pain-Barre Datagrammes IP, ARP et ICMP 28/49 29/50

ICMP : Internet Control and Error Message Protocol (RFC 792, 1122, 950, 1256) 30/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 29/49

Statut et rôle d ICMP ICMP est un module obligatoire d IP qui assure deux fonctions principales : rendre compte d un problème réseau tester l accessibilité d une machine les messages ICMP sont de deux natures : les messages d erreurs : suite à une erreur constatée sur un datagramme (qui entraîne le plus souvent sa destruction) les messages d interrogation/information : messages divers contribuant au (ou informant sur le) bon fonctionnement des équipements 31/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 30/49

Transport des messages ICMP Les messages ICMP sont encapsulés dans des datagrammes IP (champ Protocole vaut 1) : Message ICMP en tête ICMP données ICMP Datagramme IP en tête IP données IP Trame (ou PDU hôte réseau) en tête données trame en queue mais IP utilisant ICMP, les deux se situent au même niveau les protocoles de transport (TCP et UDP) utilisent aussi ICMP pour certaines erreurs (sur la station destinataire) Transport (TCP et UDP) IP & ICMP Hôte Réseau 32/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 31/49

IP : un service non fiable les causes rendant impossible la remise d un datagramme peuvent être nombreuses : panne de ligne de transmission, ou d un processeur destinataire déconnecté TTL insuffisant congestion des routeurs intermédiaires checksum erroné mauvaises tables de routage... néanmoins, les erreurs ne sont pas toutes détectables lorsqu une erreur (dans la remise d un datagramme) est détectée par un routeur ou la station destinataire, un rapport d erreur (message ICMP) est envoyé à l émetteur (d origine) du datagramme 33/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 32/49

Les messages d erreur ICMP Internet émetteur destinataire message ICMP erreur!! le message inclut au moins 28 octets (l en-tête et les 64 premiers bits) du datagramme ayant causé l erreur, contenant les en-têtes des protocoles de niveau supérieur, ce qui permet notamment de déterminer le processus émetteur pour l informer il n est envoyé qu à l émetteur du datagramme qui, parfois, n y peut rien (exemple d une mauvaise table de routage d un routeur intermédiaire) aucun message d erreur n est envoyé si le datagramme en cause contient un message ICMP Cyril Pain-Barre Datagrammes IP, ARP et ICMP 33/49 34/50

Messages ICMP destinés au module ICMP du logiciel IP pas de précaution (sécurité, priorité) particulière pour acheminement : possibilité de perte, duplication, etc. tous les messages ICMP commencent par les 3 champs : Type (8 bits) Code (8 bits) (16 bits) 35/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 34/49

Messages ICMP : Type et Code le champ Type (codé sur 8 bits) indique la nature du message : valeur (décimal) 0 3 4 5 8 9 10 11 12 13 14 17 18 Type Code signification réponse à une demande d echo destination inacessible limitation de production à la source redirection (changement de route) demande d echo annonnce de routeur sollicitation de routeur TTL de datagramme expiré problème de paraméte d un datagramme demande d horodatage réponse à une demande d horodatage demande de masque de sous réseau réponse à une demande de masque de sous réseau le champ Code (8 bits) est utilisé pour préciser le message Type Code 36/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 35/49

Messages ICMP : le champ (ou checksum) : est codé sur 16 bits porte sur (contrôle) la totalité du message ICMP calculé de la même manière que le checksum IP Type Code suite du message ICMP 37/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 36/49

Test d accessibilité permet de s assurer qu une station est joignable et en état de communiquer exploité par la commande ping échange de messages ECHO : Type (0 ou 8) Code (0) Identificateur (16 bits) Numéro de séquence (16 bits) Données optionnelles... demande d echo (Type = 8) réponse à une demande d echo (Type = 0) le Code est toujours à 0 Identitificateur permet d associer la réponse à la demande Numéro de Séquence incrémenté à chaque demande 38/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 37/49

Exemple de ping (sous Linux) $ ping www.free.fr PING www.free.fr(212.27.48.10) 56(84) bytes of data. 64 bytes from www.free.fr(212.27.48.10): icmp_seq=1 ttl=107 time=17.6 ms 64 bytes from www.free.fr(212.27.48.10): icmp_seq=2 ttl=107 time=16.6 ms 64 bytes from www.free.fr(212.27.48.10): icmp_seq=3 ttl=107 time=17.2 ms 64 bytes from www.free.fr(212.27.48.10): icmp_seq=4 ttl=107 time=16.7 ms ---www.free.fr ping statistics--- 4 packets transmitted, 4 received, 0% packet loss, time 3012ms rttmin/avg/max/mdev= 16.619/17.094/17.662/0.441 ms 39/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 38/49

Compte rendu de destination inaccessible envoyé à l Adresse Source d un datagramme IP lorsqu une station/routeur se rend compte qu il ne peut pas atteindre sa destination (ordinateur ou processus) messages avec Type = 3 Type (3) Code (0 à 12) Inutilisé (32 bits à 0) au moins 28 octets En tête et 64 premiers bits du datagramme IP le Code précise la nature du problème commes les autres messages d erreur, contient le début du datagramme ayant provoqué l erreur 40/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 39/49

Codes de compte rendu de destination inaccessible Type (3) Code (0 à 12) Inutilisé (32 bits à 0) En tête et 64 premiers bits du datagramme IP plusieurs codes ont été définis : valeur (décimal) 0 1 2 3 4 5 6 7 8 échec de routage à la source réseau de destination inconnu ordinateur de destination inconnu ordinateur source isolé 9 communication avec le réseau de destination interdite par l administrateur réseau 10 communication avec l ordinateur destinataire interdite par l administrateur réseau 11 12 réseau inaccessible ordinateur inaccessible protocole inaccessible port inacessible signification fragmentation nécessaire mais bit Don t Fragment positionné réseau inacessible pour le service demandé ordinateur inaccessible pour le service demandé 41/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 40/49

Message de contrôle de la congestion appelé aussi message de limitation de production de la source (Source Quench) envoyé par un routeur à l émetteur d un datagramme détruit pour cause de saturation (congestion) un message par datagramme détruit le message contient le début du datagramme le récepteur doit alors réduire ses envois pour cette destination format (Type = 4, Code = 0) : Type (4) Code (0) Inutilisé (32 bits à 0) au moins 28 octets En tête et 64 premiers bits du datagramme IP 42/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 41/49

Message de redirection appelé aussi message de modification de la route envoyé par un routeur à l émetteur (source) d un datagramme, situé sur le même réseau, si le routeur n est pas le meilleur choix format (Type = 5) : Type (5) Code (0 à 3) Adresse IP d un routeur au moins 28 octets En tête et 64 premiers bits du datagramme IP le Code précise pourquoi il faut changer de route : 0 : changer de route pour atteindre le réseau 1 : changer de route pour atteindre l ordinateur 2 : changer de route pour le type de service et le réseau 3 : changer de route pour le type de service et l ordinateur Adresse IP d un routeur est l adresse du routeur qui aurait dû être utilisé l émetteur doit en tenir compte et modifier sa table de routage Cyril Pain-Barre Datagrammes IP, ARP et ICMP 42/49 43/50

Message de durée de vie expirée envoyé à l émetteur (source) d un datagramme dans l un des deux cas suivants : le TTL a expiré sur un routeur (Code = 0) le délai de réassemblage des fragments a expiré sur l ordinataire destinataire (Code = 1) format (Type = 11) : Type (11) Code (0 ou 1) Inutilisé (32 bits à 0) au moins 28 octets En tête et 64 premiers bits du datagramme IP 44/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 43/49

Message de problème de paramètre envoyé par un routeur ou l ordinataire destinataire à l émetteur (source) d un datagramme, lorsque celui-ci comporte une erreur dans un champ format (Type = 12) : Type (12) Code (0 ou 1) Pointeur Inutilisé (24 bits à 0) au moins 28 octets En tête et 64 premiers bits du datagramme IP le Code précise s il faut tenir compte du champ Pointeur : 0 : tenir compte du Pointeur 1 : ignorer Pointeur (qui devrait être à 0). Dans ce cas, il s agit d un paramètre manquant (comme une option qui aurait dû être présente) Pointeur, si utilisé, indique le numéro de l octet du datagramme reçu qui comporte l erreur 45/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 44/49

Synchronisation horloges/estimation temps de transit messages échangés entre 2 ordinateurs pour synchroniser leur horloge ou estimer le temps de transit format : Type (13 ou 14) Code (0) Identificateur Numéro de séquence Horodatage de l émission Horodatage de la réception Horodatage de la transmission où Type indique la nature du message : 13 pour une demande d horodatage, et 14 pour une réponse à une demande d horodatage le Code est toujours à 0 Identificateur et Numéro de séquence sont utilisés pour associer les réponses aux demandes 46/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 45/49

Synchronisation horloges/estimation temps de transit les 3 champs horodatage contiennent les dates, exprimées en millisecondes écoulées depuis le 1 er janvier 1970 à 0h00 : d émission de la demande de réception de la demande d envoi de la réponse Type (13 ou 14) Code (0) Identificateur Horodatage de l émission Horodatage de la réception Horodatage de la transmission Numéro de séquence plusieurs échanges sont nécessaires pour une synchronisation correcte Le protocole NTP (Network Time Protocol) a spécifiquement été développé pour synchroniser son horloge avec des serveurs de référence (et des horloges atomiques). Sa version actuelle (version 3) est définie par la RFC 1305. 47/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 46/49

Message d obtention du masque de sous-réseau permet à une station de demander son masque de sous-réseau. La demande est adressée (par ordre de préférence) en unicast à un routeur, en multicast 224.0.0.2 (All Routers) ou en broadcast 255.255.255.255 un routeur du réseau répondra en unicast en indiquant le masque format : Type (17 ou 18) Code (0) Identificateur Numéro de séquence où : Masque de sous réseau Type indique s il s agit d une demande (17) ou d une réponse (18) Code est à 0 Identificateur et Numéro de séquence sont utilisés pour associer les réponses aux demandes Masque contient le masque dans une réponse (à 0 dans une demande) Peu utilisé car généralement des protocoles de configuration automatiques sont employés, tels que BOOTP et DHCP (étudiés au second semestre). 48/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 47/49

Message d annonce d un routeur envoyé par les routeurs toutes les 10 minutes et destiné aux stations de leurs réseaux (224.0.0.1 ou à défaut en broadcast) format (Type = 9, Code = 0) : Type (9) Code (0) Nombre d adresses Taille adresse Durée de vie Adresse IP du routeur 1 selon le nombre d adresses Priorité du routeur 1 Adresse IP du routeur 2 Priorité du routeur 2... Nombre d adresses indique le nombre d adresses de routeurs Taille adresse 4 donne la taille en octets des adresses Durée de vie indique le temps en secondes de validité des infos (généralement 30 min) à chaque adresse est associée une priorité ; à utiliser par ordre de priorité croissante Cyril Pain-Barre Datagrammes IP, ARP et ICMP 48/49 49/50

Message de sollicitation d un routeur permet à un ordinateur venant de démarrer de demander aux routeurs d envoyer immédiatement un message d annonce de routeur ce message est envoyé en multicast 224.0.0.2 (All Routers) ou, à défaut, en broadcast les routeurs recevant ce message sont censés y répondre dès que possible format (Type = 10, Code = 0) : Type (10) Code (0) Réservé (32 bits à 0) 50/50 Cyril Pain-Barre Datagrammes IP, ARP et ICMP 49/49