Saya baru-baru ini memecahkan masalah meta konektivitas jaringan, karena saya tahu tujuan tertentu dapat dicapai, tetapi saya tidak dapat menunjukkannya dengan traceroute
karena jalurnya menjadi dingin setelah sejumlah hop. Mengingat bahwa hop terakhir yang diamati hanya berada di hulu dari node yang diminati, saya mengendus lalu lintas, berharap untuk mengkonfirmasi bahwa probe telah mencapainya dan untuk mengetahui aturan filter mana yang menghalangi mereka. Benar saja, saya mengetahui bahwa probe adalah datagram UDP yang ditujukan untuk port tinggi (dan beragam) yang saya miliki, tentu saja, diblokir untuk lalu lintas masuk.
Ini mengejutkan saya, karena saya berasumsi bahwa semua traceroute
probe akan default ke ICMP, karena jawabannya adalah ICMP. Saya melakukan survei dokumentasi dan menemukan bahwa implementasi yang berbeda membuat pilihan yang berbeda, dan beberapa tidak memungkinkan pengguna untuk membuat pilihan non-default.
Abstraksi dari metode penyelidikan Traceroute dan penerusan jalur IP maju mendukung intuisi saya bahwa penyelidikan ICMP akan lebih sering berhasil mencapai tujuan.
Membiarkan metode penyelidikan yang berbeda tampaknya merupakan ide bagus, tetapi melakukan default pada sesuatu selain ICMP sepertinya merupakan ide yang buruk. Adakah yang bisa menjelaskan alasan di balik mengapa lebih baik menggunakan UDP secara default?