Aplikasi printer Anda menampilkan daftar kosong, aplikasi kamera melaporkan tidak ada perangkat yang ditemukan, dan tombol cast di aplikasi video berputar sampai menyerah. Ikon VPN ada di bilah status, ponsel memiliki sinyal penuh, dan Safari memuat halaman dengan baik, jadi tidak ada yang tampak rusak pada koneksi. Lalu Anda membuka pengaturan aplikasi itu sendiri dan tidak menemukan apa pun untuk diubah.

Saya menabrak persis dinding ini dengan printer label di jaringan rumah: aplikasi itu belum pernah diberi akses ke jaringan lokal, dan profil yang saya uji adalah terowongan penuh yang menelan setiap paket yang dialamatkan ke 192.168.1.0/24. Dua gerbang independen tertutup, dan membuka satu saja tidak akan menghilangkan gejalanya.

Dua gerbang di antara satu aplikasi dan satu printer

Gerbang pertama adalah keputusan privasi yang dimiliki sistem operasi, bukan aplikasi. iOS memutuskan apakah sebuah aplikasi boleh mengirim lalu lintas ke alamat di jaringan lokal, dan bertanya kepada pengguna saat aplikasi pertama kali mencoba. Gerbang kedua adalah tabel rute. Paket yang ditujukan ke 192.168.1.50 entah keluar lewat Wi-Fi menuju printer, atau masuk ke terowongan, dan pilihan itu tertulis di profil VPN.

Kedua gerbang gagal dengan bentuk berbeda, dan itulah yang membuat diagnosis mungkin. Izin yang ditolak mematikan panggilan soket aplikasi itu sendiri, sehingga aplikasi tidak punya apa pun untuk dilaporkan dan jatuh ke keadaan kosong yang generik. Masalah perutean terlihat seperti waktu tunggu habis, karena paket sudah meninggalkan ponsel dan mati di suatu tempat di sisi jauh. Layar kosong yang sama, perbaikan berbeda.

Baca status izin sebelum menyentuh VPN

Buka Pengaturan, lalu Privasi & Keamanan, lalu Jaringan Lokal. Setiap aplikasi yang meminta akses muncul di sana dengan tombol. Apple telah memindahkan dan mengganti nama bagian layar ini antara iOS 14 dan iOS 18, jadi jika entrinya tidak ada di tempat yang Anda harapkan, ketik Jaringan Lokal di kolom pencarian Pengaturan alih-alih menyusuri pohon menu.

Yang paling sering menjebak orang adalah perintah sekali muncul. iOS bertanya saat aplikasi pertama kali menyentuh jaringan lokal, dan hanya saat itu. Ketuk Jangan Izinkan dan perintah itu tidak muncul lagi pada peluncuran berikutnya; tombolnya adalah satu-satunya jalan kembali, dan awalnya mati. Memasang ulang aplikasi mereset keputusan itu, karena itu beberapa utas pemecahan masalah mengklaim pemasangan ulang memperbaiki penemuan. Memang, dengan menghapus penolakan.

Pada iPhone yang diawasi atau dikelola, tombolnya kadang berwarna abu-abu. Muatan preferensi privasi yang dikirim MDM dapat menetapkan atau mengunci akses jaringan lokal, dan tombol terkunci yang mati berarti perbaikannya adalah perubahan kebijakan, bukan perubahan ponsel. Apple mendokumentasikan perintah dan tombol per aplikasi di sini: support.apple.com/en-us/102229.

Periksa apa yang sebenarnya dirutekan terowongan

Terowongan penuh mengambil 0.0.0.0/0 dan dengan itu setiap rentang privat. Paket untuk 10.x, 172.16.0.0/12, dan 192.168.x.x menuju server, yang biasanya membuangnya atau menerjemahkannya ke subnetnya sendiri, sehingga printer tidak terjangkau bahkan setelah Anda memberikan izin. Terowongan terpisah melakukan sebaliknya, tetapi hanya untuk rentang yang dicantumkan profil.

