[Serveur DHCP] avec différents sous-réseaux

Fermé
Patrick - 6 juin 2005 à 22:26
 chs - 13 mai 2013 à 18:17
Bonjour, voici ma question, je dois installé un serveur DHCP sous linux qui va partager ma connexion internet haute vitesse par cable à deux réseaux locaux, mais deux réseaux, un pour l'administration, l'autre pour le grand public, devront avoir des adresses ip de classes différentes. Exemples : l'admin : 192.168.1.x et le public 192.168.10..x. Les deux réseaux ne doivent pas se voir, et je dois avoir internet sur mes deux réseaux locaux. Est-ce quelqu'un a une idée pour m'aider !!! Merci !

5 réponses

kmf31 Messages postés 1564 Date d'inscription mercredi 30 mars 2005 Statut Contributeur Dernière intervention 22 juin 2007 501
6 juin 2005 à 22:53
Quel est le probleme ?

Ca me parrait assez claire:


1) tu dois avoir 2 deux cartes reseaux en plus de la connexion internet (donc 3 cartes en total si internet passe aussi par une carte reseau).
carte 1 => internet (avec la passerelle par defaut!!)
carte 2 => Num. IP 192.168.1.1, masque 255.255.255.0 et PAS de passerelle
carte 3 => Num. IP 192.168.10.1, masque 255.255.255.0 et PAS de passerelle

cartes 2 et 3 sont relies a deux swichs pour les deux sous-reseaux ou il faut mettre soit 192.168.1.1 (reseau 1) ou soit 192.168.10.1 (reseau 2) comme passerelle par defaut.

Peut-etre il y a aussi autres facons de faire, mais ca me parait le plus simple.


2) Il faut activer le NAT avec le bon script iptables:
http://www.commentcamarche.net/forum/affich-1138827-partage-de-connection#1


3) Pour le serveur DHCP il faut prevoir un ficher "dhcpd.conf" (dans /etc/... ou ailleur selon ton systeme) comme:


## ici pour dhcpd version 3 il faut mettre l'une ou l'autre ligne:
ddns-update-style ad-hoc;
##ddns-update-style none;

subnet 192.168.1.0 netmask 255.255.255.0 {
### --- default gateway
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;

option domain-name "domain1.fr";
option domain-name-servers xx.xx.xx.xx, yy.yy.yy.yy;

# A range of hosts from .2 to .30 are dynamically allocated:
range dynamic-bootp 192.168.1.2 192.168.1.30;

default-lease-time 302400;
max-lease-time 604800;
}

subnet 192.168.10.0 netmask 255.255.255.0 {
### --- default gateway
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.10.255;
option routers 192.168.10.1;

option domain-name "domain2.fr";
option domain-name-servers xx.xx.xx.xx, yy.yy.yy.yy;

# A range of hosts from .2 to .30 are dynamically allocated:
range dynamic-bootp 192.168.10.2 192.168.10.30;

default-lease-time 302400;
max-lease-time 604800;
}


ici xx.xx.xx.xx et yy.yy.yy.yy sont deux serveurs DNS pour ta connexion internet. Apart ca il y a pleins de parametres que tu pourras modifier, comme les noms des domains, les numeros IP pour le dhcp. Ici j'ai propose entre 2 et 30 pour le dernier chiffre, mais toi tu mets ce que tu veux, jusqu'qu max de 254 (mais pas 255 !!).
Apres pour les ...-lease-times tu mets aussi ce que tu veux (c'est en unite de secondes).

Il y a encore pleines d'options qu'on peut mettre. Regarde "man dhcpd" et "man dhcpd.conf" pour plus de details.

-------
Je crois si tu fais comme ca les deux sous-reseau ne se voient pas mais je ne suis pas 100% sur pour ca.
5
pblinux Messages postés 3 Date d'inscription lundi 6 juin 2005 Statut Membre Dernière intervention 21 juin 2005
7 juin 2005 à 14:56
Je te remercie kmf31, la logique est bonne ! j'avais déja installé mais trois cartes réseaux, mes deux cartes réseaux internes sont identifiés et ma carte réseau pour internet elle aussi. mon routage devrait être bon, mias là où je bloque c'est que dans le serveur DHCP sous Webmin. On me dit que seulement UNE carte réseau peut écouter à l'interne pour les clients ? Est-ce que j'ignore cette remarque ou cette option et en suivant ton fichier dhcp.conf, ca va fonctionner sans problème ? Les deux réseaux ne doivent pas ce voir car le réseau administratif (comptabilité) ne doit pas être vu par le réseau pour les clients internes. Je te remercie à l'avance pour ta réponse et ton aide si précieuse !!!
0
kmf31 Messages postés 1564 Date d'inscription mercredi 30 mars 2005 Statut Contributeur Dernière intervention 22 juin 2007 501
7 juin 2005 à 16:48
Pour l'exemple de dhcpd.conf que j'ai donne je n'ai pas fait de test car je n'ai pas une telle configuration mais je crois ca devrait marcher et il devrait automatiquement ecouter pour le reseau 1 sur la bonne carte et pour l'autre reseau sur l'autre carte.
Il est possible que le truc "Webadmin" ne tient pas compte des configs un peu hors de commun comme celle la. Il te faudra directement essayer avec le fichier dhcpd.conf sans passer par le "Webdamin". Souvent les outils graphiques comme DrakConf en Mandrake etc. font bien les choses standards comme partage de connexion pour un sous-reseau etc. mais ne marchent plus pour de choses compliquees qui sortent des cas standards. Dans ce cas les methodes manuelles et plus compliques (fichiers de config, scripts avec iptables) marchent toujours.

A part ca, la question si les deux sous-reseau se voient ou ne se voient pas est independante de DHCP qui ne fait qu'attribuer les numeros IPs.
Notamment tu peux tres bien attribuer de numero IPs fixes sur tes pcs des sous-reseaux (en respectant les bonnes plages, la bonne masque, la bonne passerelle et aussi les DNS pour internet) de facon manuelle sans utilisation de DHCP. Le DHCP ne sert qu'a rendre la config reseau sur les clients plus facile et automatique mais ca ne touche pas directement le fonctionnement du sous-reseau!
Apres tu peux tester par exemple sur un client du reseau1 avec lui meme comme IP=192.168.1.xx un ping vers un autre num. IP 192.168.10.xx qui existe. Je ne suis pas sur mais il est possible que le NAT traduit ca et le fait passer contrairement a ce que tu souhaites.
Meme si ca arrive tu peux definir de regles "iptables" avec la chaine FORWARD pour bloquer ca (a ajouter dans le script firewall au bon endroit).
par exemple tu peux mettre un truc comme:
/sbin/iptables -A FORWARD -i eth1 -o eth2 -j DROP
/sbin/iptables -A FORWARD -i eth2 -o eth1 -j DROP

en supposant que eth1 et eth2 font les reseau internes. Apres pour l'internet (supposons c'est: eth0) la il faut avoir d'autre regles plus subtiles, je dirais:
/sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
/sbin/iptables -A FORWARD -i eth2 -o eth0 -j ACCEPT
/sbin/iptables -A FORWARD -i eth0 -o eth1  -m state --state ESTABLISHED,RELATED  -j ACCEPT
/sbin/iptables -A FORWARD -i eth0 -o eth2  -m state --state ESTABLISHED,RELATED  -j ACCEPT


