Kedua-dua reka bentuk dipanggil VPN dan menyelesaikan masalah yang berbeza. Terowong tapak-ke-tapak menyambungkan dua gerbang, jadi setiap hos di belakangnya boleh mencapai alamat yang dibenarkan di sebelah sana tanpa memasang apa-apa. Terowong akses jauh menyambungkan peranti individu ke rangkaian, satu klien pada satu masa. Perbandingan ini penting kerana kebanyakan kesilapan penggunaan berlaku apabila satu reka bentuk dikonfigurasikan sambil mengharapkan tingkah laku yang lain, dan gejalanya biasanya tamat masa pada perkhidmatan yang benar-benar dicapai oleh terowong itu.

Dua reka bentuk, dua sempadan

Site-to-siteRemote access
Endpointstwo gatewaysa gateway and each client
Who configuresnetwork ownerseach user or an MDM
Scope of reachwhatever the gateways routewhatever the client is granted
Broadcast discoverynot carriednot carried

Tiada satu pun reka bentuk melanjutkan domain siaran LAN. Peranti di sebelah jauh tidak muncul dalam senarai penemuan setempat, dan mengharapkannya ialah andaian pertama yang perlu dilepaskan. Nama DNS peribadi yang anda terbitkan secara sengaja lebih mudah diramal daripada mana-mana protokol penemuan, dan ia kekal walaupun pembekal bertukar.

Ambil 10.10.0.0/24 di satu tapak dan 10.20.0.0/24 di tapak lain. Gerbang A memerlukan laluan atau pemilih trafik yang menghantar awalan 10.20.0.0/24 ke dalam terowong, dan gerbang B memerlukan imej cerminnya. Hos di kedua-dua belah kemudian menggunakan ketersambungan IP biasa dan tidak pernah tahu bahawa terowong wujud. Ketidaknampakan itulah cirinya, dan itulah juga sebab kegagalan kelihatan seperti ralat rangkaian biasa dan bukan ralat terowong.

Berasaskan dasar dan berasaskan laluan bukan terowong yang sama

Dalam penggunaan IPsec berasaskan dasar, pemilih trafik yang dirundingkan menentukan dengan tepat pasangan sumber dan destinasi mana yang dilindungi. Jika subrangkaian baharu muncul di belakang satu gerbang dan tiada pemilih meliputinya, terowong kekal hidup dan subrangkaian baharu itu tidak dibawa langsung. Dalam reka bentuk berasaskan laluan, antara muka menerima trafik dan jadual penghalaan membuat keputusan, yang menjadikan penambahan awalan sebagai perubahan laluan dan bukan rundingan semula terowong.

StrongSwan memaparkan kedua-dua pandangan secara langsung, dan membacanya bersama-sama ialah cara untuk mengetahui model mana yang sebenarnya anda gunakan.

swanctl --list-sas
ip xfrm policy
ip -4 route show table all | grep -E '10\.(10|20)\.'

Senarai pemilih yang tertinggal awalan yang anda perlukan menerangkan kegagalan tanpa sebarang tangkapan paket, dan laluan yang menunjuk ke antara muka yang salah menerangkan kegagalan cermin di laluan balik. Baca kedua-duanya sebelum merundingkan semula apa-apa, kerana pembaharuan kunci tidak akan menambah pemilih yang tidak pernah anda konfigurasikan.

Rancang pengalamatan sebelum terowong

Julat bertindih ialah kesilapan reka bentuk yang tidak boleh diperbaiki dengan konfigurasi. Jika kedua-dua tapak menggunakan 192.168.1.0/24, hos yang memerlukan 192.168.1.50 mempunyai dua calon dan tiada cara untuk memilih. Terowong akan disahkan, persatuan keselamatan akan dibentuk, dan keputusan penghalaan tetap salah atau samar-samar.

Pilih salah satu daripada tiga pilihan jujur: nomborkan semula satu tapak, terjemahkan julat bertindih di gerbang supaya setiap pihak melihat awalan yang berbeza, atau lepaskan penghalaan langsung untuk hos tersebut dan terbitkan perkhidmatan itu dengan cara lain. Setiap satu ada kos, dan yang pertama biasanya paling murah dalam ufuk dua tahun. Putuskan sebelum terowong wujud, kerana selepas itu perubahan menyentuh setiap peranti yang mempunyai alamat lama.

Selesaikan juga persoalan MTU lebih awal. Terowong mengurangkan muatan berguna, dan reka bentuk yang bergantung pada pemecahan berkelakuan berbeza daripada yang mengunci MSS di gerbang.

Penghantaran dan dasar berada di luar terowong

Gerbang mesti bersedia menghantar paket antara antara muka terowong dan antara muka LAN, dan kedua-dua arah memerlukan dasar yang membenarkan perkhidmatan. Dalam Linux ini dua tetapan berasingan, ditambah peraturan tembok api yang menentukan sama ada aliran yang dihantar dibenarkan sama sekali.

sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -s 10.20.0.0/24 -d 10.10.0.0/24 -j ACCEPT
iptables -A FORWARD -s 10.10.0.0/24 -d 10.20.0.0/24 -j ACCEPT

Hos penerima menambah lapisan ketiga: tembok apinya sendiri masih perlu menerima klien dari subrangkaian jauh. Pelayan fail yang hanya membenarkan /24 setempatnya akan menolak trafik yang dihantar dari 10.20.0.7, tidak kira betapa sihat terowong kelihatan, dan penolakan itu mudah dibaca sebagai kegagalan penghalaan.

Uji dari hos, bukan dari gerbang

Ping yang dihantar oleh gerbang sendiri boleh mengikut alamat sumber dan dasar yang berbeza daripada trafik pengguna yang dihantar. Itu menjadikannya ujian yang lemah dan kadangkala mengelirukan: ia berjaya apabila aplikasi gagal, atau gagal apabila aplikasi berfungsi.

ip route get 10.10.0.5 from 10.20.0.7
ping -I 10.20.0.7 10.10.0.5
curl -sv --max-time 5 http://files.10-10.internal/ -o /dev/null

Gunakan hos sebenar, alamat sumber sebenar dan protokol sebenar yang digunakan oleh aplikasi. Kemudian baca laluan balasan secara berasingan, kerana arah hadapan yang berfungsi tanpa laluan balik menghasilkan tamat masa yang kelihatan sama seperti perkhidmatan yang disekat.

Pilih reka bentuk mengikut soalan yang anda jawab: adakah anda menyambungkan rangkaian atau menerima peranti? Segala-galanya, termasuk pembekal yang anda konfigurasikan, berpunca daripada jawapan itu.

Artikel berkaitan