File status menghitung sesi, bukan LAN di belakangnya
Cuplikan mencantumkan sesi VPN dan status perutean, bukan setiap mesin di balik sebuah situs. Baca header, jenis catatan, dan usia file bersama-sama.
Seseorang bertanya berapa banyak mesin yang ada di VPN, dan file status diajukan sebagai bukti. File itu menjawab pertanyaan yang lebih sempit: berapa sesi yang ada dalam cuplikan ini, dan alamat virtual mana yang dirutekan server. Kesenjangan antara kedua pertanyaan itulah tempat sebagian besar kesalahan pelaporan berada, dan menutupnya dimulai dengan membaca header file itu sendiri.
Apa yang sebenarnya ada dalam cuplikan
File ditulis pada interval ketika keluaran status dikonfigurasi untuk instans server itu, jadi ini gambaran berkala, bukan aliran langsung. Bagian-bagiannya mencantumkan sesi dan status perutean internal secara terpisah, dan versi format menentukan tata letak kolom.
status /run/openvpn/office.status 30
status-version 3Versi 3 menulis bidang yang dipisahkan tab dengan baris header, sedangkan format lama berbeda dan versi berikutnya dapat menambah bidang. Bacalah header alih-alih mengodekan nomor kolom, karena skrip yang mengasumsikan posisi akan rusak diam-diam pada peningkatan berikutnya.
| Record | What it describes | What it cannot tell you |
|---|---|---|
| Client list | A session in this snapshot | How many people or machines that session represents |
| Real address | The outer peer address and port | Which device is behind it |
| Routing rows | Virtual addresses and route ownership | Which downstream hosts are alive |
Hitung sesi, bukan orang atau mesin
Satu koneksi situs dapat membawa lalu lintas beberapa mesin resmi di belakangnya. Satu orang juga dapat memegang lebih dari satu sesi pada saat yang sama, dari laptop dan ponsel. Tidak ada pola itu yang terlihat dalam hitungan, sehingga pengguna terhubung hanya bermakna setelah Anda mendefinisikan satuannya. Tanyakan unit apa yang dibutuhkan laporan sebelum siapa pun mulai menghitung.
Jika angka itu penting untuk lisensi atau kapasitas, definisikan unitnya dalam dokumen yang sama dengan laporan. Laporan yang tidak menyatakan apakah menghitung sesi, identitas, atau perangkat akan dibaca sebagai unit yang diharapkan pembacanya.
Alamat luar bukan pengenal
Bidang alamat sebenarnya adalah alamat dan port peer seperti yang dilihat server. Beberapa klien di balik satu alamat publik yang diterjemahkan berbagi alamat itu, sehingga pengelompokan berdasarkan alamat itu menggabungkan sesi yang tidak terkait. Port juga berubah antar koneksi, yang membuat pasangan itu tidak berguna sebagai kunci stabil. Laporan yang dikelompokkan seperti itu tampak tepat dan salah.
Gunakan identitas klien efektif untuk pengelompokan, dan perlakukan alamat sebagai detail transportasi. Ketika dua baris berbagi identitas, itu biasanya berarti sesi bersamaan, bukan catatan duplikat.
Baris perutean bukan inventaris host
Entri perutean dapat menyebut subnet yang menjadi tanggung jawab satu peer, dan subnet bukan daftar host-nya. Server tahu bahwa ia harus mengirim rentang itu ke sesi tertentu, dan tidak tahu mesin mana yang menyala, terautentikasi di aplikasi, atau berguna bagi siapa pun. Tabel perutean menggambarkan keterjangkauan, bukan keterisian. Perbedaan itulah seluruh alasan VPN tidak dapat menjawab pertanyaan inventaris.
Beberapa baris juga dapat menunjuk ke peer yang sama, karena situs dapat mengumumkan lebih dari satu rentang. Menghitung baris dan menyebut hasilnya sebagai jumlah perangkat melebih-lebihkan penerapan dengan faktor sembarang.
Jika persyaratannya benar-benar inventaris aset, gunakan proses inventaris yang memiliki jaringan itu. VPN dapat mengenali peer mana yang membawa rute, dan itu fakta yang berbeda dari host mana yang ada di belakangnya.
Usia, izin, dan tampilan langsung
Simpan waktu modifikasi file bersama setiap jawaban. Server yang berhenti berjam-jam lalu meninggalkan cuplikan terakhirnya di tempatnya, dan file usang yang disajikan sebagai terkini lebih buruk daripada tidak ada laporan sama sekali.
Direktori harus ada dan dapat ditulis oleh akun yang benar-benar menjalankan layanan, yang mudah dilupakan setelah tahap pengerasan. File biasanya berisi nama dan alamat, jadi simpanlah di lokasi administratif dan bukan di mana pun server web dapat menyajikannya. Periksa izin dari akun layanan, bukan dari shell Anda. Cuplikan yang diam-diam berhenti diperbarui terlihat persis seperti jaringan yang tenang.
Untuk kebutuhan berbasis peristiwa, gunakan antarmuka manajemen yang didukung alih-alih melakukan polling lebih cepat. Perlakukan antarmuka itu sebagai kendali, bukan metrik, dan jangan pernah mengeksposnya ke internet hanya untuk menghitung sesi.