Zorg er iig voor dat de verschillende netwerken ook daadwerkelijk verschillende subnetten gebruiken (of andere IP reeks, 10.x, 172.x, etc)
Dit is de routing tabel van m'n router (WRT54GL met DD-WRT v23SP2) en daaronder van mijn VPN server. 192.168.2.3 is mijn VPN server en 10.8.0.0/24 is het subnet voor inkomende VPN clients
| Destination LAN IP | Subnet Mask | Gateway | Interface |
| 192.168.2.0 | 255.255.255.0 | 0.0.0.0 | LAN & WLAN |
| 10.8.0.0 | 255.255.255.0 | 192.168.2.3 | LAN & WLAN |
| 94.x.x.0 | 255.255.248.0 | 0.0.0.0 | WAN |
| 0.0.0.0 | 0.0.0.0 | 94.x.x.1 | WAN |
code:
1
2
3
4
5
| Mantuae:~# ip r
10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1
192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.3
10.8.0.0/24 via 10.8.0.2 dev tun0
default via 192.168.2.1 dev eth1 |
Stel dat ik dus vanaf een remote lokatie op VPN inlog, dan komt er een tunnel en de remote client krijgt een IP adres uit de reeks 10.8.0.0/24. De route voor 192.168.2.0/24 worden ook geadvertised (NL woord?) naar de remote client. Wil de remote op 192.168.2.x, dan gaat dat via tun0 (Linux) richting 10.8.0.1 (de VPN gateway). Deze stuurt het door naar eth1 (lokale netwerk), geheel volgens de routing regels.
Wil een host uit het 192.168.2.0/24 segment een VPN client op 10.8.0.0/24 bereiken, dan gaat er eerst een verzoek naar de router (WRT54GL) en die heeft in z'n routing tabel staan dat verkeer voor 10.8.0.0/24 via de gateway 192.168.2.3 moet. 192.168.2.3 heeft vervolgens in z'n routing tabel staan dat 10.8.0.0/24 via tun0 moet (de tunnel interface)
Kortom:
Van VPN naar lokaal: 10.8.0.0/24 (tun0) => 10.8.0.1 (gateway) => (192.168.2.3) (eth1) => 192.168.2.0/24
Van lokaal naar VPN: 192.168.2.0/24 => 192.168.2.1 => 192.168.2.3 (gateway) (eth1) => 10.8.0.0/24 (tun0)
Helpt dit een beetje?
Ik heb overigens geen forwarding regels in iptables gezet. /proc/sys/net/ipv4/ip_forward staat wel aan (1)
Doe eens in een console de volgende commando's (mits je iproute hebt geinstalleerd) en post ze (apart) in een [code] blok, daarmee behoud je tabs etc.
ip a
ip r
Indien nodig, maskeer je de publieke IP adressen.
Editje: Dit alles is overigens met OpenVPN geregeld. Maar aangezien dit een routingprobleem schijnt te zijn, kijk voor de zekerheid nog even
man pptpd.conf door onder ROUTING CHECKLIST en kies de voor jou beste situatie
[
Voor 7% gewijzigd door
MrNGm op 30-01-2009 01:54
. Reden: addendum & zin wat beter geformuleerd ]