Profil IKEv2 yang dibuat dengan Apple Configurator atau dikirim sebagai .mobileconfig menyatakan ini sebagai pengaturan kirim semua lalu lintas plus, dalam mode terpisah, daftar eksplisit jaringan lokal yang harus dikecualikan. Aplikasi klien yang dibangun di atas NEPacketTunnelProvider menyatakan keputusan yang sama melalui includedRoutes. Keduanya tidak terlihat dari bilah status, dan keduanya menimpa apa yang diharapkan dilihat aplikasi.

Ini tes yang saya gunakan. Dengan VPN tersambung, buka halaman admin router lewat alamat LAN-nya di Safari. Jika situs publik termuat sementara halaman itu kehabisan waktu, rentang privat Anda ada di dalam terowongan. Jika halamannya termuat, lalu lintas lokal masih keluar lewat Wi-Fi dan blokirnya ada di tempat lain.

Petakan gejala ke gerbang

Dua aplikasi di ponsel yang sama bisa tidak sepakat, karena izin diberikan per aplikasi sementara rute diberikan per profil. Bandingkan apa yang gagal sebelum mengubah apa pun: polanya biasanya menyebut gerbangnya sendiri.

What you seeGateNext step
Device list stays empty, Local Network switch is offPermissionEnable the switch, force-quit the app, reopen it
Switch is on, router page times out, public sites loadRoutingExclude the local range in the profile, or move to a split tunnel
Both pass, direct IP works, discovery stays emptyLink-local multicastEnter the device address by hand, or check profile discovery support
Works by IP address, never by name such as printer.localName resolutionFix mDNS reachability or use the numeric address
Everything fails with the VPN off, on hotel Wi-FiClient isolationChange network, do not change permissions

Baris mDNS layak dicatat. Lalu lintas penemuan untuk Bonjour dan sebagian besar protokol cast dikirim sebagai multicast ke 224.0.0.251 dan ff02::fb dengan cakupan link-local, dan terowongan yang dirutekan tidak membawanya. Itu sebabnya perangkat bisa menjawab koneksi langsung tanpa pernah muncul di daftar.

Uji operasinya, bukan ikonnya

Setelah mengubah tombol Jaringan Lokal, paksa tutup aplikasi dari pengalih aplikasi dan jalankan lagi. Proses yang berjalan dapat menahan status penolakan dari sebelum perubahan, dan aplikasi yang terus mengembalikan daftar kosong terlihat sama apakah izinnya berhasil atau tidak. Lalu jalankan satu tindakan konkret, seperti mencetak halaman uji atau memulai video, alih-alih menunggu daftar perangkat terisi.

Jaga profil VPN tetap sama selama perbandingan. Jika penemuan baru berfungsi setelah Anda memutus koneksi, Anda sudah tahu bahwa terowongannya yang bersalah, bukan izinnya. Ubah satu variabel per percobaan, kalau tidak, putaran berikutnya tidak memberi tahu apa pun.

Perbaiki dengan urutan ini

Urutan di bawah ini yang sekarang saya ikuti, karena tidak pernah meninggalkan ponsel dalam keadaan setengah berubah di mana tes berikutnya tidak terbaca.

  1. Pastikan aplikasi terdaftar di Privasi & Keamanan, Jaringan Lokal, dan tombolnya menyala.
  2. Paksa tutup, jalankan ulang aplikasi, lalu ulangi operasi sebenarnya satu kali.
  3. Buka halaman router lewat alamat LAN saat tersambung untuk membuktikan apakah rentang privat masuk ke terowongan.
  4. Jika masuk, edit profil untuk mengecualikan jaringan lokal, atau minta pemilik profil melakukannya.
  5. Jika tombolnya abu-abu, perlakukan perangkat sebagai terkelola dan teruskan permintaan ke administrator.

Biasanya hanya satu yang berlaku. Jika tidak ada yang mengubah hasil, tersangka yang tersisa adalah jaringannya sendiri, seperti isolasi titik akses atau daftar klien yang diizinkan yang terikat ke alamat Wi-Fi, dan tabel pemetaan di atas menunjukkan yang mana.

Artikel terkait