Pembantu server OpenVPN: jaringan plus netmask, tidak pernah CIDR
Pembantu server IPv4 menerima jaringan yang selaras dan mask bertitik, bukan sufiks CIDR. Periksa rentang, pastikan kumpulan di log, lalu ubah ukuran dengan aman.
Baris server yang mencampur sufiks CIDR dengan mask bertitik menghentikan daemon sebelum ia sempat membuka port. Pembantu server untuk IPv4 ingin dua argumen terpisah: alamat jaringan yang selaras, lalu netmask dalam bentuk bertitik. Semua hal lain di baris itu adalah dugaan, dan di situlah ukuran kumpulan dan mask klien menjadi salah.
Dua argumen yang diterima pembantu
Tulis jaringan lebih dulu dan mask setelahnya, tanpa apa pun yang menempel pada alamat:
server 10.72.16.0 255.255.240.0Ini bentuk untuk /20. Baris di bawah adalah kesalahannya, dan gagal saat penguraian opsi, bukan saat berjalan:
server 10.72.16.0/20 255.255.240.0Pisahkan kedua gagasan saat men-debug ini. Panjang prefiks dan mask bertitik menjelaskan rentang yang sama, tetapi pembantu tidak menerima keduanya sekaligus, dan baris yang ditolak menghasilkan galat opsi yang menyebut direktifnya, bukan aritmetikanya.
Selaraskan jaringan sebelum mengetik mask
Alamat pertama adalah alamat jaringan dari rentang, bukan alamat klien yang nyaman di dalamnya. Untuk /20 rentangnya berjalan dari 10.72.16.0 sampai 10.72.31.255, dan hanya yang pertama itu argumen jaringan yang sah. /21 memakai 255.255.248.0 dan mencakup 10.72.16.0 hingga 10.72.23.255, jadi barisnya adalah server 10.72.16.0 255.255.248.0.
Mengubah prefiks mengubah rentang dan tidak yang lain. Itu tidak mengubah berapa banyak alamat yang diterima satu klien, karena itu sifat topologi, bukan sifat mask di baris ini.
Pastikan kumpulan dari sisi server
Jalankan instans di latar depan dengan pencatatan verbose dan baca baris yang dikeluarkan pembantu. Kumpulan yang dibangunnya dicetak saat mulai, yang lebih andal daripada menghitung aritmetikanya dengan tangan:
openvpn --config /etc/openvpn/server.conf --verb 4 --dev tun9 --port 1195Cari ringkasan kumpulan di dekat bagian atas keluaran. Di situ tercantum rentang yang dicadangkan pembantu, dan jika rentang itu tidak sesuai maksud Anda, argumen di baris itu salah, apa pun kata aritmetika mask.
Lalu hubungkan satu klien dan temukan baris yang mencatat alamat yang diberikan kepadanya. Satu alamat itu, di samping rentang kumpulan, memberi tahu apakah klien mendarat di dalam blok yang dicadangkan atau di suatu tempat yang tidak Anda duga. Jika keduanya tidak cocok, perbaiki argumennya, bukan kliennya. Jika keduanya cocok dan klien tetap tidak bisa mencapai apa pun, kumpulan itu bukan masalahnya sejak awal.
Baca mask klien dengan mempertimbangkan topologi
Klien yang menampilkan /30 pada antarmuka tunnel-nya bukan bukti kumpulan yang rusak. Pada pengalamatan titik-ke-titik setiap klien mendapat blok kecil dan mask antarmukanya menjelaskan blok itu, sementara kumpulan server mencakup keseluruhan. Pada topologi subnet, mask klien justru cocok dengan mask kumpulan. Jadi mask saja memberi tahu topologi mana yang berlaku, bukan apakah kumpulan ditulis dengan benar.
Periksa topologi yang dikonfigurasi dan alamat yang ditetapkan bersama-sama sebelum menarik kesimpulan:
ip -4 addr show tun0Jika alamat berada di dalam kumpulan dan mask lebih sempit daripada kumpulan, itulah topologi yang menjalankan tugasnya. Jika alamat berada di luar kumpulan, kumpulannya salah, dan tidak ada pemeriksaan di sisi klien yang akan memperbaikinya.
Mengubah kumpulan yang sedang berjalan
Pilih rentang yang tidak tumpang tindih dengan kumpulan saat ini, LAN, atau rute mana pun yang sudah dikirim ke klien. Tumpang tindih adalah kegagalan yang bertahan melewati mulai ulang dan lalu, beberapa hari kemudian, muncul sebagai satu situs yang tidak dapat dijangkau dari satu arah.
Ubah barisnya, mulai ulang, dan baca ulang kumpulan saat mulai sebelum membiarkan pengguna kembali. Jika rentang baru bentrok dengan sesuatu, keluaran saat mulai yang sama langsung menunjukkannya, dan mengembalikan perubahan adalah suntingan satu baris plus satu kali mulai ulang lagi.
Biarkan rentang lama tetap dicadangkan beberapa saat setelah perubahan. Klien yang terhubung terlambat masih dapat memegang alamat dari kumpulan sebelumnya, dan rentang baru yang memakai ulang alamat-alamat itu menghasilkan penetapan ganda yang tampak seperti gangguan perutean. Manual OpenVPN 2.6 mendokumentasikan argumen pembantu dan perluasannya, yang layak dibaca sebelum Anda menganggap sebuah direktif memakai notasi yang sama dengan tetangganya.