Server Windows VPN dapat berbicara dengan klien VPN, tetapi tidak akan mengirim paket dari jaringan lokalnya ke klien VPN

8

Saya ingin mengkonfigurasi Windows Server 2012, dan klien Windows 7 dan Windows 8 VPN, dengan SSTP VPN yang menggunakan split tunneling dan off-subnet addressing, tapi saya mengalami masalah: server RRAS tidak akan mengirim paket ke VPN klien dari mesin apa pun selain dari dirinya sendiri.

Server VPN saya berjalan di "Virtual Private Cloud" Amazon, sehingga hanya memiliki satu NIC dengan alamat IP pada jaringan pribadi, RFC1918 yang dibagikan dengan semua server VPC Amazon saya yang lain, dan IP publik yang meneruskan semua lalu lintas ke alamat pribadi itu via NAT (Amazon menyebutnya "IP Elastis").

Saya telah menginstal RRAS dan mengatur VPN. Subnet pribadi di Amazon adalah 172.16.0.0/17 (inilah yang saya sebut "Amazon LAN"), tetapi saya ingin semua klien VPN menggunakan rentang 10.128.0.0/20 (apa yang saya sebut " VPN LAN ").

Di panel kontrol Amazon saya, saya telah melakukan hal berikut:

  • Menonaktifkan pemeriksaan sumber / tujuan untuk server VPN
  • Menambahkan entri ke tabel rute untuk kumpulan 10.128.0.0/20 yang menunjuk ke antarmuka jaringan server VPN.

Di dalam MMC Routing dan Remote Access, di dalam menu properti untuk nama server, saya telah melakukan hal berikut:

  • Tab Umum -> IPv4 Router (dicentang), diaktifkan untuk LAN dan perutean panggilan-panggilan
  • Tab Umum -> Server Akses Jarak Jauh IPv4 (dicentang)
  • Tab IPv4 -> Aktifkan Penerusan IPv4 (dicentang)
  • Tab IPv4 -> Static Address Pool, dan tentukan 10.128.0.1-10.128.15.154

Pada klien saya dan semua server saya, saya telah memastikan bahwa ICMP secara eksplisit diizinkan di firewall, atau firewall dinonaktifkan sepenuhnya (bukan rencana permanen, tentu saja).

Pada klien, untuk mengaktifkan tunneling split, saya telah pergi ke properti untuk koneksi VPN -> Jaringan -> IPv4 -> Propeties -> Advanced -> tab Pengaturan IP, dan tidak dicentang "Gunakan gateway default pada jaringan jarak jauh", dan dicentang "Nonaktifkan penambahan rute berbasis kelas".

Pada titik ini, klien saya dapat terhubung menggunakan klien VPN Windows 7/8. Mereka diberi IP dari kumpulan 10.128.0.0/20, tetapi karena mereka tidak secara otomatis mengatur rute apa pun, mereka tidak dapat berbicara dengan jaringan jarak jauh. Saya dapat mengatur rute ke jaringan jarak jauh, dan ke jaringan VPN, seperti ini (di klien):

route add 172.16.0.0/17 <VPN IP ADDRESS> 
route add 10.128.0.0/20 <VPN IP ADDRESS> 

Sekarang klien dapat melakukan ping ke alamat LAN VPN dari server VPN (10.128.0.1), dan juga alamat LAN Amazon-nya (172.16.1.32). Ini mengalami masalah, ketika mencoba untuk berbicara dengan mesin lain di Amazon LAN: ping tidak menerima balasan.

Jadi, misalnya, jika klien mencoba melakukan ping ke sistem yang saya tahu terserah dan merespons ping seperti 172.16.0.113, ia tidak akan melihat balasan tersebut (dikatakan "Permintaan habis waktu"). Wireshark pada server VPN mengonfirmasi bahwa ia melihat ping dari klien, dan bahkan melihat balasan dikirim dari 172.16.0.113, tetapi balasan itu tampaknya tidak pernah membuatnya kembali ke klien.

Selain itu, jika saya melakukan ping ke alamat LAN VPN klien dari 172.16.0.113, Wireshark di server VPN melihat ping, tetapi tidak melihat balasan.

