OpenVPN problème de routage :help:

Fil fermé
Partager Rechercher
Coucou ici, bon j'essaye de faire un truc qui ne marche pas, ça doit sûrement venir d'un problème de routage si une personne pouvait me dire ce qui ne va pas :/
J'explique en qq lignes :
J'ai installé OpenVPN sur un serveur Debian, ce serveur est derrière un routeur ( une box ).
J'utilise un client sous Windows XP, ce client est derrière un autre routeur ( une box ).
Donc j'arrive à me connecter avec le client XP sur le serveur Debian au travers d'une carte virtuelle tun, et je peux pinger 10.8.0.1 ( serveur Debian ) du client XP.
Mais par contre je ne peux pas aller sur google par exemple, et quand j'essaye de pinger google.fr du serveur en faisant ping google.fr -I tun0 ça ne marche pas non plus.
J'en conclu donc que c'est un problème de routage coté serveur.

Voici les deux tables de routages :
Client XP :
Code:
   1. ===========================================================================
   2. Itinéraires actifs :
   3. Destination réseau    Masque réseau  Adr. passerelle   Adr. interface Métriq
   4.           0.0.0.0          0.0.0.0      192.168.0.1     192.168.0.4       20
   5.          10.8.0.1  255.255.255.255         10.8.0.5        10.8.0.6       1
   6.          10.8.0.4  255.255.255.252         10.8.0.6        10.8.0.6       30
   7.          10.8.0.6  255.255.255.255        127.0.0.1       127.0.0.1       30
   8.    10.255.255.255  255.255.255.255         10.8.0.6        10.8.0.6       30
   9.         127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
  10.       169.254.0.0      255.255.0.0      192.168.0.4     192.168.0.4       1
  11.       192.168.0.0    255.255.255.0      192.168.0.4     192.168.0.4       20
  12.       192.168.0.0    255.255.255.0         10.8.0.5        10.8.0.6       1
  13.       192.168.0.4  255.255.255.255        127.0.0.1       127.0.0.1       20
  14.     192.168.0.255  255.255.255.255      192.168.0.4     192.168.0.4       20
  15.         224.0.0.0        240.0.0.0         10.8.0.6        10.8.0.6       30
  16.         224.0.0.0        240.0.0.0      192.168.0.4     192.168.0.4       20
  17.   255.255.255.255  255.255.255.255         10.8.0.6        10.8.0.6       1
  18.   255.255.255.255  255.255.255.255      192.168.0.4     192.168.0.4       1
  19. Passerelle par défaut :       192.168.0.1
  20. ===========================================================================
Serveur Debian :
Code:
   1. root@Debian:~# route
   2. Table de routage IP du noyau
   3. Destination     Passerelle      Genmask         Indic Metric Ref    Use Iface
   4. 10.8.0.2        *               255.255.255.255 UH    0      0        0 tun0
   5. 10.8.0.0        10.8.0.2        255.255.255.0   UG    0      0        0 tun0
   6. 192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
   7. default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
   8. root@Debian:~#
Donc si qqn pouvait m'expliquer le problème avec le routage
Merci beaucoup !
ces lignes la me semble bizarres :

Code:
3. Destination réseau    Masque réseau  Adr. passerelle   Adr. interface Métriq

11.       192.168.0.0    255.255.255.0      192.168.0.4     192.168.0.4       20
12.       192.168.0.0    255.255.255.0         10.8.0.5        10.8.0.6        1
Quels sont les adressages de tes deux LAN ? ( coté serveur, coté client )
Et tu as un réseau virtuel supplémentaire en 10.8.0.X c'est bien ca ?
Citation :
Publié par Wes Barfog
ces lignes la me semble bizarres :

Code:
3. Destination réseau    Masque réseau  Adr. passerelle   Adr. interface Métriq

11.       192.168.0.0    255.255.255.0      192.168.0.4     192.168.0.4       20
12.       192.168.0.0    255.255.255.0         10.8.0.5        10.8.0.6        1
Est ce que tu arrives a ping les machines du réseau local, coté client ? ( genre le routeur en 192.168.0.1 )
Ben le problème c'est que des deux cotés ( client & serveur ) les box sont en 192.168.0.1 ;x
Et sur windows on ne peut pas spécifier l'interface sur quoi pinger :/
Donc du coup je ping 192.168.0.1 et ça fait <1ms donc je ping la box du client XP.

Je pense qu'il y a un problème du coté du serveur debian soit sur le fichier de config soit sur le routage mais j'aimerai bien que qqn qui connaisse OpenVPN sur GNU/linux m'explique :/
D'après moi si tout fonctionnait bien je pourrai par exemple ping google du coté serveur en utilisant l'interface tun0 ?
Pas sur que tu puisses pinger internet depuis le serveur en passant par l'interface tun0 ... Je dis ptet une connerie, mais le paquet va arriver sur ton client, qui n'est pas routeur, et qui va pas forward a la passerelle coté client
Je vais vous montrer le fichier de config que j'utilise sur le serveur :
Code:
proto udp

dev tun

