Mina VPN-klienter för OPNSense kan inte ansluta till servrar som körs som Proxmox VM:ar


LÖST! Se mitt kommentar för lösningen.


Kort version: Mina OpenVPN-klienter kan inte ansluta till servrar som körs i VM:ar på en Proxmox-värd (men de KAN ansluta till själva Proxmox-värden). Varje Proxmox VM får en IP-adress (annorlunda än Proxmox-värden), men det finns endast ett nätverkskort på Proxmox-värden, så Proxmox själv och alla VM delar på det kortet. (Jag tvivlar på att “dela på” är rätt terminologi här, vad kallas det? Är detta “bridge”?).

Lång version:

  1. Min brandvägg kör OPNSense, som hostar OpenVPN-servern som är exponerad mot WAN-porten. Den körs på en dedikerad enhet med ett Intel dual gigabit Ethernet-kort för WAN och LAN. Mitt nätverks LAN-subnät är 192.168.113.0/24, och mina VPN-klienter verkar finnas i 192.168.114.0/24-subnätet.
  2. Lokala enheter får IPs i 192.168.113.0/24. Observera att dessa klienter kan ansluta till både Proxmox-värden (192.168.113.20) och VM:ar (192.168.113.30, .31, osv.).
  3. VPN-klienter får IPs i 192.168.114.0/24.

RESULTAT: OpenVPN-klienterna kan inte ansluta till Proxmox VM:ar (192.168.113.30, .31, osv.), men de KAN ansluta till Proxmox-värden (192.168.113.20).

FÖRVÄNTAN: VPN-klienterna kan ansluta till samma IPs som lokala enheter.

Noteringar:

Jag skulle älska att uppdatera min mentala modell för att förstå varför detta inte fungerar som det ska. Jag misstänker att jag helt enkelt inte förstår en aspekt av hur ett nätverkskort/MAC-adress i ett enda NIC kan mappas till flera IPs (och/eller hur det samverkar med routning över subnät). Även om du bara kan ge mig rätt terminologi att söka på för att lära mig mer, skulle det vara uppskattat!

Jag undrar om du har något i din konfiguration som förhindrar det. Jag kör pfSense med OpenVPN, och jag har inga problem att ansluta till mina Proxmox VM:ar eller containrar. Mina VM:ar har alla IP-adresser i 10.4.0.XXX, och mitt VPN delar ut 192.168.1.XXX IPs.

Jag satte mig äntligen ner och försökte lösa detta, och denna Proxmox-forumtråd var till stor hjälp: forum.proxmox.com/threads/cant-access-proxmox-vms-from-vpn.143655/

Mitt problem var mycket likt det i tråden: Jag hade VPN-tunnlar inuti VM:arna som inte svarade på VPN-klienterna, som bara behövde en tydlig rutt till 192.168.114.0/24, vilket jag lyckades med via min /etc/network/interfaces-fil:

# Den primära nätverksgränssnittet
auto ens18
iface ens18 inet dhcp
  # för att korrekt svara på openvpn-klienter
  up ip route add 192.168.114.0/24 via 192.168.113.1