Jadi, untuk rekap:

  • Server VPN dapat melakukan ping ke mesin lain di Amazon LAN (172.16.0.0/17) dan menerima balasan, dan mesin lain di jaringan itu dapat melakukan hal yang sama dengannya.
  • Klien VPN dapat melakukan ping ke alamat LAN Amazon server dan menerima balasan, setelah klien menambahkan rute yang tepat seperti yang dijelaskan sebelumnya.
  • Klien VPN dapat melakukan ping ke alamat LAN VPN server 10.128.0.1, dan server VPN dapat melakukan ping ke alamat LAN VPN klien dalam rentang 10.128.0.0/20, setelah klien menambahkan rute rute yang tepat seperti dijelaskan sebelumnya.
  • Klien VPN dapat mengirim ping ke mesin di Amazon LAN, tetapi ketika mesin-mesin itu mengirim balasan, mereka berhenti di server VPN - mereka tidak diteruskan ke klien, menghasilkan pesan "Permintaan habis" pada klien . Sebaliknya, ketika sebuah mesin di Amazon LAN mencoba melakukan ping ke 10.128.0.0/20 alamat VPN VPN klien, server VPN melihat ping, tetapi klien tidak pernah melakukannya dan karenanya tidak menghasilkan balasan.

Mengapa server VPN tidak mengirim paket dari Amazon LAN ke kliennya di VPN LAN? Itu pasti dapat berbicara dengan klien di VPN LAN, dan routing diaktifkan, dan itu bersedia untuk mengarahkan paket dari VPN LAN -> Amazon LAN, tetapi tidak sebaliknya. Apa yang kulewatkan di sini?

Rute

Berikut adalah tabel perutean dari klien VPN. Klien adalah VM VirtualBox yang menjalankan Windows 8. Alamat IP adaptor vbox adalah 10.0.2.15 pada / 24. Klien ini berada di belakang NAT (sebenarnya, di belakang double-NAT, karena adaptor vbox adalah NAT'd ke jaringan lokal saya, yang NAT'd ke Internet). Tabel rute ini berasal dari setelah secara manual menambahkan rute ke 10.128.0.0/20 dan 172.16.0.0/17.

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0         10.0.2.2        10.0.2.15     10
         10.0.2.0    255.255.255.0         On-link         10.0.2.15    266
        10.0.2.15  255.255.255.255         On-link         10.0.2.15    266
       10.0.2.255  255.255.255.255         On-link         10.0.2.15    266
       10.128.0.0    255.255.240.0         On-link        10.128.0.3     15
       10.128.0.3  255.255.255.255         On-link        10.128.0.3    266
    10.128.15.255  255.255.255.255         On-link        10.128.0.3    266
    54.213.67.179  255.255.255.255         10.0.2.2        10.0.2.15     11
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
       172.16.0.0    255.255.128.0         On-link        10.128.0.3     15
   172.16.127.255  255.255.255.255         On-link        10.128.0.3    266
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link         10.0.2.15    266
        224.0.0.0        240.0.0.0         On-link        10.128.0.3    266
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link         10.0.2.15    266
  255.255.255.255  255.255.255.255         On-link        10.128.0.3    266
===========================================================================
Persistent Routes:
  None

Berikut adalah tabel perutean dari server RRAS, yang menjalankan Windows Server 2012. Server ini juga berada di belakang NAT, seperti yang dibahas di atas. Hanya memiliki satu NIC. Alamat IP privatnya adalah 172.16.1.32, pada a / 23 (itu sendiri merupakan bagian dari jaringan / 17 yang lebih besar; saya percaya adil untuk mengabaikan bagian / 17 di luar / 23, karena mesin lain pada / 23 juga tidak dapat dijangkau atau dijangkau oleh klien VPN).

Adaptor virtual VPN memiliki alamatnya sendiri, 10.128.0.1, yang ditetapkan secara otomatis saat pertama kali klien terhubung. Rute untuk 10.128.0.1 (untuk dirinya sendiri) dan 10.128.0.2 (untuk satu-satunya klien) yang Anda lihat juga ditambahkan secara otomatis pada waktu itu. Tidak ada rute yang ditambahkan ke server VPN secara manual.

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0       172.16.0.1      172.16.1.32     10
       10.128.0.1  255.255.255.255         On-link        10.128.0.1    286
       10.128.0.2  255.255.255.255       10.128.0.2       10.128.0.1     31
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  169.254.169.250  255.255.255.255       172.16.0.1      172.16.1.32     10
  169.254.169.251  255.255.255.255       172.16.0.1      172.16.1.32     10
  169.254.169.254  255.255.255.255       172.16.0.1      172.16.1.32     10
       172.16.0.0    255.255.254.0         On-link       172.16.1.32     11
      172.16.1.32  255.255.255.255         On-link       172.16.1.32    266
     172.16.1.255  255.255.255.255         On-link       172.16.1.32    266
       172.16.2.0    255.255.254.0      172.168.0.1      172.16.1.32     11
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link       172.16.1.32    266
        224.0.0.0        240.0.0.0         On-link        10.128.0.1    286
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link       172.16.1.32    266
  255.255.255.255  255.255.255.255         On-link        10.128.0.1    286