Avec ca on fait:
carte 1 => carte 2 : bloque
carte 2 => carte 1 : bloque
carte 1,2 => carte 0 (internet) : toujours ouvert
carte 0 => carte 1,2 : bloque pour de paquets non-sollicites et ouvert pour de paquets sollicites (les reponses a tes propres requetes reseaux)

Le dernier truc correpond aux firewalls standards pour filtrer la direction entrant.
Peut-etre tu devrais aussi ajouter de regles pour ouvrir les trucs directe : carte 1 => carte 1 ou carte 2 => carte 2 (a l'interieur des sous-reseaux). Mais peut-etre avec un switch ce n'est pas necessaire car ca ne passe pas forcement par le pc routeur ?

Dans les regles iptables ci-dessus on peut encore ajouter d'options pour preciser les plages d'adresses IP concerners (pour la source avec "-s ..." ou la destination avec "-d ...") afin de rendre ca encore plus precise. Mais les versions simples ci-dessus devrait bien fonctionner.

Il me parrait evident que ce genre de config depasse largement les capacites des menus de DrakConf ou similiaire. Il faut faire soi meme son propre script iptables ou au moins l'adapter a la main.
3
pblinux Messages postés 3 Date d'inscription lundi 6 juin 2005 Statut Membre Dernière intervention 21 juin 2005
8 juin 2005 à 15:04
Je te remercie beaucoup pour les infos...à date ca fonctionne pour le dhcp, les stations obtiennet leurs ip et je suis capable de pinger à partir de mes stations ma première carte réseau (eth0) par l'intermédiaire de eth1 ou eth2. Mon problème est celui-ci: Pas capable de sortir sur internet. Mon serveur en mode graphique est capable d'aller sur internet sans problème ! j'ai adapté tes directives au niveau de iptables selon ma config et tout semble ok. ma première carte eth0 est 192.168.0.90, eth1 est 192.168.1.1 et eth2 est 192.168.50.1. ma eth0 a cet ip parce j'ai un router en tête de ligne qui sépare mon FAI et mon serveur linux...je ne crois pas que c'est lui mon problème car mon serveur est capable d'aller sur internet en mode graphique. As-tu une idée pour m'aider ? Merci !
0
Pourquoi il y a autant de boulets sur cette planète ?
3
Grunt Messages postés 2773 Date d'inscription jeudi 17 janvier 2008 Statut Contributeur Dernière intervention 3 avril 2009 301
6 mai 2008 à 13:59
C'est héréditaire, il l'a dit lui-même.
0
Il n'y a pas "autant de boulets" c'est juste que tout le monde ne vit pas devant son pc toute la journée. Merci du tuyau en tout cas kmf.
0
Grunt Messages postés 2773 Date d'inscription jeudi 17 janvier 2008 Statut Contributeur Dernière intervention 3 avril 2009 301
6 mai 2008 à 14:18
Fais des essais avec traceroute, pour voir où ça bloque.
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
voila mon problème mon père ma acheté mon samsung U700 en italie mais je suis sur orange et je n'arrive pas à aller sur internet quand je veux y aller il me dit que le service n'est pas disponible merci de m'aider c'est urgent !!!!!!
-3