ICMP
Section : Manuel de l'administrateur Linux (
7)
Mise à jour de la version anglaise : 27 avril 1999
Index
Menu principal
NOM
icmp, IPPROTO_ICMP - Module ICMP IPv4 du noyau Linux
DESCRIPTION
Ce module du noyau implémente le protocole ICMP (Internet Control Message
Protocol) défini dans la RFC 792. Il sert pour diagnostiquer et indiquer
des conditions d'erreurs.
L'utilisateur n'interagit pas directement avec ce module.
À la place, il communique avec les autres protocoles dans le noyau,
et ceux-ci transmettent les erreurs ICMP aux couches applicatives.
Ce module répond également aux requêtes ICMP.
Un protocole utilisateur peut recevoir des paquets ICMP pour toutes
les sockets locales en utilisant une socket raw avec le protocole
IPPROTO_ICMP.
Voir la page
raw(7)
pour plus de détails.
Les types de paquets ICMP transmis à la socket peuvent être filtrés en
utilisant l'option
ICMP_FILTER
de la socket.
Les paquets ICMP sont toujours traités par le noyau aussi,
même lorsqu'ils sont transmis à une socket utilisateur.
Linux limite le débit des paquets d'erreurs ICMP pour chaque destination.
ICMP_REDIRECT
et
ICMP_DEST_UNREACH
sont aussi limitées par la route de destination des paquets entrants.
Sysctls
ICMP dispose d'une interface sysctl pour configurer certains paramètres
IP globaux.
Cette interface est accessible en lisant ou écrivant les fichiers
/proc/sys/net/ipv4/*
ou à l'aide de l'appel système
sysctl(2).
La plupart de ces sysctls sont des limitations de débit pour des types ICMP
spécifiques.
Linux 2.2 utilise un filtre à jeton pour limiter les ICMPs.
La valeur est un délai en jiffies jusqu'à ce que le filtre soit vidé.
Un jiffy est une unité de temps dépendant du système, en général 10ms
sur un i386 et environ 1ms sur un alpha et un ia64.
- icmp_destunreach_rate
-
Fréquence maximale pour envoyer des paquets ICMP « Destination
inaccessible ».
Ceci limite le débit avec lequel ces paquets sont émis vers
des routes individuelles ou collectives.
Cette limite n'affecte par l'envoi des paquets
ICMP_FRAG_NEEDED
nécessaire pour rechercher le MTU d'un chemin.
- icmp_echo_ignore_all
-
Si cette valeur est non nulle, Linux ignorera toutes les requêtes
ICMP_ECHO.
- icmp_echo_ignore_broadcasts
-
Si cette valeur est non nulle, Linux ignorera toutes les requêtes
ICMP_ECHO
envoyées à une adresse broadcast.
- icmp_echoreply_rate
-
Vitesse maximale pour envoyer les paquets
ICMP_ECHOREPLY
en réponse aux requêtes
ICMP_ECHOREQUEST.
- icmp_paramprob_rate
-
Débit maximal pour émettre les paquets
ICMP_PARAMETERPROB.
Ceux-ci sont envoyés lorsqu'un paquet arrive avec un entête IP invalide.
- icmp_timeexceed_rate
-
Débit maximal pour émettre les paquets
ICMP_TIME_EXCEEDED.
Ceux-ci sont envoyés pour empêcher les boucles quand un paquet a réalisé
trop de sauts.
VERSIONS
Le support pour les requêtes
ICMP_ADDRESS
a été supprimé dans le noyau 2.2.
Le support pour
ICMP_SOURCE_QUENCH
a été supprimé dans Linux 2.2.
NOTES
Comme beaucoup d'autres implémentations ne supportent pas les socket raw
IPPROTO_ICMP,
on ne doit pas se reposer sur cette fonctionnalité dans les programmes
portables.
Les paquets
ICMP_REDIRECT
ne sont pas envoyés quand Linux ne fonctionne pas en routeur.
Ils ne sont également acceptés que d'une passerelle précédemment définie
dans la table de routage, et les routes de redirection expirent
après un certain délai.
L'horodatage 64 bits renvoyé par
ICMP_TIMESTAMP
est en millisecondes depuis le 1er janvier 1970.
En interne, l'ICMP Linux utilise une socket raw pour envoyer les ICMPs.
Cette socket peut apparaître dans la sortie de
netstat(8)
avec un inœud nul.
VOIR AUSSI
ip(7)
RFC 792 pour une description du protocole ICMP.
TRADUCTION
Ce document est une traduction réalisée par Christophe Blaess
<http://www.blaess.fr/christophe/> le 4 janvier 2000
et révisée le 17 juillet 2008.
L'équipe de traduction a fait le maximum pour réaliser une adaptation
française de qualité. La version anglaise la plus à jour de ce document est
toujours consultable via la commande : « LANG=C man 7 icmp ».
N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute
erreur dans cette page de manuel.
Index
- NOM
-
- DESCRIPTION
-
- Sysctls
-
- VERSIONS
-
- NOTES
-
- VOIR AUSSI
-
- TRADUCTION
-
Dernière mise à jour : 17 juillet 2008