ca /etc/openvpn/ca.crt
cert /etc/openvpn/LeServeurVPN.crt
key /etc/openvpn/LeServeurVPN.key  
dh /etc/openvpn/dh1024.pem

server 10.8.0.0 255.255.255.0

push "dhcp-option DNS 192.168.0.1"

push "dhcp-option WINS 192.168.0.1"

keepalive 10 120

comp-lzo

persist-key
persist-tun

status openvpn-status.log


verb 1
En gros je peux pinger le serveur sur 10.8.0.1 mais après j'ai l'impression que c'est pas routé vers la passerelle du serveur. Il doit manquer qq chose dans le fichier de config du serveur. Il y a aussi le fait que je n'ai pas de passerelle sur le client XP, c'est normal ?
Code:
Suffixe DNS propre à la connexion :
Description . . . . . . . . . . . : TAP-Win32 Adapter V8
Adresse physique . . . . . . . . .: 00-FF-EF-2D-66-1A
DHCP activé. . . . . . . . . . . : Oui
Configuration automatique activée . . . . : Oui
Adresse IP. . . . . . . . .*. . . : 10.8.0.6
Masque de sous-réseau . . .*. . . : 255.255.255.252
Passerelle par défaut . . .*. . . :
Serveur DHCP. . . . . . . . . . . : 10.8.0.5
Serveurs DNS . . . . . . . . . .  : 192.168.0.1
Serveur WINS principal. . . . . .*: 192.168.0.1
Bail obtenu . . . . . . . .*. . . : dimanche 1 mars 2009 01:07:44
Bail expirant . . . . . . .*. . . : lundi 1 mars 2010 01:07:44
Je comprends pas ce que tu dis.

Ton Tunnel, il est pas là pour ça, et il a pas à faire ce que tu dis. Si tu veux aller sur google depuis ton PC sous XP au travers du Tunnel, alors il faut que tu ajoute quelque chose sur le debian, un proxy par exemple.
OpenVPN je connais bien, je doit pouvoir t'aider. Par contre je crois que tu n'as pas bien compris le principe du routage dans les VPN.

De base, OpenVPN fonctionne en mode Split-tunneling (dans le jargon Cisco). C'est à dire que il envoie toutes ses requêtes vers l'internet normalement. Cas particulier pour les subnet IP d'OpenVPN qui sont encapsulés dans le tunnel (typiquement ton 10.8.0.0/24). D'après ce que j'ai compris, tu souhaites que tout le trafic de ton client remonte jusqu'au serveur OpenVPN pour rebondir vers l'internet : c'est faisable, même si ça n'a pas grand interêt puisque tu vas alors bouffer de la bande passante inutilement. Si tu veux vraiment le faire tu dois ajouter coté serveur : push "redirect-gateway". Mais honnêtement je ne le conseil pas.

