Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Meilleure correspondance entre codes ICMP et ICMPv6

1 réponse
Avatar
Olivier Miakinen
Bonjour,

J'ai un petit problème délicat à vous soumettre. Il s'agit d'une
machine pouvant recevoir des messages d'erreur 'ICMP Destination
Unreachable' (type 3), mais aussi des messages d'erreur 'ICMPv6
Destination Unreachable' (type 1), et chargée de tenir le
compte des messages reçus. Le problème est que pour chaque
adresse IP (v4 ou v6) elle ne peut les stocker que dans six
cases correspondant aux codes 0 à 5 définis dans le RFC 792 :
C0 = Destination network unreachable
C1 = Destination host unreachable
C2 = Destination protocol unreachable
C3 = Destination port unreachable
C4 = Fragmentation required, and DF flag set;
C5 = Source route failed

Or elle peut à priori recevoir n'importe quel code défini dans
les RFC 792, 1122 et 1812 (pour IPv4) ou 4443 et 6550 (pour
IPv6), voire peut-être des codes qui seront définis plus tard.
Je cherche donc à déterminer la meilleure correspondance
possible -- ou disons la moins mauvaise -- entre tous ces
codes et mes six cases.

Voici ce que j'ai choisi pour le moment, un peu au hasard pour
certains, et j'aimerais un avis éclairé sur ces différents choix.
Merci à qui pourra m'aider !

> ICMPv4 <http://tools.ietf.org/html/rfc792>
> 0 = net unreachable;
> 1 = host unreachable;
> 2 = protocol unreachable;
> 3 = port unreachable;
> 4 = fragmentation needed and DF set;
> 5 = source route failed.

Ça c'est le plus facile : 0 en C0, 1 en C1, 2 en C2, 3 en C3, 4
en C4 et 5 en C5. C'est après que ça va se gâter.

> ICMPv4 <http://tools.ietf.org/html/rfc1122>
> 6 = destination network unknown
> 7 = destination host unknown
> 8 = source host isolated
> 9 = communication with destination network
> administratively prohibited
> 10 = communication with destination host
> administratively prohibited
> 11 = network unreachable for type of service
> 12 = host unreachable for type of service

J'ai mis 6, 9 et 11 en C0, le reste en C1. Dans le doute entre C0
et C1 j'ai choisi plutôt C1, car j'ai lu dans je ne sais plus quel
RFC qu'il fallait éviter qu'un problème sur un hôte puisse faire
croire que tout le réseau est inaccessible (je recherche la
référence mais pour le moment je ne la retrouve pas).

> ICMPv4 <http://tools.ietf.org/html/rfc1812>
> 13 = Communication Administratively Prohibited - generated if a
> router cannot forward a packet due to administrative filtering;
> 14 = Host Precedence Violation. Sent by the first hop router to a
> host to indicate that a requested precedence is not permitted
> for the particular combination of source/destination host or
> network, upper layer protocol, and source/destination port;
> 15 = Precedence cutoff in effect. The network operators have imposed
> a minimum level of precedence required for operation, the
> datagram was sent with a precedence below this level;

Tout en C1.

(Question annexe : qu'est que cette « precedence » dont il est
question ici ?)

> ICMPv6 <http://tools.ietf.org/html/rfc4443>
> 0 - No route to destination
> 1 - Communication with destination
> administratively prohibited
> 2 - Beyond scope of source address
> 3 - Address unreachable
> 4 - Port unreachable
> 5 - Source address failed ingress/egress policy
> 6 - Reject route to destination

J'ai mis 2 en C0, 4 en C3, et le reste en C1.

> ICMPv6 <http://tools.ietf.org/html/rfc6550>
> 7 - Error in source routing header

Et là je l'ai mis en C5.


Ah, et puis tous les codes inconnus (ICMP v4 ou v6), j'envisage
aussi de les mettre en C1, à moins qu'il ne soit préférable de
les ignorer. Noter qu'ignorer des codes connus est aussi un
choix possible, si vraiment ils n'entrent dans aucune des six
cases.

Des remarques ?

Cordialement,
--
Olivier Miakinen

1 réponse

Avatar
Olivier Miakinen
Bonjour,

Le 12/12/2013 15:51, j'écrivais :

Je cherche donc à déterminer la meilleure correspondance
possible -- ou disons la moins mauvaise -- entre tous ces
codes et mes six cases.



Ça ne semble pas passionner les foules. Ou alors c'est parce que
personne n'est suffisamment expert en codes ICMP ?

Dommage, j'aurais bien aimé avoir des avis plus éclairés que le
mien...

Cordialement,
--
Olivier Miakinen