logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
utilisateurs:hypathie:tutos:reseau-local-routeur-bind-dhcp [03/10/2014 19:09]
Hypathie [Installation et configuration DHCP]
utilisateurs:hypathie:tutos:reseau-local-routeur-bind-dhcp [07/10/2014 11:42] (Version actuelle)
Hypathie [Mise en place d'un routeur Debian]
Ligne 11: Ligne 11:
  
 <​code>​ <​code>​
-BOX_adsl ​(=mode routeur + DHCP activés) ​<---> (ip:192.168.0.1=eth0) _ROUTEUR-DEBIAN_(eth1=ip: 192.168.1.1) ​<---(ip: 192.168.1.3=eth0)_CLIENT1+BOX_adsl <---> (192.168.0.1:eth0) _ROUTEUR-DEBIAN_(eth1:​192.168.1.1) 
 + ​| ​                                   | 
 +sous-réseau A                     sous-réseau B 
 + ​| ​                                   | 
 + ​|_CLIENT-A1 (eth0:​192.168.0.10) ​     |_CLIENT-B1 (eth0:​192.168.1.3
 + ​|_CLIENT-AX (eth0:​192.168.0.xx) ​     |_CLIENT-BX (eth0:​192.168.1.x)
 </​code>​ </​code>​
  
-====Côté ​passerelle debian==== ​+On pourra faire communiquer les clients du sous-réseau A avec ceux du sous-réseau B.\\  
 +Donner un accès à internet aux clients au sous-réseau B.\\  
 +Maîtriser les connexions internet des clients du réseau B. Par exemple en vue du contrôle parentale pour ce qui concerne le temps de connexion des clients.\\  
 +Mettre en place le proxy squid, afin d'​exclure les sites dangereux pour les enfants.\\ ​ Mais aussi se servir de squid pour faire du cache, afin d'​améliorer le débit des vidéos de kirbi...  
 + 
 +Mais encore apprendre à utiliser iptables et la mise en place d'un pare-feu pour le réseau B (tests sur la connexion entre le réseau A et B) sans prendre trop de risque puisque on restera derrière le pare-feu du routeur de la box-adsl.  
 + 
 +====Installation de la passerelle debian==== 
 +Cela fait d'un ordinateur un routeur.
  
 <code root>vim /​etc/​network/​interfaces </​code>​ <code root>vim /​etc/​network/​interfaces </​code>​
Ligne 47: Ligne 60:
 <code root>​sysctl -p</​code>​ <code root>​sysctl -p</​code>​
  
-===Mise en place du protocole NAT sur eth1===+===Mise en place du protocole NAT sur eth0=== 
 +C'​est-à-dire l'​interface tournée vers la box-machin, c'​est-à-dire vers web.
  
 <code root>​iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</​code>​ <code root>​iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</​code>​
Ligne 59: Ligne 73:
 <​code>​post-up iptables-restore < /​etc/​iptables.save</​code>​ <​code>​post-up iptables-restore < /​etc/​iptables.save</​code>​
  
-====Côté client====+===Côté client===
 <code root>vim /​etc/​network/​interfaces</​code>​ <code root>vim /​etc/​network/​interfaces</​code>​
  
Ligne 86: Ligne 100:
 <code root>/​etc/​init.d/​networking start</​code>​ <code root>/​etc/​init.d/​networking start</​code>​
  
-Et là ça marche !+Et là ça marche !\\  
 + 
 +Il faut maintenant installer un pare-feu sur le routeur debian. 
 + 
 +=====Maîtriser le sous-réseau avec iptables===== 
 + 
 +=====Maîtriser le sous-réseau avec squid=====
  
 =====Installation et configuration DHCP ===== =====Installation et configuration DHCP =====
-> Remarque Bind9 étant installé sur l'IP eth0 du système, l'ip du routeur et donc la même que celle du DNS. Le DNS fait office de DNS pour lui-même puisqu'on a ajouté ​dans /​etc/​resolv.conf la ligne **''​nameserver 127.0.0.1''​**.+Pour en savoir un peu plus sur le fonctionnement du protocole DHCP : [[http://​www.frameip.com/​dhcp/​]] 
 + 
 +> Remarque Bind9 étant installé sur l'IP eth0 du système ​qui fait office de routeur et sur lequel il va être installé isc-dhcp-server sur eth1, il n'est pas sans intérêt d'ajouter ​dans le fichier ​/​etc/​resolv.conf la ligne **''​nameserver 127.0.0.1''​**, afin que le DNS fasse office de DNS pour ce système lui-même.
  
  
Ligne 97: Ligne 119:
 <​code>​dns-nameservers ip-du-routeur</​code>​ <​code>​dns-nameservers ip-du-routeur</​code>​
  
-====Installation ====+====Installation====
  
 <code root>​apt-get install isc-dhcp-server</​code>​ <code root>​apt-get install isc-dhcp-server</​code>​
Ligne 183: Ligne 205:
 iface lo inet loopback</​code>​ iface lo inet loopback</​code>​
  
-  * On redémarre le système ​: +  * On redémarre le système  
-Après redémarrage ​:+Après ​le redémarrage...
  
 <code root>​ifconfig | grep 192</​code>​ <code root>​ifconfig | grep 192</​code>​
Ligne 194: Ligne 216:
 Donc tout fonctionne ! Donc tout fonctionne !
  
-Il faut maintenant apprendre à affiner la configuration d'un serveur DHCP. +=====Détail de la configuration ​de /​etc/​dhcpd/​hcpd.conf=====
- +
-====Détail de la configuration====+
 <code root>ls /​etc/​dhcp/</​code>​ <code root>ls /​etc/​dhcp/</​code>​
 <​code>​dhclient.conf dhclient-exit-hooks.d <​code>​dhclient.conf dhclient-exit-hooks.d
Ligne 202: Ligne 222:
 </​code>​ </​code>​
  
-Le principale de la configuration se fait par le fichier /​etc/​dhcp/​dhcpd.conf+**Le principale de la configuration se fait par le fichier /​etc/​dhcp/​dhcpd.conf**
  
 Voir [[http://​www.delafond.org/​traducmanfr/​man/​man5/​dhcpd.conf.5.html]] Voir [[http://​www.delafond.org/​traducmanfr/​man/​man5/​dhcpd.conf.5.html]]
  
-Il est composé de plusieurs sections, chacune limitée par des accolades { et } : 
  
 +Il est composé de plusieurs sections, constituée de directives.
 +Une directive a pour syntaxe soit :\\ 
 +des lignes : ''​clé''​ + ''​valeur''​ + '';''​\\ ​
 +des directives : ''​directive;''​\\ ​
 +des directives avec accolades.\\ ​
 +
 +Ces directives organisée en sections :
     - des paramètres globaux qui s'​appliquent à tout le fichier,     - des paramètres globaux qui s'​appliquent à tout le fichier,
     - shared-network,​     - shared-network,​
Ligne 368: Ligne 394:
 </​code>​ </​code>​
  
 +  * **client BOOTP** :
 +À savoir : Bootstrap Protocol (BOOTP) est un protocole réseau d'​amorçage,​ qui permet à une machine cliente sans disque dur de découvrir sa propre adresse IP, l'​adresse d'un hôte serveur, et le nom d'un fichier à charger en mémoire pour exécution. Le serveur isc-dhcp-server prend en charge le BOOTP.\\ ​
  
 +Exemple de configuration :
 +<​code>​host nom-du-client {
 +  filename "/​tftpboot.img";​
 +  server-name "​nom-serveur";​
 +  next-server nom-serveur;​
 +  hardware ethernet adresse_MAC_du_client;​
 +  fixed-address une_IP;
 +}</​code>​
 +> où ''​nom-serveur''​ à la fonction de serveur DHCP, serveur TFTP et passerelle réseau
 +Il faut avoir installer un serveur TFTP : Voir [[http://​www.debianhelp.co.uk/​tftp.htm|Install tftp server in Debian]]
 +> où ''/​tftpboot.img''​ est le nom du fichier extrait par TFTP : voir [[https://​www.debian.org/​releases/​wheezy/​i386/​ch04s05.html.fr#​tftp-images|mettre en place des images TFTP]] ​
  
 +<note tip>
 +Pour une installation par le réseau avec tftp-hpa voir : [[http://​www.cyberciti.biz/​faq/​install-configure-tftp-server-ubuntu-debian-howto/​]] ​
 +</​note>​
  
 +Pour explication détaillée du fonctionnement du BOOTP ainsi que sur l'​amorçage depuis le réseau avec TFTP voir ici : [[https://​www.debian.org/​releases/​wheezy/​i386/​ch04s05.html.fr|Préparer les fichiers pour amorcer depuis le réseau avec TFTP]]
  
 +====La maintenance /​var/​lib/​dhcp/​dhcpd.leases ====
 +Le fichier /​var/​lib/​dhcp/​dhcpd.leases permet d'​accéder à une base de donnée persistante des baux attribués.
  
 +<code root>ls /​var/​lib/​dhcp/</​code>​
 +<​code>​dhclient.br0.leases
 +dhclient.leases
 +dhclient-d3b7604e-6f32-4904-8fcd-b98398026559-eth0.lease
 +dhcpd.leases
 +dhcpd.leases~
 +dhclient-d3b7604e-6f32-4904-8fcd-b98398026559-eth1.lease  ​
 +dhclient.eth0.leases</​code>​
 +
 +Le fichier ''​dhcpd.leases''​ contient les baux persistants.\\ ​
 +
 +Le fichier ''​dhcpd.leases~''​ est un fichier de sauvegarde des anciens baux.\\ ​
 +
 +  * Quand il y a des problèmes avec les baux, on fait :
 +<code root>mv dhcpd.leases~ dhcpd.leases</​code>​
 +
 +Puis on redémarre : ''/​etc/​init.d/​isc-dhcp-server restart''​\\ ​
 +
 +Pour plus de détail : [[http://​www.delafond.org/​traducmanfr/​man/​man5/​dhcpd.leases.5.html|man dhcpd.leases]]
 +
 +
 +<​note>​
 +Quand le serveur dhcp est mis en place, pour effectuer des tests depuis le client :
 +
 +  * On pourra supprimer le bail du client (donné par une première configuration du serveur DHCP) :
 +<code root>​dhclient -r eth0</​code>​
 +
 +Avec **''​ip a s''​** ou **''​ifconfig''​** on voit que le client n'a plus d'IP attribuée.
 +
 +  * Puis pour le client dépourvu d'IP fasse une requête d'IP au serveur DHCP :
 +(ne pas oublier quand on modifie la configuration du serveur DHCP de le recharger avec la commande **''/​etc/​init.d/​isc-dhcp-server restart''​** ) :
 +
 +<code root>​dhclient eth0</​code>​
 +
 +__À propos de dhclient__ ;\\ [[http://​manpages.debian.org/​cgi-bin/​man.cgi?​sektion=8&​query=dhclient&​apropos=0&​manpath=sid&​locale=en|le man dhclient]] ;\\ [[https://​wiki.debian.org/​fr/​DHCP_Client|la configuration de dhclient]]
 +</​note>​
 +
 +====Agent relais DHCP====
 +On veut maintenant mettre en place un sous-réseau supplémentaire sans ajouter une carte ethernet à notre routeur-passerelle-debian !
 +
 +Mais les trames ARP et BOOTP ne traversent pas les routeurs.\\ ​
 +Il faudrait donc plusieurs serveurs DHCP, un pour chaque segment (chaque sous-réseau).\\
 +Si on veut mettre en place plusieurs segments mais qu'on ne dispose que d'un seul serveur, il faut mettre en place sur chaque segment un relais DHCP.\\ ​
 +
 +Ce relais va transformer les requêtes multicast en unicast et il sera installé sur le client X. Ce client X du sous-réseau B va devoir répondre aux requêtes DHCP à la place du serveur DHCP installer sur la passerelle. Cet ordinateur X recevra des requêtes broadcast mais ne sait pas y répondre qu'on n'a pas installer et configuré un agent de relais. Cet agent lui permettra de savoir vers quel serveur DHCP envoyer la requête en unicast.\\ ​
 +
 +Pour un exemple concret voir : [[http://​www.premont.fr/​tutos/​dhcp_relais.pdf]]
 +
 +**Avec Linux on a un agent dhcprelay nommé isc-dhcp-relay**.
 +<code root>​apt-get install isc-dhcp-relay</​code>​
 +
 +===Configuration du relais DHCP===
 +Elle se fait dans le fichier /​etc/​default/​isc-dhcp-relay
 +  * Configuration basique :
 +<​code>​
 +#adresse du vrai serveur dhcp
 +SERVER="​192.168.1.1"​
 +
 +#interface utilisée par le relais DHCP
 +INTERFACE="​eth0"​
 +</​code>​
 ===== Installation ===== ===== Installation =====
  
utilisateurs/hypathie/tutos/reseau-local-routeur-bind-dhcp.1412356145.txt.gz · Dernière modification: 03/10/2014 19:09 (modification externe)

Pied de page des forums

Propulsé par FluxBB