Parmi Notes Random short any article

PING

Penjelasan Hasil Ping dengan Opsi -f dan -l

Hasil yang Anda lihat adalah output dari perintah ping dengan dua opsi khusus: - -f: Set "Don't Fragment" flag pada paket IP - -l 1472: Mengatur ukuran data ping menjadi 1472 byte

Apa yang Terjadi?

  1. Ukuran Paket Besar: Anda mencoba mengirim paket ping besar (1472 byte data + 28 byte header IP/ICMP = total 1500 byte, yang merupakan MTU standar Ethernet).

  2. Flag Don't Fragment (DF): Opsi -f memaksa router untuk tidak memecah paket ini. Jika ada perangkat di jalur yang memiliki MTU lebih kecil, paket akan ditolak.

  3. Error "Packet needs to be fragmented but DF set": Ini berarti:

    • Ada perangkat di jaringan (biasanya router Anda di 192.168.12.1) yang tidak bisa meneruskan paket sebesar itu tanpa memecahnya
    • Tapi karena flag DF diaktifkan, paket tidak boleh dipecah
    • Hasilnya, paket dibuang dan Anda mendapat pesan error ini

Interpretasi Hasil:

  • Percobaan pertama: 1 dari 4 paket mendapat balasan (dari router lokal), 3 lainnya hilang
  • Percobaan kedua: Semua 4 paket hilang

Perbedaan ini mungkin disebabkan oleh variabilitas jaringan atau bagaimana router menangani paket-paket tersebut.

Untuk Apa Tes Ini?

Tes seperti ini biasanya digunakan untuk: 1. Menemukan MTU (Maximum Transmission Unit) maksimum di jalur jaringan 2. Mendeteksi masalah fragmentasi di jaringan 3. Memeriksa apakah jaringan mendukung paket besar tanpa fragmentasi

Solusi yang Mungkin:

  • Kurangi ukuran paket (-l) secara bertahap sampai ping berhasil
  • Temukan titik di jaringan dengan MTU lebih kecil
  • Jika perlu paket besar, matikan opsi -f untuk mengizinkan fragmentasi

Ukuran 1472 byte sering digunakan karena merupakan ukuran maksimum umum untuk jaringan Ethernet standar (MTU 1500). Jika gagal, berarti ada perangkat di jaringan yang memiliki MTU lebih kecil.

Untuk melakukan perintah yang serupa dengan bash ping -f -l 1472 example.com atau ping -M do -s 1472 example.com di Windows CMD atau PowerShell, Anda dapat menggunakan perintah ping dengan parameter yang berbeda:

Di Windows CMD:

ping -f -l 1472 example.com
  • -f: Opsi ini sama seperti di Bash/Linux, yang berarti "do not fragment". Ini akan mengatur flag Don't Fragment (DF) pada header IP.
  • -l 1472: Opsi ini menentukan ukuran paket data yang akan dikirim dalam byte. Dalam contoh ini, ukurannya adalah 1472 byte. Perlu diingat bahwa ini adalah ukuran data saja dan header IP (biasanya 20 byte) serta header ICMP (biasanya 8 byte) akan ditambahkan, sehingga total ukuran paket akan menjadi 1472 + 20 + 8 = 1500 byte, yang merupakan MTU default untuk Ethernet.

Di PowerShell:

PowerShell juga menggunakan perintah ping, dan parameternya mirip dengan CMD:

ping -f -l 1472 example.com

Anda juga bisa menggunakan cmdlet Test-Connection di PowerShell, meskipun parameternya sedikit berbeda:

Test-Connection -Count 4 -DontFragment -BufferSize 1472 -ComputerName example.com
  • -Count 4: Menentukan jumlah ping yang akan dikirim (opsional, defaultnya 4).
  • -DontFragment: Setara dengan -f, mengatur flag Don't Fragment.
  • -BufferSize 1472: Menentukan ukuran buffer (payload) dalam byte.
  • -ComputerName example.com: Menentukan alamat IP atau nama host tujuan.

Perbedaan dengan Linux:

  • Di Linux, opsi -s pada perintah ping secara eksplisit menetapkan ukuran payload (data).
  • Di Windows (ping di CMD dan PowerShell), opsi -l atau -BufferSize juga menetapkan ukuran payload.

Jadi, kedua perintah Windows di atas akan melakukan fungsi yang sama dengan perintah Bash/Linux yang Anda berikan, yaitu mengirimkan paket ping dengan ukuran payload 1472 byte dan flag "Don't Fragment" diatur. Ini berguna untuk menguji MTU (Maximum Transmission Unit) pada jalur jaringan. Jika Anda mendapatkan balasan, berarti MTU pada jalur tersebut setidaknya 1500 byte. Jika Anda mendapatkan pesan "Packet needs to be fragmented but DF set", berarti MTU lebih kecil dari 1500 byte.