Ada beberapa pertanyaan di sini; klaim "paket cacat" mungkin disebabkan oleh pembebanan checksum dan jika demikian adalah kesalahan palsu karena mencerminkan penangkapan paket yang tidak memiliki tampilan lengkap - beberapa pekerjaan malah dilakukan pada perangkat keras jaringan. WireShark harus memiliki dokumentasi tentang ini.
Jika tidak, berbagai alat (seperti socat
, nc
atau netcat
, atau melalui fitur yang sangat mirip di shell seperti ksh93
atau bash
) dapat mengambil byte dari input standar dan membuangnya ke dalam apa yang menjadi paket UDP. Apakah ini "tepat" tergantung pada protokol; seseorang dapat secara teori membangun dan mengirim paket DNS atau DHCP dengan cara ini, meskipun lebih sering orang menggunakan perpustakaan atau perangkat lunak khusus yang (mudah-mudahan) mengimplementasikan protokol tersebut dengan benar, karena biasanya ada lebih banyak yang terlibat daripada pengaturan beberapa bit dalam isi paket dan mengirimkannya melalui kabel, terutama menangani respons, mencoba kembali setelah batas waktu atau kesalahan, bidang header paket, dll. Protokol biasanya didokumentasikan dengan sangat baik dalam RFC, atau lihat seri buku "TCP / IP Illustrated" oleh Stevens untuk dokumentasi lebih lanjut.
Alat khusus seperti nmap
melakukan hal-hal yang sangat khusus dengan konstruksi paket. Kalau tidak untuk konstruksi paket manual, bahasa pemrograman biasanya digunakan, meskipun sekali lagi sebagian besar perangkat lunak akan menggunakan perpustakaan atau layanan sistem yang ada untuk mengirimkan DNS atau DHCP atau paket UDP lainnya, karena itu jauh lebih sedikit bekerja dan jauh lebih sedikit kesalahan daripada membuat kerajinan secara manual. paket dari awal.