Pemajuan port dan pencetus port berada dalam menu yang sama pada kebanyakan penghala rumah, sebab itu keduanya dianggap dua cara untuk melakukan satu kerja. Pemajuan ialah peraturan statik: sambungan masuk ke port WAN diterjemahkan ke alamat dan port dalam yang tetap, sama ada ada perkara lain berlaku atau tidak. Pencetus adalah bersyarat: penghala memantau trafik keluar dan hanya membuka pemetaan masuk selepas sambungan yang sepadan keluar. Pelayan VPN menunggu orang lain menyambung dahulu, jadi syarat itulah satu-satunya perkara yang tidak pernah dapat dipenuhinya.

Dua peraturan dengan kitaran hayat berbeza

NAT IPv4 menyimpan keadaan. Apabila hos dalam menghantar paket keluar, penghala mencipta pemetaan supaya balasan dapat mencari jalan pulang; paket masuk yang tidak sepadan dengan mana-mana pemetaan digugurkan, dan tingkah laku inilah yang menjauhkan desktop yang tidak ditampal daripada internet. Pemajuan ialah entri terjemahan kekal yang ditambah secara manual. Pencetus ialah lubang sementara yang dikawal oleh corak trafik.

Perbezaan praktikalnya ialah masa. Pemajuan wujud dari saat ia disimpan sehingga seseorang memadamnya. Pemetaan yang dicetuskan wujud selepas pencetus berdenyut dan menutup pada pemasa melahu, diukur dalam minit pada perkakasan pengguna, atau serta-merta apabila but semula.

Tiada satu pun lebih selamat secara abstrak. Pemajuan mendedahkan satu port secara berterusan; pencetus mendedahkannya hanya selepas trafik keluar tertentu. Bagi perkhidmatan yang mesti menerima paket pertama daripada orang asing, hanya satu daripada keduanya padan dengan tugas itu.

Mengapa pencetus tidak akan menerbitkan pelayan

Pelayan VPN bersifat pasif secara reka bentuk. Rakan lawan, sama ada komputer riba di kafe atau telefon pada data mudah alih, menghantar paket pertama, dan penghala tiada pemetaan untuknya. Tiada apa-apa di dalam yang memulakan trafik ke port pencetus, jadi peraturan itu tidak pernah berdenyut dan sambungan mati sebelum jabat tangan bermula.

Di tempat pencetus kelihatan berfungsi, ada sesuatu yang lain menjana trafik pada port pencetus: klien di LAN, kuar pemantauan, atau semakan keluar pelayan itu sendiri. Pemetaan kemudian terbuka untuk satu hos itu sahaja dan menutup apabila trafik berhenti, jadi rakan luar seterusnya gagal lagi sementara kejayaan pertama duduk dalam log dan kelihatan seperti bukti.

Pencetus juga biasanya satu hos. Banyak pelaksanaan hanya membenarkan satu peranti dalam memegang pemetaan pada satu masa, yang betul-betul salah bagi pelayan yang sepatutnya menjawab beberapa rakan. Ciri ini dibina untuk aplikasi yang membuka sambungan kawalan keluar dan menjangka data masuk pada port kedua, dan ia masih sesuai dengan bentuk itu.

Apa yang sebenarnya dipetakan oleh pemajuan

Pemajuan ialah satu entri terjemahan: port dan protokol WAN ke alamat dan port dalam. Ia memerlukan pendengar yang sudah berjalan di hujung sana, dan memerlukan alamat dalam kekal di tempatnya. Pajakan DHCP yang berpindah ke mesin lain menghantar setiap terowong ke hos yang salah, secara senyap, jadi buat tempahan sebelum peraturan itu.

RuleOpens whenCloses whenFits a VPN listener
Port forwardSaved, at bootYou delete itYes
Port triggerMatching outbound trafficIdle timeout or rebootNo

Protokol lebih penting daripada yang disarankan oleh borang. OpenVPN melalui UDP memerlukan pemajuan UDP, WireGuard memerlukan UDP, dan data IPsec tiba sebagai ESP, protokol IP 50, yang langsung tiada port. Borang pemajuan yang hanya menerima TCP atau UDP tidak dapat menyatakannya, jadi IPsec memerlukan passthrough atau pemetaan statik satu-ke-satu dan bukannya peraturan port.

Lapisan di atas penghala anda

Pemajuan hanya mengawal terjemahan yang anda miliki. Jika alamat WAN bukan milik anda, yang merupakan kes di belakang NAT pembawa di mana pelanggan berkongsi 100.64.0.0/10 seperti dihuraikan dalam RFC 6598, sambungan masuk tidak pernah sampai ke penghala anda kerana pembekal menterjemah dahulu. Tiada peraturan pada peranti anda boleh membetulkan urutan itu.

NAT berganda ialah masalah yang sama dalam skala kecil. Penghala anda memajukan ke penghala ISP, yang tiada peraturan sepadan dan menggugurkan paket. Sama ada tambah peraturan pada peranti luar, atau letakkan peranti luar dalam mod jambatan dan biarkan peranti anda memegang alamat awam.

Sebab itulah ujian mesti datang dari luar. Ujian dari LAN yang sama melalui alamat awam bergantung pada sokongan hairpin NAT dan boleh lulus atau gagal atas sebab yang tiada kaitan dengan peraturan; telefon pada data mudah alih, atau rakan di rangkaian lain, ialah pemeriksaan yang lebih bersih.

Hadkan peraturan, kemudian sahkan kedua-dua separuh

Majukan satu port ke satu alamat. Julat yang ditambah kerana percubaan pertama gagal ialah cara antara muka pengurusan berakhir di internet, dan pendengar VPN tidak memerlukan halaman admin penghala diterbitkan di sebelahnya.

Kekalkan semua yang sudah melindungi pendengar itu: identiti sijil atau kunci, tembok api hos, versi pakej semasa. Pemajuan membenarkan paket masuk; pengesahan menentukan sama ada paket itu menjadi terowong, dan itu dua kegagalan berasingan apabila sesuatu berlaku salah.

Pengesahan mempunyai dua separuh. Jabat tangan mesti selesai dari rangkaian luar, kemudian sumber peribadi di belakang pelayan mesti menjawab melalui terowong. Pemajuan membenarkan sambungan terowong dan tidak lebih; penghalaan dan kebenaran untuk 10.8.0.0/24 ialah tetapan lain pada skrin lain.

Tentukan dengan tiga soalan

Tiga soalan menyelesaikan pilihan lebih pantas daripada mana-mana jadual perbandingan:

  • Adakah sesuatu bersambung dari luar sebagai paket pertama? Maka gunakan pemajuan, atau geganti. Pencetus tidak boleh terbuka tanpa trafik keluar yang tidak akan wujud.
  • Patutkah lubang itu hidup lebih lama daripada masa melahu? Maka gunakan pemajuan, kerana pemetaan yang dicetuskan menutup mengikut jadualnya sendiri.
  • Adakah alamat WAN itu milik anda untuk diterbitkan? Jika tidak, betulkan lapisan di atasnya sebelum menyunting apa-apa peraturan.

Jika jawapan kepada ketiga-tiganya tidak, yang merupakan kes komputer riba yang mendail pembekal komersial sendiri, tiada satu pun peraturan diperlukan. Klien di belakang NAT berfungsi kerana ia mencipta pemetaan berkeadaan itu sendiri, dan itu meliputi kebanyakan orang yang membaca halaman pemajuan port pada tengah malam.

Artikel berkaitan