Dua tapak pada pautan selular menghadapi masalah yang sama dalam kedua-dua arah: kedua-duanya tidak boleh menerima sambungan IPv4 yang tidak diminta, jadi kedua-duanya tidak boleh memainkan peranan pelayan dalam terowong langsung. Seni bina yang berkesan meletakkan pihak ketiga yang boleh dicapai di tengah: setiap tapak mendail keluar dan bahagian tengah hanya memajukan trafik yang anda luluskan. Bahagian tengah itu boleh jadi penghala yang anda kendalikan atau produk yang memperkenalkan rakan sebaya, dan kedua-duanya bukan perkara yang sama. Langkah di bawah disusun supaya setiap satu menghasilkan bukti sebelum langkah seterusnya bergantung padanya.

Tiada tapak boleh didail, jadi kedua-duanya mesti mendail keluar

Sahkan kekangan sebelum mereka bentuk di sekelilingnya. Jika pengendali memberikan alamat peribadi kepada antara muka WAN, tiada pemajuan port pada penghala tapak itu sendiri akan menjadikannya boleh dicapai, kerana terjemahan berlaku di hulu. Alamat IPv6 awam mungkin wujud pada pautan yang sama dan mengubah reka bentuk sepenuhnya, sebab itu semakan meliputi kedua-dua keluarga. Catat jawapan bagi setiap tapak, kerana kedua-duanya jarang mempunyai kekangan yang sama walaupun berkongsi pengendali.

Kes selular biasa kelihatan seperti alamat daripada julat terjemahan pengendali dengan laluan lalai melaluinya. Ini bukan kerosakan yang perlu dibaiki; inilah sebab hab itu wujud. Yang anda cari ialah mana-mana alamat yang boleh dicapai pihak ketiga tanpa tapak bercakap dahulu.

Dua arahan menjawab soalan pengalamatan bagi tapak di hadapan anda. Jalankannya pada penghala tapak, bukan pada komputer riba di belakangnya:

ip -4 addr show scope global
ip -6 addr show scope global

Siapa memperkenalkan rakan sebaya dan siapa membawa paket

Pengenalan dan pengangkutan ialah tugas berasingan yang sering digabungkan produk tanpa menjadikan sempadannya kelihatan. Mekanisme pertemuan membantu dua rakan sebaya mencari laluan calon; geganti membawa paket mereka apabila tiada laluan langsung. Membeli perkhidmatan yang memperkenalkan rakan sebaya tidak memberikan anda penghala, dan perbezaan itulah yang menentukan sama ada reka bentuk memerlukan hab.

Traversal mempunyai kosa katanya sendiri, dan perkataannya menerangkan peranan, bukan jaminan. Spesifikasi ICE menerangkan calon dan semakan ketersambungan, STUN menerangkan satu cara untuk mempelajari terjemahan alamat, dan TURN menerangkan pengangkutan geganti untuk aplikasi yang melaksanakannya. Tiada satu pun mekanisme itu muncul dalam get laluan biasa kerana anda menghalakannya ke alamat penemuan. Sahkan traversal sebagai keupayaan produk, dan anggap ada geganti sehingga ujian menunjukkan sebaliknya.

Satu laluan setiap tapak, dimiliki rakan sebaya

Hab memerlukan satu terowong setiap tapak, awalan LAN berasingan di belakang setiap satu, dan laluan bagi setiap awalan yang menamakan pemiliknya. Dalam contoh hab ialah 10.61.0.1, tapak A ialah 10.61.0.11 dengan LAN 10.60.10.0/24, dan tapak B ialah 10.61.0.12 dengan LAN 10.60.20.0/24. Setiap laluan di bawah menunjuk ke rakan sebaya yang memiliki awalan itu, bukan ke antara muka terowong:

ip route add 10.60.10.0/24 via 10.61.0.11 dev wg0
ip route add 10.60.20.0/24 via 10.61.0.12 dev wg0
sysctl net.ipv4.ip_forward
ip route get 10.60.20.55 from 10.60.10.77

Pemajuan mesti diaktifkan, jika tidak paket berhenti di hab tanpa ralat yang menunjukkan puncanya. Arahan terakhir menjawab soalan sebenar, kerana ia bertanya laluan mana yang akan diambil paket dari LAN tapak A ke LAN tapak B dengan sumber disertakan dalam carian. Anggap carian yang menamakan antara muka terowong sebagai bukti dan yang jatuh ke laluan lalai sebagai laluan yang hilang, bukan misteri. Kemudian hadkan transit secara sengaja, kerana hab yang memajukan antara setiap rakan sebaya menjadikan dua tapak sebagai rangkaian rata dan dasar akses yang anda sangka ada tidak lagi terpakai.

Tentukan juga di mana penyulitan berakhir. Apabila hab memegang kedua-dua hujung terowong, pengendali mesin itu dan beban kerjanya menyertai model kepercayaan dan ketersediaan, dan lebar jalurnya menjadi bahagian laluan.

Kekalkan setiap pemetaan hidup melalui pengendali

Setiap tapak memulakan terowongnya sendiri, dan setiap satu mesti mengekalkan pemetaan terjemahan hidup atau pengendali melupakannya. Mesej jaga-hidup di sebelah yang memulakan mengekalkan pemetaan itu antara jabat tangan. Hadkan awalan yang dibenarkan kepada alamat hab dan LAN jauh, supaya rakan sebaya yang terjejas tidak boleh menuntut awalan yang bukan miliknya:

[Peer]
PublicKey = <hub public key>
Endpoint = 192.0.2.10:51820
AllowedIPs = 10.61.0.1/32, 10.60.20.0/24
PersistentKeepalive = 25

Cerminkan blok itu di tapak lain dengan awalan jauhnya sendiri, dan tahan dorongan untuk membenarkan seluruh julat terowong. Jabat tangan yang berhenti dan menyambung semula dari port sumber baharu ialah tandatangan pemetaan yang luput, dan cap masa jabat tangan ialah bukti bahawa ia berlaku. Selang yang lebih pendek daripada tamat masa pengendali menghalang luput itu daripada membaikinya kemudian. Apabila pengendali mengubah tingkah laku terjemahannya, jangkakan masa itu berubah bersamanya.

Buktikan kedua-dua arah, kemudian buktikan pemulihan

Pengesahan bersifat berarah, jadi ping dari A ke B membuktikan separuh reka bentuk dan tiada apa-apa tentang laluan balik. Semak laluan balasan dengan carian peka sumber yang sama di hab, kemudian ulangi ujian dari sebelah lain. Jabat tangan baharu juga termasuk dalam bukti, kerana terowong yang terbiar sejam mungkin menguji pemetaan lama:

wg show wg0 latest-handshakes
ping -c 3 10.60.20.55
traceroute -n 10.60.20.55

Kemudian uji kegagalan yang anda jangkakan, bukan kejayaan yang anda mahukan. Mulakan semula pautan satu tapak dan sahkan terowong kembali tanpa manusia menyentuh mana-mana hujung, kerana reka bentuk yang memerlukan pengendali selepas setiap perubahan pengendali belum siap. Catat laluan utama, alternatif IPv6 jika ada, dan tingkah laku apabila hab tidak tersedia. Hab kini sebahagian daripada model ketersediaan anda, jadi catat perkara itu dan bukannya menemuinya semasa gangguan.

Artikel berkaitan