Passthrough PPTP tidak ada: perbaiki galat 807 Windows VPN
Meneruskan TCP 1723 saja tidak menghapus galat PPTP 807. GRE adalah protokol IP 47, jadi router perlu passthrough atau aturan protokol yang eksplisit.
Meneruskan TCP 1723 sering membuka bagian pertama PPTP dan meninggalkan sisanya rusak, sehingga Windows tetap mengembalikan galat 807 saat mencoba. Dorongan berikutnya adalah menambahkan aturan untuk port 47, dan langkah itulah yang membuang satu sore: GRE adalah nomor protokol di header IP, bukan port yang bisa dicocokkan tabel penerusan. Sampai router melewatkan protokol 47 dan mengikatnya ke panggilan yang sama, terowongan tidak bisa dimulai. Bagian di bawah memisahkan kedua kanal, lalu mengujinya satu per satu.
Tabel port tidak punya baris untuk nomor protokol
PPTP memakai dua percakapan yang gagal dengan cara berbeda. Yang di TCP 1723 memulai panggilan, meneruskan informasi tautan dan menutupnya saat pengguna memutus koneksi. Sisi muatan berjalan di dalam GRE, yang ditandai header IP dengan nomor protokol 47, dan di dalam terowongan itu PPP menegosiasikan tautan sementara MS-CHAPv2 memeriksa kredensial.
Karena GRE tidak membawa header transport, ia tidak menampilkan port apa pun, jadi aturan yang ditulis untuk port tidak punya apa pun untuk dicocokkan. Router yang meneruskan 1723 membuat pemetaan untuk sesi TCP itu dan berhenti di situ. Firmware yang menangani paruh kedua menyebut fitur itu passthrough PPTP atau PPTP ALG, dan sebagian firmware tidak menawarkan keduanya dan tidak pernah menyebut celahnya. Label pada kotak centang kurang penting dibandingkan apakah protokol 47 dikenali sama sekali.
Apa yang dilaporkan Windows saat jalur data mati
Galat 807 menyatakan koneksi tidak dapat diselesaikan, yang dalam praktik berarti panggilan mencapai server dan kanal data tidak naik. Ini vonis atas transport, bukan vonis atas akun. Galat 691 adalah yang menunjuk ke kredensial atau ke ketidakcocokan protokol autentikasi, jadi ia mengirim Anda ke tempat yang sama sekali lain.
Kerjakan transport sebelum menyentuh kata sandi. Mengubah kredensial untuk mengejar 807 membiarkan galat sebenarnya tetap di tempatnya dan membuat upaya berikutnya lebih sulit dibaca.
Mengapa klien kedua merusak terowongan yang berfungsi
Tanpa port untuk membedakan keduanya, perangkat NAT tidak dapat memisahkan dua klien PPTP seperti ia memisahkan dua sesi HTTPS. Karena itu banyak perangkat konsumen mengizinkan satu panggilan PPTP dan melacaknya berdasarkan alamat sumber. Laptop yang berfungsi sendiri berhenti menyelesaikan begitu mesin kedua menelepon, dan dari sisi klien kegagalan itu tampak acak. Pola itu milik firmware, dan tidak ada perubahan profil yang akan mengubahnya.
Amati tabel koneksi saat kedua klien menelepon. Jika hanya host pertama yang pernah memegang pemetaan, router sudah mencapai batas dukungannya dan tidak ada pengaturan sisi klien yang akan menggesernya.
Buktikan paruh mana yang gagal
Pastikan TCP 1723 tiba sebelum mengubah apa pun pada router, karena jawaban itu menentukan paruh mana yang Anda uji. Jalankan ini dari klien Windows terhadap nama server Anda sendiri. Yang pertama mencetak apakah port menjawab, dan yang kedua menelepon tanpa dialog, yang membuat upaya berulang dapat dibandingkan.
Test-NetConnection vpn.example.com -Port 1723
rasdial "Work VPN"
Hasil benar pada uji port berarti kanal kendali terbuka dan GRE adalah tersangka yang tersisa. Hasil salah berarti perutean, filter, atau penerusan rusak, dan tidak ada perubahan GRE yang akan menyelamatkannya. Sisi data harus diamati di tempat yang bisa dilihat, di server atau di router.
tcpdump -ni any proto 47
Padanan di Wireshark adalah filter tampilan ip proto 47, yang lebih mudah diberikan kepada orang yang tidak nyaman di baris perintah. GRE yang tiba tanpa ada yang keluar dalam jawaban berarti jalur kembali perlu diperbaiki.
Apa yang sebenarnya memperbaiki galat
Di tempat router menampilkan pengaturannya, aktifkan passthrough PPTP, atau izinkan protokol 47 secara eksplisit pada firmware yang menerima aturan. Di RouterOS aturan penerusan mencocokkan protokol secara langsung, yang tidak akan pernah bisa dilakukan penerusan berbasis port. Firmware konsumen biasanya menyembunyikan keputusan yang sama di balik kotak centang, kadang di bawah pengaturan keamanan bukan di bawah penerusan port. Jika tidak ada kendali seperti itu, tidak ada yang bisa menggantikannya di sisi klien.
/ip firewall filter add chain=forward protocol=gre action=accept
/ip firewall filter print where protocol=gre
Mengganti PPTP adalah pilihan lain dan sering lebih murah. Router yang mengakhiri VPN sendiri menghindari NAT ganda bagi klien masuk, dan protokol yang sudah ditangani NAT berbasis port tidak perlu passthrough sama sekali: OpenVPN di atas UDP, SSTP di atas TCP 443, atau L2TP/IPsec dengan NAT-T yang membungkus ESP di dalam UDP 4500. PPTP juga bergantung pada MS-CHAPv2, yang kelemahannya terdokumentasi membuatnya pilihan buruk untuk penerapan baru bahkan setelah galat hilang.
Catat aturan mana yang membuat perbedaan, karena situs yang sama akan menemui batas yang sama saat pengguna kedua meminta akses. Perbaikan di tingkat protokol masuk ke catatan jaringan, tempat insinyur berikutnya akan melihat.