VPN (routing) Frage

dMopp

Banned
Registriert
März 2007
Beiträge
9.688
[SOLVED] VPN (routing) Frage

Hallo,

ich habe aktuell ein Problem mit meinem openVPN (debian) Server. Vermutlich aber nur nen Denkfehler.


Ich möchte von, zB Unterwegs per VPN mich mit meinem Homenetz verbinden. Das klappt soweit auch. Nur habe ich keinen Zugriff auf PCs innerhalb meines LANs.



Folgendes Setting:
Code:
server.ovpn

port ---
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
server [COLOR="Olive"]10.8.0.0[/COLOR] 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
user nobody
group users
persist-key
persist-tun
status openvpn-status.log
verb 5
client-to-client
push "route [COLOR="DarkRed"]192.168.178.0[/COLOR] 255.255.255.0"


Was geht?
vpnclient -> vpn-ip vom server
vpnclient -> LAN-ip vom server

Was geht nicht?
vpnclient -> LAN-IP anderer Geräte


Ein route -n auf meinem vpn Server (ist gleichzeitig das Gateway im Netzwerk, außer er weis nicht weiter, dann fragt er die fritzbox) zeigt folgendes:
Code:
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
[COLOR="Olive"]10.8.0.2[/COLOR]        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
[COLOR="DarkRed"]192.168.178.0[/COLOR]   0.0.0.0         255.255.255.0   U     0      0        0 eth0
[COLOR="olive"]10.8.0.0[/COLOR]        [COLOR="olive"]10.8.0.2[/COLOR]        255.255.255.0   UG    0      0        0 tun0
0.0.0.0         [COLOR="DarkRed"]192.168.178.1[/COLOR]   0.0.0.0         UG    0      0        0 eth0

das gleiche auf dem client:
Code:
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
[COLOR="olive"]10.8.0.5[/COLOR]        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
[COLOR="DarkRed"]192.168.178.0[/COLOR]   10.8.0.5        255.255.255.0   UG    0      0        0 tun0
[COLOR="olive"]10.8.0.0[/COLOR]        [COLOR="olive"]10.8.0.5[/COLOR]        255.255.255.0   UG    0      0        0 tun0
192.168.30.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0         192.168.30.254  0.0.0.0         UG    0      0        0 eth0


ip forwarding aufm Server ist auch aktiv :/


Um weitere Erklärungen zu vereinfachen mal ein paar namen:

Horst -> GW + VPN Server
Mobile -> VPNClient
fritzbox -> Der eigentliche Router, ipv4 mäßig hat der aber keine direkte Aufgabe (Namensauflösung außerhalb des netztes oder so, sonnst nix)
 
Zuletzt bearbeitet:
Muß nicht einmal Tunnel-Adresse (lokal und remote IP) und zusätzlich das IP-Subnetz des LANs für diesen Tunnel angegeben sein? + explizit der VPN-Server-Port (z.B. 10001)?

rport 10001 #VPN Server Port
ifconfig 10.0.0.2 10.0.0.1 #IP-Adressen für den Tunnel (lokal und remote IP)
route 192.168.178.0 255.255.255.0 #IP-Subnetz für diesen Tunnel
 
Zuletzt bearbeitet:
Hier noch meine client.conf (hatte ich vergessen):

Code:
client
dev tun
proto udp
remote ---
resolv-retry infinite
nobind
persist-key
persist-tun
---certkrams---
comp-lzo
verb 3
~

Port und Adresse habe ich bwusst aus der config rausgelassen, ist ja für das Problem nicht relevant, da des eigentliche VPN ja funzt


ipaddr server:
Code:
tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 100
    link/none 
    inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0

ipaddr client:
Code:
tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 100
    link/none 
    inet 10.8.0.6 peer 10.8.0.5/32 scope global tun0
 
Zuletzt bearbeitet:
Kannst du bitte noch ein paar Angaben zu den PC's machen? Sind das Windows Rechner? Wie möchtest du auf die Rechner "zugreifen"?
 
Die Endgeräte sind verschieden. Von Windows 7 über Windows Embedded bis hin zu Linux. "Zugreifen" möchte ich zu erst mal per Ping ... ;) Also ein Response der Endgeräte würde mir weiter helfen. Primäres Ziel ist der Zugriff auf den "Router" per Webinterface. Nur leider kommen meine Routen nichtmal bis dahin (ka warum)
 
Hast du schon mal einen traceroute versucht? Ansonstens mal einen tcpdump auf dem Server machen und schauen ob ein icmp Paket überhaupt durchgeht und wenn ja, was bei Ziel- und Quelladresse drinen steht. Die Konfiguration des OpenVPN Server und Client sieht für mich eigentlich ok aus. Beim Versuch einen Windows PC anzupingen blockiert natürlich die Windows Firewall. Falls du das Versucht hast, hilft auf die schnelle mal die Firewall zu deaktivieren oder eine entsprechende Regel anlegen.
 
Nicht wirklich leider. Insbesondere weil route add fast nie funzt >_>


route add -net 192.168.178.0 netmask 255.255.255.0 metric 1 gw 10.8.0.1 tun0
SIOCADDRT: Kein passender Prozess gefunden


>_>

PS:


Der Echo request kommt auf dem Server an... :/
 
Zuletzt bearbeitet:
Wo funktioniert route add nicht?
Ergänzung ()

Hast du eine Firewall auf dem Gateway? Die muss natürlich konfiguriert werden
 
generell, bekomme immer den gleichen fehler (also auf server UND client, egal welche route add befehl ich versuche)

Edit:
Ich habe spaßenshalber mal die firewall auf ALLOW ALL gestellt... gleiches Problem. Liegt also nicht an den IPTables :(
 
Zuletzt bearbeitet:
Ich verstehe gerade nicht warum du nochmal die route setzen möchtest. Laut deinem post mit der routing Tabelle ist die route gesetzt. Wenn die icmp Pakete ankommen, siehst du auf den request auch die reply?
 
Ebend nicht. Der Request komtm auf dem vpnsevrer/GW an. Aber auch wirklich nur der Request. Dann tut sich nichts mehr. Ich komme von "draußen" auch an das interne Interface des vpn/gw dran, jedoch nicht darüber hinaus :(

Das Bedeutet für mich:

Client Route stimmt, der Request landet beim Server. Nur da haut was nicht hin. IPTables sinds nicht. Der Router selbst ist es auch nicht, denn direkt aus dem LAN gehts ja auch ^^
 
Zuletzt bearbeitet:
Und was hast du gepingt? Eine Adresse in deinem LAN oder auf deinem Server?
Ergänzung ()

Poste doch bitte mal einen vollständigen Auzug der Routing Tabelle auf dem Server und die Konfiguration deiner Interface's
 
Die Routingtabelle steht oben, etwas weiter unten die interface konfiguration :)

Wenn was fehlen sollte sag bescheid


Auszug TCPDump für eth0:

Code:
12:30:43.887220 IP 10.8.0.6 > fritz.box.dmopp.lan: ICMP echo request, id 5679, seq 1, length 64
12:30:44.895881 IP 10.8.0.6 > fritz.box.dmopp.lan: ICMP echo request, id 5679, seq 2, length 64
12:30:45.903961 IP 10.8.0.6 > fritz.box.dmopp.lan: ICMP echo request, id 5679, seq 3, length 64

Client weis wohin er muss. Daran liegt es nicht :(


Okay es geht... Grund war nen einfaches fehlendes Maskieren der Pakete

Kopf->Tisch :x
 
Zuletzt bearbeitet:
Japs, Try and Error.... :>
 
Zurück
Oben