En tout cas ça ne peut pas fonctionner si tu as les 2 mêmes subnet IP de chaque coté du VPN (ou alors il rajouter une couche de NAT, mais ça n'a pas grand intérêt de faire du NAT sur du NAT). Pas le choix il faut que tu changes le subnet IP d'une des 2 box. Genre un LAN en 192.168.0.0/24 et l'autre en 192.168.1.0/24

Ensuite si tu veux que le client puisse communiquer avec les réseux situés derrière le serveur OpenVPN il faut que tu envoies les routes au client. Imaginons ton serveur OpenVPN sur le LAN 192.168.0.0/24 et le client sur le LAN 192.168.1.0/24. Alors il faut ajouter coté serveur : push "route 192.168.0.0 255.255.255.0". Le client verra alors dans sa table de routage le 192.168.0.0/24 via le 10.8.0.1 (=OpenVPN sera la gateway pour joindre le réseau 192.168.0.0/24). Forcément ça ne peut pas fonctioner avec ta config puisque ce fameux réseau 192.168.0.0/24 est directement connecté sur la carte Ethernet du client, donc il ne passe pas par le tunnel. De plus il ne faut pas oublier la route retour. Les machines du LAN 192.168.0.0/24 n'ont pas de vision du réseau 192.168.1.0/24 situé en de l'autre coté du VPN il faut donc ajouter la route à la main sur les stations ou sur le routeur.
Sisi mais j'avais compris tout ça sauf que j'ai enelvé le push blabla .... pour faire des tests.
Je comprends bien que le but d'un VPN c'est de créer un réseau à travers le net, sauf que dans mon cas il me sert juste à forwarder les requêtes par le serveur pour aller sur internet.
Si je fais ça c'est parce que un FAI chinois pour je ne sais quelle raison bloque l'accès à certains site ou ferme certains ports.
Je vais tester ce que tu m'as dit Fady mais je l'avais déjà fait, y'a surement un problème avc le NAT.

( si je fais ça avec un vpn c'est qu'un proxy peut forwarder que du HTTP/HTTPS/FTP )
Citation :
Publié par Eno
Sisi mais j'avais compris tout ça sauf que j'ai enelvé le push blabla .... pour faire des tests.
Je comprends bien que le but d'un VPN c'est de créer un réseau à travers le net, sauf que dans mon cas il me sert juste à forwarder les requêtes par le serveur pour aller sur internet.
Si je fais ça c'est parce que un FAI chinois pour je ne sais quelle raison bloque l'accès à certains site ou ferme certains ports.
Je vais tester ce que tu m'as dit Fady mais je l'avais déjà fait, y'a surement un problème avc le NAT.
Vu ton fichier de conf et ton plan d'adressage IP :
- Tant que les 2 LAN sont avec le même réseau IP : ça ne fonctionnera pas.
- Tant que tu n'auras pas fait le routage nécessaire pour router le requêtes du client vers ton LAN où se trouve ton serveur DNS, sans oublier la route retour sur le serveur DNS pour qu'il puisse répondre au client : ça ne fonctionnera pas pas.

PS: si les ports sont bloqués alors fait bien ton serveur OpenVPN sur le port 80 ou 443.
Citation :
Publié par Fady
Vu ton fichier de conf et ton plan d'adressage IP :
- Tant que les 2 LAN sont avec le même réseau IP : ça ne fonctionnera pas.
- Tant que tu n'auras pas fait le routage nécessaire pour router le requêtes du client vers ton LAN où se trouve ton serveur DNS, sans oublier la route retour sur le serveur DNS pour qu'il puisse répondre au client : ça ne fonctionnera pas pas.

PS: si les ports sont bloqués alors fait bien ton serveur OpenVPN sur le port 80 ou 443.
Pour le routage c'est une route à mettre en dur dans la table de routage ou alors un simple truc comme ça dans le server.conf : pourrait fonctionner ?
Code:
push "dhcp-option DNS 192.168.0.1"
push "route 192.168.0.0 255.255.255.0"
Ouaip c'est ça. Il faut également ajouter la route retour vers le VPN sur le serveur DNS lui même. Un truc du genre :
Dest 10.8.0.0/24 via @IPSrvOpenVPN

Sous Windows ça donne :
Code:
route add 10.8.0.0 mask 255.255.255.0 @IPSrvOpenVPN
Comme ça le serveur DNS enverra bien ses requêtes vers le 10.8.0.0/24 au serveur OpenVPN et pas à sa passerelle par défaut

PS: Sans oublier le push "redirect-gateway" pour forcer tout le trafic à passer par le tunnel.

PS2 : Il faudra que tu fasse du NAT sur ta Debian : du 10.8.0.0/24 vers le subnet de ton LAN sinon ta livebox sera complètement perdu et ne saura pas router le paquet.
Citation :
Publié par Eno
En fait le serveur DNS c'est mon routeur netgear
Il faut que tu ajoutes une route statique sur ton routeur netgear : Network 10.8.0.0 255.255.255.0 via @IPSrvOpenVPN
Tu dois pouvoir faire ça depuis l'interface web du routeur.

Ca permettra au netgear de savoir où envoyer les requêtes pour le 10.8.0.0/24 (vers le serveur OpenVPN). Sinon il envoi ça à sa route par défaut qui doit être la connexion ADSL derrière.
No mais euh....

Le routeur netgaer en question, il a une adresse qui est locale pour le PC sous XP, qui est on routeur local, donc euh, pfffff

De plus le netgear il est AMONT de l'open VPN alors tu fais comment pour communiquer avec, au travers du VPN ?
Ce que je pensais c'est utiliser le serveur Open VPN comme passerelle pour le client, et ensuite faire du routage sur ce serveur là vu qu'il communique directement avec le routeur netgear ( sur l'interface eth0 )
Me faudrait ton msn Fady ou Paice je pense
Citation :
Publié par Eno
Ce que je pensais c'est utiliser le serveur Open VPN comme passerelle pour le client, et ensuite faire du routage sur ce serveur là vu qu'il communique directement avec le routeur netgear ( sur l'interface eth0 )
Me faudrait ton msn Fady ou Paice je pense
Ça serai avec plaisir (tu trouveras mon MSN dans mon profil) mais durant les 15 prochains jours je suis en déplacement, je ne vais donc pas pouvoir être sur MSN. Si ça peut attendre je pourrait te filer un coup de main à mon retour, j'aurai plus de temps pour t'aider un de ces soirs.
Bonjours mon père a bloquer Dofus grâce a netgear (Box).
Je me demandais si c'était possible de le contourner car avant je faisait simplement dofusMod.exe mais la j'ai eu problème j'ai du désinstaller dofus et quand je veux l'installer il y a écrit: Voulez-vous définir vos paramètre réseau je doit faire quoi?

Merci d'avance
Citation :
Publié par dofus68200
Bonjours mon père a bloquer Dofus grâce a netgear (Box).
Je me demandais si c'était possible de le contourner car avant je faisait simplement dofusMod.exe mais la j'ai eu problème j'ai du désinstaller dofus et quand je veux l'installer il y a écrit: Voulez-vous définir vos paramètre réseau je doit faire quoi?

Merci d'avance

Quand je vais sur le site dofus il y a ecrit neatgear Firweal.
Citation :
Publié par dofus68200
Bonjours mon père a bloquer Dofus grâce a netgear (Box).
Il a du faire ça pour une bonne raison, abandonne dofus.
Fil fermé

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés