J'étais récemment en train de dépanner un méta-problème de connectivité réseau, en ce sens que je savais qu'une destination donnée était accessible, mais je n'ai pas pu le démontrer avec traceroute
car le chemin s'est refroidi après un certain nombre de sauts. Étant donné que le dernier saut observé était juste en amont du nœud d'intérêt, j'ai reniflé le trafic, m'attendant à confirmer que les sondes l'atteignaient et à savoir quelle règle de filtrage les bloquait. Effectivement, j'ai appris que les sondes étaient des datagrammes UDP destinés à un port élevé (et variable) que j'avais, bien sûr, bloqué pour le trafic entrant.
Cela me surprend, car j'ai supposé que toutes les traceroute
sondes seraient par défaut sur ICMP, car les réponses sont ICMP. J'ai fait une enquête de documentation et j'ai constaté que différentes implémentations font des choix différents, et certaines ne permettent pas à l'utilisateur de faire une sélection non par défaut.
L'abrégé de la méthode de sonde Traceroute et l'inférence de chemin IP vers l'avant confirme mon intuition que les sondes ICMP réussiront plus souvent à atteindre la destination.
Autoriser différentes méthodes de sonde semble être une excellente idée, mais le fait de choisir par défaut autre chose que ICMP semble être une mauvaise idée. Quelqu'un pourrait-il expliquer pourquoi il est préférable d'utiliser UDP par défaut?