Setiap permintaan DNS terbelah bermula dengan ayat yang sama: nama syarikat pergi ke DNS syarikat, semua yang lain terus berfungsi. Menukar ayat itu kepada konfigurasi bermakna menjawab tiga soalan bagi setiap sistem pengendalian, dan jawapannya menggunakan mekanisme berbeza pada setiap satu. Profil yang berfungsi pada komputer riba Linux sering gagal pada Windows atas sebab yang tiada kaitan dengan terowong. Jurangnya biasanya tetapan penyelesai yang disangka laluan.

Namakan dasar dahulu, kemudian pilih primitif platform yang menyatakannya.

Tiga tetapan yang mudah dikelirukan

Akhiran carian mengembangkan nama pendek: menaip files menjadi files.corp.example apabila penyelesai mencuba akhiran mengikut urutan. Domain penghalaan memilih penyelesai mana yang menjawab pertanyaan dalam ruang nama. Laluan IP hanya menjadikan penyelesai yang dipilih boleh dicapai. Ketiga-tiganya hidup dalam lapisan berbeza, dan menukar satu dengan yang lain menghasilkan konfigurasi yang kelihatan betul dan tidak menyelesaikan apa-apa.

Kekeliruan itu ada kosnya: menambah akhiran carian menghantar setiap nama pendek ke penyelesai kerja, termasuk nama yang sepatutnya di tempat lain. Memilih domain penghalaan mengekalkan pertanyaan tidak berkaitan pada penyelesai setempat sambil tetap menghantar *.corp.example melalui terowong.

Linux: domain laluan sahaja, bukan akhiran carian

Pada systemd-resolved, domain dengan awalan tilde ialah domain laluan sahaja, bermakna pertanyaan untuk ruang nama itu pergi ke penyelesai berpaut tanpa juga menjadi akhiran carian. resolvectl domain tun0 '~corp.example' menetapkannya, dan resolvectl dns tun0 10.8.0.1 menamakan pelayan. Kedua-dua tetapan milik antara muka, jadi ia hilang bersamanya. Tilde ialah bahagian yang orang terlepas, dan tanpanya nama pendek mula diselesaikan melalui penyelesai kerja.

Jangan juga memasang domain yang sama sebagai akhiran carian global. Kedua-dua tetapan tidak berlebihan; satu menghalakan dan satu lagi menulis semula apa yang anda taip.

Windows memerlukan dasar ruang nama, bukan akhiran

Windows menyimpan dasar DNS terbelah dalam Name Resolution Policy Table, bukan dalam akhiran DNS penyesuai. Peraturan memetakan ruang nama kepada pelayan tertentu: Add-DnsClientNrptRule -Namespace .corp.example -NameServers 10.8.0.1. Menetapkan akhiran sahaja mengubah rupa nama pendek; ia tidak mengarahkan pertanyaan ke pelayan lain.

Semak dasar berkesan dengan Get-DnsClientNrptPolicy selepas bersambung, kerana peraturan daripada sambungan terdahulu boleh hidup lebih lama daripada terowong. Buang peraturan mengikut nama apabila terowong terputus, dan kekalkan nama paparan stabil supaya pembersihan mengenai entri yang betul.

Kekalkan satu pemilik penyelesai setiap platform

Pengurus desktop, skrip up OpenVPN dan daemon penyelesai setempat semuanya boleh cuba menulis konfigurasi yang sama. Apabila mereka tidak bersetuju, penulis terakhir menang dan hasilnya bergantung pada urutan pembongkaran. Pilih satu komponen untuk memiliki keadaan penyelesai, biarkan yang lain melapor dan bukannya menulis, dan uji sambungan semula: dasar itu patut bertahan tanpa menduplikasi peraturan. Uji juga pemutusan, kerana keadaan yang tertinggal itulah yang membuat sambungan seterusnya berkelakuan berbeza.

Aplikasi yang membawa penyelesai disulitkan sendiri mengabaikan dasar sistem pengendalian sepenuhnya. Itu sifat aplikasi, bukan kecacatan pada terowong.

Sahkan hasilnya, bukan teks profil

Selesaikan satu nama yang sepatutnya melalui terowong dan satu yang tidak, pada setiap platform, dan sahkan pelayan mana yang menjawab. resolvectl query host.corp.example dan Resolve-DnsName host.corp.example kedua-duanya melaporkan pelayan yang bertindak balas. Ulangi selepas sambungan semula. Kemudian sahkan bahawa penyelesai terowong boleh dicapai pada alamat yang ditolak oleh profil, kerana dasar betul yang menunjuk ke pelayan yang tidak boleh dicapai gagal sama seperti tiada dasar.

Catat tingkah laku yang dimaksudkan dalam nota profil: akhiran mana yang menghalakan, pelayan mana yang menjawabnya, dan apa yang berlaku kepada semua yang lain. Platform seterusnya yang anda sokong akan lebih memerlukan ayat itu daripada fail konfigurasi.

Artikel berkaitan