OpenVPN TAP pada macOS: semak klien sebelum menyahpepijat
TAP membawa bingkai Ethernet dan TUN membawa IP, dan kebanyakan klien macOS semasa telah meninggalkan yang pertama. Sahkan mod, kemudian berhijrah bersama pemilik pelayan.
Profil lama mendarat pada Mac moden, klien mengimportnya tanpa aduan, dan sambungan terputus atau tidak pernah melewatkan trafik. Sebelum menghabiskan satu petang pada sijil, baca baris peranti dalam profil. Jika tertulis dev tap, anda meminta klien menyediakan antara muka gaya Ethernet, dan pada macOS kebanyakan sesi sebegini berakhir pada permintaan itu.
Langkah 1: pastikan profil benar-benar meminta TAP
Profil dinamakan semula, dibalut dan dieksport semula, jadi semak fail yang benar-benar anda import. Cari arahan peranti dan mana-mana include yang mungkin mengatasinya. Dua baris output menyelesaikan soalan dalam kebanyakan kes. Apabila dev dan dev-type kedua-duanya muncul, arahan kemudian menang, dan itulah jenis butiran yang disembunyikan oleh profil salinan.
grep -nE "^[[:space:]]*(dev|dev-type)[[:space:]]" client.ovpn
ls -l ~/Library/Application\ Support/ 2>/dev/null
Jika fail mengandungi dev tap atau dev tap0, klien mesti melaksanakan antara muka TAP. Jika ia mengandungi dev tun, seluruh artikel ini tidak terpakai dan kegagalan ada di tempat lain.
Catat nama dan versi klien, versi macOS, dan dari mana profil itu datang. Ketiga-tiga fakta itu menentukan laluan mana antara dua laluan di bawah yang mungkin sama sekali.
Langkah 2: ketahui apa yang sebenarnya diubah oleh mod peranti
Antara muka TUN membawa paket IP. Klien membaca dan menulis paket yang dialamatkan kepada rakan IP, dan sistem pengendalian mengubah haluannya seperti mana-mana antara muka lain.
Antara muka TAP membawa bingkai Ethernet, termasuk siaran dan ARP. Itulah yang membolehkan pelayan berjambatan mengagihkan alamat melalui DHCP dan klien menemui peranti dengan menjerit, dan sebab itu sesetengah reka bentuk lama bergantung padanya.
Harganya ialah TAP memerlukan pemacu yang membentangkan antara muka Ethernet kepada sistem. Apple telah menghentikan model sambungan kernel yang diandalkan oleh pemacu TAP Mac lama, dan API penggantinya tidak muncul secara ajaib dalam klien yang tidak pernah dikemas kini untuk menggunakannya. Keupayaan platform dan produk yang dihantar ialah dua perkara berbeza.
Langkah 3: pilih antara klien serasi dan migrasi
Terdapat dua laluan jujur. Yang pertama ialah klien yang penerbitnya menyatakan, untuk keluaran macOS dan perkakasan anda, bahawa ia menyokong susunan TAP yang anda perlukan. Bukan catatan forum dari empat tahun lalu, dan bukan pemasang yang diarkibkan: kenyataan semasa serta sambungan ujian.
Yang kedua ialah memindahkan perkhidmatan ke TUN, yang sama banyak perubahan pelayan dan perubahan klien. Ia memerlukan topologi berhalakan, kolam alamat, laluan yang ditolak untuk rangkaian jauh, dan laluan balik dari rangkaian itu ke kolam.
Yang tidak berkesan ialah menukar tap kepada tun dalam salinan tempatan anda dan berharap. Pelayan masih menjambatani, klien kini bercakap IP, dan tiada apa yang sepadan.
Langkah 4: kumpulkan fakta sebelum menukar perkhidmatan yang berfungsi
Biarkan profil asal tidak disentuh dan buat salinan untuk eksperimen. Fail yang boleh anda pulihkan dalam satu minit lebih bernilai daripada folder yang kemas. Setelah pengganti berfungsi, padam salinan itu dengan sengaja daripada meninggalkan dua profil yang kelihatan sama dalam senarai. Satu tabiat itu mencegah sebahagian besar kekeliruan selepas migrasi yang gagal. Rekodkan tingkah laku semasa supaya anda boleh membuktikan apa yang berubah: adakah terowong naik, adakah ia mendapat alamat, bolehkah anda mencapai satu hos yang dikenali, dan adakah penyelesaian nama berfungsi.
Tanya pemilik gerbang tiga soalan. Adakah pelayan berjalan pada topologi berjambatan atau berhalakan? Prefiks jauh mana yang sepatutnya boleh dicapai? Dan adakah terdapat tetingkap penyelenggaraan untuk perubahan konfigurasi, atau adakah ia dijangka berfungsi tanpa menyentuh pelayan?
Jawapan kepada itu menentukan sama ada anda menyelesaikan masalah klien petang ini atau merancang perubahan rangkaian minggu depan.
Langkah 5: sahkan migrasi dari kedua-dua hujung
Setelah pelayan mempunyai konfigurasi berhalakan dan anda mempunyai profil yang sepadan, uji dalam susunan ini: terowong terbentuk, klien menerima alamat dari kolam baharu, hos di sebelah jauh menjawab, dan nama diselesaikan melalui tetapan DNS yang ditolak.
Kemudian uji apa yang dahulunya bergantung pada tingkah laku Ethernet. Jika aplikasi menemui peranti melalui siaran, ia tidak akan menemukannya melalui terowong berhalakan, dan tiada jumlah konfigurasi klien dapat memulihkannya. Aplikasi itu memerlukan alamat yang dikenali, hos pembantu tempatan, atau kaedah penemuan yang berbeza.
Akhiri dengan menyambung semula dan memulakan semula sekali, kerana profil yang hanya berfungsi pada percubaan pertama biasanya bermaksud laluan yang ditolak atau tetapan DNS tidak digunakan semasa menyambung semula.
Apabila ia masih gagal, baca ralat pertama
Klien yang tidak dapat mencipta antara muka itu berkata demikian dalam lognya, biasanya dalam beberapa baris pertama. Klien yang menciptanya dan kemudian gagal mengesahkan diri sudah jauh melepasi soalan peranti, dan terus mengejar TAP membazirkan sesi.
Simpan profil asal dan konfigurasi yang berfungsi sehingga pengganti terbukti. Mengundurkan perubahan klien cepat; membina semula rangkaian berjambatan yang dibongkar seseorang berdasarkan agakan tidak cepat.