Kebiasaannya adalah menurunkan MTU begitu WireGuard berperilaku buruk, dan kebiasaan itu menyembunyikan gangguan lain. Gateway yang tidak meneruskan dan jalur yang tidak membawa paket besar menghasilkan pola yang bisa dibedakan: yang satu gagal di kedua arah dan pada setiap ukuran, yang lain bertahan pada permintaan kecil dan mati pada yang besar. Tentukan bentuk mana yang Anda punya sebelum mengubah angka apa pun. Uji coba ini murah dan menghilangkan separuh kemungkinan penyebab.

Dua kegagalan, dua bentuk berbeda

Masalah penerusan muncul tepat setelah server. Jabat tangan berhasil, alamat terowongan menjawab, dan tidak ada yang bisa dijangkau di balik gateway bahkan dengan permintaan kecil. Paket mencapai server dan tidak diteruskan, atau balasannya tidak punya rute kembali.

Masalah ukuran hanya muncul di atas ambang tertentu. DNS, jabat tangan TCP, dan panggilan API kecil semuanya bekerja, sementara unduhan berkas atau balasan besar menggantung. Paket yang muat menempuh perjalanan dari ujung ke ujung, dan yang tidak muat dibuang di suatu tempat tanpa laporan yang berguna.

Deskripsi itu menunjuk ke orang yang berbeda dan berkas konfigurasi yang berbeda, karena itu mengukur bentuknya lebih bernilai daripada menebak. Satu ping ke gateway tidak bisa memisahkan keduanya.

Singkirkan penerusan sebelum Anda mengecilkan apa pun

Uji tujuan di luar gateway, bukan gateway itu sendiri. Ping ke alamat terowongan server hanya membuktikan bahwa antarmuka aktif dan Anda bisa mencapai mesin yang mengakhiri terowongan. Lalu lintas untuk jaringan yang lebih luas bergantung pada penerusan IP yang diaktifkan di mesin itu dan pada firewall yang mengizinkan aliran yang diteruskan. Keduanya harus benar, dan jika salah satunya salah, muncul keheningan yang sama.

Perutean balik sama pentingnya. Jika jaringan tujuan tidak tahu cara mencapai alamat terowongan klien, permintaan datang dan balasannya hilang, dan klien melaporkan waktu tunggu yang tampak sama dengan penerusan yang dibuang.

Di tempat desain memakai penerjemahan alamat, aturan penerjemahan adalah bagian dari jalur balik itu. Menghapusnya saat mengejar masalah MTU mengubah desain yang bekerja menjadi rusak, jadi baca aturan yang ada sebelum menyuntingnya.

Ukur di mana putusnya dimulai

Baca dulu status penerusan dan aturan penyaringan. Ini pemeriksaan hanya-baca dan menjawab pertanyaan murah:

sysctl net.ipv4.ip_forward
sudo iptables -S FORWARD
ip route get 10.30.0.9

Lalu uji ukuran dengan bit don’t-fragment, dari klien, menuju host di luar gateway:

ping -M do -s 1200 10.30.0.9
ping -M do -s 1400 10.30.0.9

Jika uji pertama bekerja dan yang kedua gagal dengan galat fragmentasi, jalur memberi tahu ukuran yang bisa dipakai. Jika keduanya tidak bekerja, Anda sedang melihat penerusan atau perutean, dan MTU bukan variabel yang perlu diubah.

ObservationPoints towardWhere to look
Nothing beyond the gateway worksForwarding or return routeForwarding flag, filter rules, routing table
Small works, large stallsPacket size on the pathTunnel MTU and the link underneath
Only names failDNS resolutionThe resolver configured for the tunnel
Works sometimesMultiple paths or state expiryFlow selection and NAT state

Perbaiki lapisan yang sudah Anda buktikan

Ketika penerusan adalah gangguannya, perbaikannya adalah aturan penerusan atau rute, dinyatakan sesempit yang diizinkan desain. Ketika ukuran adalah gangguannya, perbaikannya adalah MTU yang memperhitungkan enkapsulasi pada jalur tertentu ini, diterapkan pada antarmuka yang membutuhkannya dan bukan pada setiap adaptor di armada.

Bagaimanapun, setelah itu ulangi tugas yang sama ke tujuan yang sama. Jika transfer besar yang semula kini selesai, perubahan itu menangani lapisan yang gagal. Jika hanya uji kecil yang membaik, Anda mengobati gejala dan batas sebenarnya masih ada.

Catat bentuk mana yang Anda amati sebelum perubahan. Satu baris itu, dicatat di samping perbaikan, adalah yang mencegah orang berikutnya menurunkan MTU yang tidak pernah menjadi masalah.

Artikel terkait