Gejalanya khas banget, dan sekali kenal nggak bakal salah lagi:
- Ping jalan lancar
- Situs kecil kebuka normal
- Situs gede menggantung terus timeout
- HTTPS lebih sering bermasalah daripada HTTP
- Kejadiannya cuma buat perangkat yang lewat VPN atau PPPoE
Kalau kelimanya cocok, itu MTU.
Kenapa bisa gitu
Tiap tunnel nambahin bungkus di depan paket. PPPoE nambah 8 byte, WireGuard sekitar 60 byte, IPsec bisa lebih.
Kalau MTU-nya nggak disesuaiin, paket yang tadinya pas 1500 jadi kegedean setelah dibungkus. Router di tengah jalan harus mecah atau buang paket itu.
Masalahnya, banyak jaringan ngeblokir pesan ICMP yang seharusnya ngasih tahu "paketmu kegedean". Jadi pengirimnya nggak pernah dapat kabar, dan dia nunggu terus sampai timeout.
Ping paketnya kecil, jadi lolos. Halaman gede paketnya penuh, jadi nyangkut. Itu yang bikin gejalanya aneh.
Ngukurnya
Dari komputer yang bermasalah, kirim ping dengan bendera "jangan dipecah", terus turunin ukurannya sampai lolos.
Di Windows:
ping -f -l 1472 8.8.8.8Di Linux atau Mac:
ping -M do -s 1472 8.8.8.8Kalau jawabannya "Packet needs to be fragmented", turunin angkanya. Coba 1464, 1452, 1400.
Angka yang lolos itu ditambah 28 hasilnya MTU jalur Anda. Jadi kalau 1464 lolos, MTU-nya 1492, yang emang angka khas PPPoE.
Kalkulator MTU & MSS ngitung mundur dari tumpukan yang Anda pakai, jadi nggak perlu nebak satu-satu.
Benerinnya: MSS clamping
Jangan setel MTU di tiap perangkat client. Nggak praktis dan gampang kelewat.
Yang bener biarin router yang nyesuaiin otomatis:
/ip firewall mangle
add chain=forward protocol=tcp tcp-flags=syn action=change-mss \
new-mss=clamp-to-pmtu out-interface=all-pppclamp-to-pmtu bikin router ngitung sendiri ukuran maksimum yang muat, buat tiap koneksi. Nggak perlu masukin angka.
Kalau RouterOS-nya lama dan belum dukung clamp-to-pmtu, isi manual: MTU dikurangi 40.
Kenapa ini nyerang HTTPS lebih sering
Jabat tangan TLS ngirim sertifikat, dan sertifikat itu gede. Jadi koneksi HTTPS nyentuh paket ukuran penuh jauh lebih awal daripada HTTP biasa.
Itu sebabnya gejalanya sering kebaca sebagai "sertifikatnya bermasalah", padahal sertifikatnya baik-baik aja.
Kalau pakai WireGuard
WireGuard nggak pakai TCP, jadi MSS clamping nggak ngefek ke traffic WireGuard-nya sendiri. Yang perlu disetel itu MTU di interface-nya:
/interface wireguard set [find] mtu=14201420 itu angka yang aman buat kebanyakan jalur. Kalau di atas PPPoE, turunin lagi ke 1412.