===========================================================================
Persistent Routes:
  None

Berikut adalah tabel perutean untuk mesin lain di jaringan pribadi server, juga menjalankan Server 2012. Ini memiliki satu NIC, yang memiliki alamat IP pribadi 172.16.1.177 - yang artinya ada pada / 23 yang sama dengan server VPN. (Perhatikan bahwa rute ke 10.128.0.0/20 diatur di gateway, yang dikendalikan oleh Amazon, sehingga Anda tidak akan melihatnya di sini. Saya telah menambahkan rute yang benar ke Amazon, dibuktikan oleh fakta bahwa Wireshark di Server VPN melihat paket.)

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0       172.16.0.1     172.16.1.177     10
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  169.254.169.250  255.255.255.255       172.16.0.1     172.16.1.177     10
  169.254.169.251  255.255.255.255       172.16.0.1     172.16.1.177     10
  169.254.169.254  255.255.255.255       172.16.0.1     172.16.1.177     10
       172.16.0.0    255.255.254.0         On-link      172.16.1.177    266
     172.16.1.177  255.255.255.255         On-link      172.16.1.177    266
     172.16.1.255  255.255.255.255         On-link      172.16.1.177    266
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      172.16.1.177    266
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      172.16.1.177    266
===========================================================================
Persistent Routes:
  None

Berikut adalah rute di konsol Amazon. Saya pikir ini benar - lalu lintas yang membuatnya kembali ke server VPN, setelah semua, hanya untuk menghilang di dalamnya - tetapi dalam kasus seseorang ingin melihat mereka, di sini mereka. (Amazon melakukan hal-hal yang agak aneh. eni-2f3e8244 / i-77e26440Mengacu pada NIC pada server VPN, dan igw-d4bc27bcmengacu pada NAT / gateway Internet yang dikontrol Amazon yang digunakan oleh semua instance saya untuk berbicara dengan Internet.)

10.128.0.0/20   eni-2f3e8244 / i-77e26440   
172.16.0.0/17   local   
0.0.0.0/0       igw-d4bc27bc
Micah R Ledbetter
sumber
2
Saya pernah menggunakan pengaturan yang hampir sama dengan milik Anda, dan tidak bisa mengingat apa yang Anda lakukan salah. Bisakah Anda memposting output ROUTE PRINT dari klien, server, dan satu host di jaringan 172.16? (tebakan saya adalah bahwa host dari jaringan 176,16 tidak memiliki rute yang benar)
Dusan Bajic
juga, uji dengan tracert dari salah satu host 172.16 ke vpn client - apakah pernah mencapai server vpn?
Dusan Bajic
Saya telah menambahkan informasi yang diminta - route printdan tracertkeluaran - dan saya telah membuat koreksi penting pada beberapa informasi yang saya tambahkan sebelumnya. (Terima kasih atas bantuan Anda!)
Micah R Ledbetter
1
Aneh. Bagaimana kumpulan alamat statis Anda untuk klien vpn dikonfigurasi dengan tepat?
Dusan Bajic
@ dusan.bajic Mulai alamat IP: 10.128.0.0; Alamat IP Akhir: 10.128.15.255; Jumlah alamat: 4096.
Micah R Ledbetter

Jawaban:

1

Bagaimana jika Anda menambahkan rute statis pada server Anda memberitahu mereka bahwa untuk mencapai 10.128.0.0/20 mereka harus melalui alamat LAN server VPN?

route add 10.128.0.0 mask 255.255.240.0 a.b.c.d

Ganti abcd dengan alamat LAN server VPN.

Setidaknya ini akan mengesampingkan masalah dengan perutean amazon.

Silvio Massina
sumber