Printer kantor Anda muncul di setiap aplikasi di meja Anda dan menghilang di VPN, padahal Anda bisa mem-ping alamat yang Anda tahu dimilikinya. Tidak ada yang rusak di terowongan: penemuan dan keterjangkauan adalah layanan terpisah, dan hanya satu di antaranya yang melintasi terowongan yang dirutekan secara bawaan. Pemeriksaan di bawah memisahkan keduanya sebelum Anda mulai menambahkan rute. Rute tidak dapat memperbaiki kueri yang tidak pernah meninggalkan tautan.

Periksa apa yang ter-resolve hari ini, dan apa yang hanya tampak ter-resolve

Pisahkan dulu dua pertanyaan: kueri unicast untuk nama host bertanya ke resolver, sedangkan penelusuran _ipp._tcp bertanya ke tautan lokal. Di Linux, avahi-browse -a menunjukkan apa yang bisa dilihat DNS multicast, dan resolvectl query name.local menunjukkan apa yang dilakukan tumpukan resolver dengan nama itu. Di macOS, dns-sd -B _ipp._tcp mendaftar layanan yang ditemukan tanpa perlu alamat lebih dulu.

Jika alamatnya menjawab dan namanya tidak, perutean berfungsi dan penemuan tidak. Nama .local juga bisa dijawab di host itu sendiri melalui nss-mdns tanpa avahi-browse terpasang, jadi getent atau ping yang berhasil ke nama itu bukan bukti bahwa penemuan melintasi terowongan; hasil penelusuran dan hasil resolver adalah bukti yang berbeda. Aplikasi menyimpan dalam cache apa yang ditemukannya, itulah sebabnya kegagalan sering muncul berjam-jam setelah tersambung, bukan saat tersambung. Tutup dan buka kembali aplikasi, lalu periksa apakah entri cache berisi nama atau alamat, karena alamat tetap berfungsi lama setelah penemuan berhenti.

Mengapa kueri tidak pernah melintasi terowongan

DNS multicast mengirim kueri ke 224.0.0.251, di dalam blok kendali jaringan lokal, pada port UDP 5353. Router tidak meneruskan alamat dari blok itu, jadi kueri tetap di tautan tujuan pengirimannya. Pengirim juga menyetel TTL IP, atau batas hop IPv6, ke 255 agar penerima dapat menolak paket yang sudah melewati router; begitulah protokol mendeteksi pemalsuan di luar tautan, bukan begitulah ia tetap lokal. Lokalitas berasal dari alamat tujuan, bukan dari TTL satu hop.

Jenis terowongan juga penting. Antarmuka bergaya tun hanya membawa paket IP dan tidak yang lain, sehingga tidak ada grup multicast yang bertahan melewatinya. Jembatan bergaya tap memperluas domain siaran itu sendiri, itulah sebabnya beberapa desain lama menjembatani alih-alih merutekan, dan mewarisi setiap masalah yang dibawa jembatan.

Pengecualian LAN tepercaya tidak mengubah semua ini, karena ia menentukan lalu lintas mana yang boleh memakai terowongan alih-alih mengajari terowongan meneruskan multicast. Paket itu tetap tidak punya segmen bersama untuk didengar.

Pilih desain penamaan yang bisa Anda tanggung

Untuk sumber daya perusahaan, jawaban yang tahan lama adalah nama host yang dirutekan yang dilayani oleh resolver yang didorong VPN, dengan DNS terpisah agar nama internal menuju server internal dan yang lain tidak. Windows menampilkannya sebagai tabel kebijakan resolusi nama, macOS memakai resolver terbatas per antarmuka, dan sebagian besar klien punya pengaturan dorong yang setara. Perangkat tetap memakai nama biasanya di DNS internal, dan penemuan berhenti menjadi bagian dari jalur.

Proksi penemuan atau reflektor mDNS dapat menjembatani celah itu, dan itu adalah desain nyata dengan host, paparan, dan persyaratan kliennya sendiri. Itu tidak muncul karena Anda menambahkan rute. Jangan pernah meneruskan kueri .local ke resolver publik: domain itu dicadangkan untuk penggunaan multicast lokal oleh RFC 6762, dan mengirimnya keluar menghasilkan kegagalan lambat serta pengungkapan data yang tidak perlu.

Verifikasi layanannya, bukan namanya

Nama dalam daftar penelusuran membuktikan langkah penemuan, bukan bahwa layanannya menjawab. Buka antrean cetak atau antarmuka web dan selesaikan operasi nyata, lalu ulangi setelah tersambung kembali.

Penemuan menyimpan nama dalam cache secara agresif, sehingga entri basi bisa tampak seperti keberhasilan. Jika muncul sertifikat atau permintaan autentikasi, itu lapisan berikutnya dan masalah terpisah. Catat mekanisme mana yang Anda ubah, resolver atau penemuan, agar orang berikutnya tidak perlu membuka ulang seluruh pertanyaan.

Artikel terkait