Forum Linux.général DHCP Relay forwardé sur openvpn

Posté par .
Tags : aucun
1
31
déc.
2008
Bonjour,

j'ai un soucis de réseau avec le dhcp relay !

Dans l'entreprise, nous avons 3 agences. Dans chacune, j'ai placé une machine Debian qui fait office de routeur. Les 2 agences secondaires se connectent à l'agence principale qui a une ip fixe. J'utilise OpenVPN en LAN-TO-LAN avec des interfaces "tun" sur chaque machines. Chauqe agence possède 1 Lan pour les serveurs et 1 lan pour les stations de travail.

Dans chaque agence, il y a 1 serveur qui fait DHCP/DNS. LEs stations de travail étant dans un second LAN, sur chaque machine debian qui sert de routeur, j'ai configuré DHCP3-RELAY pour faire passer les DHCP-REQUEST du lan pc vers le lan serveur. Ca marche très bien.

Je viens d'ajouter un serveur DHCP/DNS de plus dans le site principal. J'ai partagé les ranges d'ip à distribuer entre les 2 DHCP pour le site principal: Une protection simple et efficace en cas de panne.

Ensuite, pour offrir la même sécurité au agences secondaires, plutôt que d'acheter un serveur DNS/DHCP de plus dans chaque agence, j'ai reconfiguré les DHCP3-RELAY des routeurs (debian) des agences secondaires. Et c'est ici que j'ai un petit problème.

Voici ma config de dhcp3-relay en mode debug (-d) :


dhcrelay3 -d -i eth1 -i eth2 -i tun0 192.168.y.1 192.168.x.1 192.168.x.2
Internet Systems Consortium DHCP Relay Agent V3.0.1
Copyright 2004 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
tun0: unknown hardware address type 65534
Listening on LPF/tun0/
Sending on LPF/tun0/
Listening on LPF/eth2/00:50:fc:6c:30:95
Sending on LPF/eth2/00:50:fc:6c:30:95
Listening on LPF/eth1/00:50:ba:f1:b3:b8
Sending on LPF/eth1/00:50:ba:f1:b3:b8
Sending on Socket/fallback


donc j'inclu les les interfaces eth1 et eth2 (obligé pour aller du lan pc au lan server) et en plus l'interface tun0 de mon VPN (pour pouvoir aller du lan pc vers les autres lan distants). Ensuite, je donne d'abord l'ip du DHCP de l'agence : 192.168.y.1. et après je donne les ip des 2 DHCP de l'agence principale : 192.168.x.1 192.168.x.2.

A mon sens ca devrait rouler comme sur des roulettes ! Mais non ça ne fonctionne pas... Si je coupe le serveur DHCP/DNS de l'agence secondaire, et que j'ouvre tcpdump sur tun0 du routeur de cette même agence secondaire, je vois des paquets réponses de 192.168.x.1 192.168.x.2 (les DHCP de l'agence principale) en destination de l'hôte qui demande une adresse sur le LAN de l'agence secondaire.

Hors un tcpdump sur eth1 de ce même routeur ne montre que les paquets DHCP-REQUEST qui proviennent de l'hôte en demande d'adresse ip.

Donc, les réponses des DHCP de l'agence principale sont bloquées au niveau du forward entre tun0 et eth1 OU entre tun0 et le process dhcp3-relay (je ne sais pas si il intervient encore à ce niveau).

Voilà, je ne comprends pas ce qu'il se passe et je solicite votre aide. Au début, je pensais que c'était à cause que tun0 n'a pas d'adresse MAC (le message d'erreur: tun0: unknown hardware address type 65534). Mais contenu du fait que les répoendes des DHCP/DNS arrivent sur tun0, je n'en suis plus si sûr. Par ailleurs j'en tenté de refaire mes vpn en TAP (couche2), mais ça ne convient pas à ma configuration. Je dois garder quelque choes de routable de niveau3.

Je pense qu'il s'agit peut être d'un paramètre de sysctl.conf qu'il faut définir !?!?

Pour info, j'ai bien activé le forward des interfaces et iptables ne bloque pas le forward entre tun0 et eth1. extrait de iptables -L -v -n :

158 16748 ACCEPT all -- tun0 eth1 0.0.0.0/0 0.0.0.0/0
158 17222 ACCEPT all -- eth1 tun0 0.0.0.0/0 0.0.0.0/0

Voilà, ce serait vraiment vraiment sympa de m'aider sur ce coup là car je suis désespéré. Je pense avoir tout essayé, mais j'ai certainement oublié le détail qui ferait que ça marche...


Merci d'avance,

Nico
  • # Heu ...

    Posté par (page perso) . Évalué à 2.

    > Je viens d'ajouter un serveur DHCP/DNS de plus dans le site
    > principal. J'ai partagé les ranges d'ip à distribuer entre les 2 DHCP
    > pour le site principal: Une protection simple et efficace en cas de panne.

    Euh, tu est sûr de ton coup là ? parce que comme je le vois chaque
    machine va recevoir deux réponses dhcp deux ip differentes et passer
    qson temps a changer d'adresse ...

    Pourquoi ne pas utiliser du dhcp failover ?
  • # Vieux problème

    Posté par (page perso) . Évalué à 3.

    Tu as à faire à un vieux problème entre OpenVPN et dhcrelay. Ca fonctionne bien avec *BSD mais pas toujours avec Linux. Je n'en sais pas plus mais je pense que google t'indiquera la solution.

    Juste une remarque: si tes serveurs dhcp sont tout simples, pourquoi ne pas les mettre sur tes routeurs ? Ca ne mange vraiment pas de puissance et tu es à l'abris des pannes du reste. Dans ton architecture, le routeur est le seul point de panne unique, donc mettre les serveur dhcp dessus ne changera rien de ce côté, mais simplifira les choses. En mettant des baux d'une semaine ça te laisse de la marge pour dépanner :-)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.