IPmasquerading
Copyright (c) 1998, Mark Nielsen
Adaptation française de Éric Jacoboni et Pierre Tane
Précédent Suivant Table des Matières
5. IPmasquerading avec Roadrunner ou une seconde carte ethernet
Par Mark Nielsen.
Cet article concerne les systèmes basés sur la Red Hat 5.0. Il est probablement possible d'en faire autant avec les autres distributions Linux. Il est particulièrement adapté à
roadrunner
à Colombus en Ohio. Si vous vivez ailleurs, vous devrez changer tout ce qui touche à « colombus » dans la configuration par quelque chose d'autre. Pour le moment, les seules choses à changer dont je me sois aperçu étaient dans/etc/resolv.conf
mais je crois que cela change à chaque fois que vous lancezrrhdcpcd
.Si vous réussissez à faire ce qui figure ici, vous êtes à deux doigts d'être capable d'installer et de connecter un réseau réel à Internet. Pensez-y, la seule différence entre ce que nous faisons ici et un vrai réseau connecté à l'Internet est que votre intranet local ne dispose pas d'adresses IP valides. Si vous aviez des adresses IP valides et que les adresses de votre passerelle restent les mêmes (cela change à chaque fois que vous vous loggez sur
roadrunner
), alors vous disposeriez d'un réseau réel connecté à l'Internet. Faites-le et vous pourrez vous prévaloir d'une vraie expérience du réseau. Ethernet, le DNS, l'ip forwarding, l'ip masquerading et la configuration d'ethernet sont quelques uns des concepts à maîtriser. Bonne chance!J'aimerais également remercier un tas de personnes de l'Université Ohio State pour leurs suggestions. J'espère les avoir correctement exprimées.
- Références
- Installez d'abord roadrunner sur un ordinateur sous Windows 95 et récupérez les fichiers de configuration. Vous en aurez besoin.
- Méthode rapide, si vous avez deux cartes 3com 3c509 avec irq=10, adresse 300, et irq=11, adresse=310. Si cela marche, passez par toutes les étapes.
- Configurez vos cartes ethernet
- Configurez le DNS sur le serveur. Utilisez mes exemples. Je l'ai fait pour 9 ordinateurs si vous en avez besoin d'autant. Le rpm de DNS doit également être installé. ftp://linux.med.ohio-state.edu/cdrom/RedHat/RPMS/caching-nameserver-1.1-4.noarch.rpm est un serveur de cache DNS qui provient de mon cédérom RedHat 5.0.
- Configurez vos clients
- Compilez le noyau pour l'ip masquerading et le pilote de votre carte ethernet.
- Changez certains fichiers de configuration
- Connectez votre hub, votre passerelle et roadrunner.
- Connectez votre passerelle à Internet avec roadrunner
- Configurez roadrunner en tant que service et faîtes en sorte que la première carte ethernet utilise
rrdhcpcd
.- Démarrez et stoppez le service roadrunner et rrdhcpcd.
- Compléments
- Index de tous les fichiers. Il ne devrait pas y avoir de lignes vides au début des fichiers.
5.1 Références
- ftp://ftp.fammed.ohio-state.edu/pub/rr/ RoadRunner Columbus, Site d'information de OH . Ce qui concerne Roadrunner peut être trouvé ici.
- http://www.ssc.com/linux/LDP/HOWTO/mini/IP-Masquerade-3.html HOWTO -- Compiler le noyau pour le support du IP Masquerade
- http://www.tor.shaw.wave.ca/~ambrose/ Ressources pour Linux concernant l'IP Masquerade
- http://www.indyramp.com/masq/ Site Web sur l'IP Masquerading sous Linux
- NetHome.htmlLe réseau à la maison avec un modem de Mark Nielsen. Cet article est très semblable à celui-ci.
- http://www.vortech.net/rrlinux/linux.htm Page Web d'aide pour RoadRunner . C'est ici que j'ai récupéré mon programme
rrclientd
.- http://www.ssc.com/linux/LDP/HOWTO/DNS-HOWTO.html. Le DNS. Vous n'en aurez presque pas besoin si vous utilisez le fichier /etc/hosts pour vos ordinateurs sous Linux. Sous Windows 95 et d'autres systèmes d'exploitation, vous en aurez besoin.
- http://www.ssc.com/linux/LDP/HOWTO/Ethernet-HOWTO.html Ethernet. Comment configurer et installer vos cartes ethernet.
- http://www.ssc.com/linux/LDP/HOWTO/Firewall-HOWTO.html Firewall. Si vous comptez installer un pare-feu, il est facile de le faire avec ce document.
- http://www.ssc.com/linux/LDP/HOWTO/NET-3-HOWTO.htmlNetworking-3. Comment se débrouiller avec un réseau.
- http://www.ssc.com/linux/LDP/HOWTO/BootPrompt-HOWTO.html Bootprompt. Comment modifier ce que fait le noyau au moment du boot.
- http://www.ssc.com/linux/LDP/HOWTO/Kernel-HOWTO.html Le noyau Linux.
- http://www.ssc.com/linux/LDP/HOWTO/mini/DHCPcd.html mini howto DHCPcd. Je trouve ce document utile pour répondre à certaines questions que l'on se pose.
5.2 Méthode rapide
Cette courte section ne marche que si vous réussisez à faire en sorte que vos deux cartes ethernet soient détectées avec des modules. cela ne sera probablement pas le cas pour la plupart des personnes.
Cela ne fonctionnera probablement pas avec les Red Hat 5.0. Vous ne devez pas vous écarter des étapes mentionnées c-dessous. Pour une raison inconnue, l'installation de la redhat détectait correctement les deux cartes ethernet et le noyau comportait le support de l'ip forwarding. Il suffit juste de l'autoriser. Ainsi, installer un réseau consiste simplement à copier un certain nombre de fichiers, taper quelques commandes et c'est fini. Assurez vous d'avoir d'abord installé roadrunner sous Windows 95 pour avoir les fichiers de configuration.
- Installez les deux cartes Ethernet avant d'installer la RedHat 5.0. Les deux cartes que j'ai utilisées sont des 3com 3c509. Les paramètres de la première étaient irq=10, adresse=300 et pour la seconde irq=11, adresse=310. De plus, quand vous installez la RedHat 5.0, continuez et configurez le réseau local et procédez à l'auto-détection des cartes ethernet. Il les trouve à chaque fois alors qu'il ne le faisait pas avant. A la fin de la procédure d'installation, il vous sera demandé de choisir les services lancés au moment du boot. Je retire smb et sendmail parce que j'ai constaté des blocages à ce moment. Lors de l'installation de la redHat 5.0, installez tout : c'est e que j'ai fait. Vous ne devriez pas avoir à changer le fichier
/etc/lilo.conf
.- Nul besoin de recompiler votre noyau. Ajoutez tout simplement ce fichier aux vôtres :
/etc/rc.d/rc.local
Ajoutez le fichierkrb5.ini
dans C:\NETMANAG sous Windows95 à/etc/krb5.conf
Créez également un fichier nommé/etc/rrpasswd
qui ne contient qu'une seule ligne, celle du mot de passe de votre nom d'utilisateur sous roadrunner.- Exécutez les commandes :
mkdir /etc/dhcpc unset noglob
- Copiez ces fichiers à leurs emplacements normaux :
/etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1 /etc/rc.d/init.d/roadrunner /etc/dhcpc/resolv.conf /etc/named.conf /var/named/10.0.0 /var/named/mark.local /var/named/named.local /etc/HOSTNAME /etc/hosts /root/Login2.bat /root/email.pl /root/cron2
- Téléchargez
rrclientd-1.3
à l'adresse http://www.vortech.net/rrlinux/linux.htm, détarrez le et dézippez le et copiez tous les fichiers derrclientd-1.3/bin
vers/sbin
. Par exemple, si vous êtes dansrrclientd-1.3/bin
, faîtes
cp * /sbin
. Les binaires étaient fournis quand j'en ai eu ma version ce qui vous permettra probablement de ne pas avoir à les compiler. Compiler avec les nouvelles librairies sous une RedHat s'avère en effet parfois délicat ces temps-ci. Vous aurez peut-être à modifier le fichier/etc/services
comme il est indiqué dans le fichierREADME
derrclientd-1.3
.- Exécutez les commandes suivantes :
mv /etc/resolv.conf /etc/resolv.conf_old ln -s /etc/dhcpc/resolv.conf /etc/resolv.conf mv /sbin/dhcpcd /sbin/dhcpcd_old mv /usr/sbin/dhcpcd /usr/sbin/dhcpcd_old mv /usr/bin/rdate /usr/bin/rdate_old ln -s /sbin/rdate /usr/bin/rdate ln -s /sbin/rrdhcpcd /sbin/dhcpcd ln -s /sbin/rrdhcpcd /usr/sbin/dhcpcd ln -s /sbin/rrclientd /usr/sbin/rrclientd cp /root/roadrunner /etc/rc.d/init.d ## ajout du service roadrunner chkconfig --add roadrunner crontab /root/RR/cron2 ### rétablissement de la connexion pour un job cron ## Faire en sorte de pouvoir exécuter les scripts avec cron2 chmod 755 /root/Login2.bat /root/email.pl /etc/rc.d/init.d/roadrunner ### Seul root doit pouvoir voir le mot de passe!!! chmod 700 /etc/rrpasswd
- Dans
/etc/rc.d/init.d/roadrunner
, assurez vous d'avoir modifié le nom d'utilisateur pour qu'il concorde avec le nom d'utilisateur donné pourroadrunner
- Faîtes ce qui est indiqué dans Connectez votre hub, votre passerelle et votre ordinateur et, si vous avez des clients, consultez la section Configurez vos clients.
- Il nous faut maintenant attacher
dhpc
à votre première carte ethernet. Suivez les instructions de la partie b de Configurer roadrunner en tant que service.- Rebootez votre ordinateur : c'est fini!!!
- Si vous rencontrez le moindre problème, tout ce que je peux vous dire est de vérifier que votre fuseau horaire est correct et que votre horloge n'est pas en avance d'une seconde ni en retard de plus de 5 minutes. Si cela ne suffit pas, utilisez ce qui suit pour arriver à vos fins.
5.3 La première carte ethernet
Installez normalement votre première carte ethernet lorsque vous installez le système d'exploitation. Donnez lui une adresse IP non utilisée sur votre réseau. Pour une raison inconnue, cette carte ethernet doit être celle connectée à l'extérieur afin de bien fonctionner avec le forwarding de X Window. Laissez moi préciser : j'ai du le faire pour tous ceux qui voulaient se connecter. Pour aller vers l'extérieur, il ne devrait pas y avoir de problèmes avec la seconde carte connectée à roadrunner. Cependant, je ne pouvais pas utiliser
telnet
de mon travail vers ma maison et je ne pouvais pas faire marcher un programme X Window quand roadrunner utiisait la seconde carte ethernet. La seconde carte sera dédiée à l'intranet.Veuillez également configurer votre seconde carte ethernet de manière à ce qu'elle n'utilise PAS la même IRQ et la même adresse qie la première carte ethernet. Par habitude, je prends des valeurs inférieures pour la première carte que pour la deuxième. Je fais souvent appel à un ordinateur sous DOS avec un utiitaire qui sélectionne les valeurs pour les cartes ethernet. Vous devrez probablement faire la même chose.
Ne tentez rien pour l'instant avec votre roadrunner ou votre programme
rrdhcpcd
. Ne vous préoccupez pas non plus de la configuration du réseau non plus, nous nous en occuperons plus tard. Ne vous inquiétez pas du fait que Linux ne détecte pas la seconde carte, ce problème sera traité ultérieurement. Assurez vous seulement du fait que les deux cartes ne partagent pas des paramètres matériels. De plus, si votre seconde carte ethernet a des valeurs inférieures à la première, l'ordinateur pourra la considérer comme la première, ce qui explique pourquoi je donne des valeurs inférieures à la première. Je ne vais pas me préoccuper de savoir si j'ai tort. Assurez vous seulement que l'une des cartes est détectée.Configurer votre serveur DNS sur votre serveur connecté à Internet
Si vous savez ce que vous faîtes, changez les configurations. Puisque je suis bête, je choisis le domaine mark.local. Si mark.local devient un nom de domaine officiel, vous devrez changer toutes les références de mark.local en autre chose dans les fichiers plus bas.
- Copiez les fichiers suivants sur votre serveur :
- /etc/named.boot
- /etc/resolv.conf
- /var/named/mark.local
- /var/named/10.0.0
- /var/named/named.local
- /etc/hosts est un fichier que j'utiliserais mais dont nous n'aurons pas besoin. Juste au cas où votre serveur DNS plante, cela sera utile pour restaurer le système.
- Laissez
/var/named/named.ca
etnamed.local
inchangés- Relancez
named
avec cette commande :/etc/rc.d/init.d/named restart
Il y a un certain nombre de choses que vous pourriez changer pour satisfaire vos besoins. Dans
/var/named/mark.local
, j'ai désactivé la définition de localhost.A partir de maintenant, vos ordinateurs clients peuvent se trouver entre eux. Je considère que vous savez configurer des adresse IP, des passerelles et autres sur vos clients. Je vous donnerai quelques références à ce sujet toutefois. Configurer les clients de manière à ce qu'ils utilisent le DNS.
Configurer vos postes clients
Dans l'ordinateur qui tient le rôle de serveur DNS, jusqu'à huit entrées additionnelles sont disponibles de manière à ce que jusqu'à huit ordinateurs puissent utiliser le serveur DNS. Je considère que vous avez des notions sur les cartes ethernet. Voici la configuration que j'ai effectuée sur un de mes ordinateurs.
- adresse ip = 10.0.0.21
- adresse de nom = c1.mark.local
- adresse de la passerelle = 10.0.0.10 seconde carte ethernet sur l'ordinateur serveur
- masque de sous-réseau = 255.255.255.0
- Quant au fichier
/etc/resolv.conf
, utilisez celui-cipour les clients- Je n'ai pas eu à tripatouiller le noyau sur les ordinateurs clients. En ce qui les concerne, votre ordinateur est une simple passerelle.
/etc/hosts
est un fichier que j'utilise mais dont vous n'aurez pas besoin. Juste au cas où votre serveur DNS plante, cela sera utile pour restaurer le système.La seule chose que vous ayez à changer sur chacun de ordinateurs supplémentaires est l'adresse IP et l'adresse de nom. c2.mark.local et
10.0.0.22
seront respectivement utilisées pour l'ordinateur suivant. Vous voyez le topo?De plus, si vos clients comportent des macs, des PCs ou autres, consultez le masquerading mini HOWTO .
Configurer le masquerading sur le serveur
Si vos modules ont réussi à détecter vos deux cartes ethernet, cette section ne vous concerne pas. Dans le cas contraire, ce qui sera le cas pour la plupart des personnes, vous DEVREZ COMPILER LE GESTIONNAIRE de la carte ethernet dans votre noyau et autoriser le masquerading dans la foulée. J'ai rencontré des problèmes avec deux cartes ethernet du même type. Pour une raison inconnue, quand j'ai installé la RedHat 5.0 à partir de rien, mes deux cartes ont été reconnues mais c'était probablement une exception.
Lisez le ip masquerading HOWTO. Suivez en les étapes sur la compilation du noyau pour le masquerading. ATTENTION : ceci est TRÈS DANGEREUX si vous échouez. Pour l'installation du noyau, RedHat a fait quelque chose d'idiot quand ils ont configuré le fichier
/etc/lilo.conf
. Changez la ligneimage=/boot/vmlinuz-2.0.32
enimage=/boot/vmlinuz
et assurez vous d'avoir exécutélilo
avant de redémarrer votre ordinateur. Faites le maintenant afin d'être tranquille.
- Voici les étapes que je suis dans la compilation du noyau. Faites ce qui est indiqué dans les HOWTO :
cd /usr/src/linux make config
- Une fois cela fait, compilez le :
make dep make clean make zImage
- Si il n'y a pas eu de problèmes, compilez et installez les modules :
make modules make modules_install
- Après la création du noyau, installez le nouveau noyau avec les commandes suivantes :
cp /usr/src/linux arch/i386/boot/zImage /boot/vmlinuz_NEW rm /boot/vmlinuz ln -s /boot/vmlinuz_NEW /boot/vmlinuz lilo
Maintenant, le noyau que vous venez de compiler doit être installé. Voici un exemple de fichier
/etc/lilo.conf
.Votre
/etc/lilo.conf
NE SERA PAS LE MÊME QUE LE MIEN. Modifiez le pour vos besoins et consultez le BOOTPROMPT howto pour ce qui est du paramètre append. Vous devrez modifier ce fichier par vous-même et ajouter le paramètre append comme je l'ai fait pour les deux cartes ethernet.Modification de certains fichiers de configuration
Utilisez ces fichiers :
- Modifiez
/etc/rc.d/rc.local
qui lancera l'ip masquerading. Ajoutez ça à votre fichierrc.local
, ne l'écrasez pas.- Modifiez
/etc/sysconfig/network
et rappelez vous que ces valeurs ne signifient rien et qu'elles seront changées une fois que vous vous serez connectés à Internet. Voir ici- Modifiez
/etc/sysconfig/network-scripts/ifcfg-eth0
par ceci et/etc/sysconfig/network-scripts/ifcfg-eth0
par cela.5.4 Connectez le réseau
Par ailleurs, vous devriez d'abord connecter la première carte ethernet au modem roadrunner et la seconde carte ethernet au hub.
- Mettez votre passerelle entre la boîte roadrunner et le hub.
- Relancez l'ordinateur.
- Connectez tous les autres ordinateurs au hub.
- Assurez vous de pouvoir pinger ou vous connter d'un ordinateur client à votre passerelle. Si cela fonctionne, c'est bien.
- Assurez vous que vos ordinateurs peuvent voir les autres. Pas la peine d'avoir votre passerelle pour ce faire, c'est juste pour vérifier que votre hub fonctionne correctement.
telnet
,ping
,ftp
ou autres devraient convenir. Par exemple,ping c
exécutera unping
vers l'ordinateurc1.mark.local
. Si vous avez utilisé le/etc/hosts
comme je vous l'ai indiqué, nul besoin de votre passerelle pour résoudre l'adresse ip. De même, vous pourriez faireping 10.0.0.21
pour faire la même chose.Maintenant, il va vous falloir connecter votre passerelle à Internet.
5.5 Connecter votre passerelle à Internet.
Avez-vous pensé à installer en premier lieu roadrunner sous Windows 95 pour récupérer les fichiers de configuration? Si c'est le cas, vous avez bien fait.
Téléchargez sur http://www.vortech.net/rrlinux/linux.htm les fichiers
rrclientd-1.3.tar.gz
etrrdhcpcd-1.02.tar.gz
. Vous n'avez pas besoin derrdhcpcd-1.02.tar.gz
à moins que vous ne souhaitiez faire une compilation car il y a un fichier binaire inclus dansrrclientd-1.3.tar.gz
. Voici brièvement les étapes par lesquelles il faut passer mais lisez tout de même le fichierREADME
dansrrclientd-1.3.tar.gz
. Ce fichier contient de manière plus complète quoi faire ensuite. Utilisezrrdhcpcd
pultôt quedhcpcd
. Il fonctionne mieux et semble démarrer plus vite.
- Créez un
/etc/rrpasswd
qui contient le mot de passe de votre compte. Un"chmod 700 /etc/rrpasswd"
permettra que seul root puisse le lire.- Liez votre fichier
/etc/resolv.conf
à/etc/dhcpc/resolv.conf
avec les commandes
mkdir /etc/dhcpc cp /etc/resolv.conf /etc/dhcpc/resolv.conf rm /etc/resolv.conf ln -s /etc/dhcpc/resolv.conf /etc/resolv.conf
- Copiez un fichier de votre installation sous Windows 95 vers
/etc/krb5.conf
.- Modifiez
/etc/services
comme indiqué dans lereadme
derrclientd-1.3.tar.gz
.- Copiez les binaires dont vous avez besoin pour
rrclientd
dans/sbin
ou, tout du moins, est-ce ce que j'ai fait. Le reste de ce document considérera que vous avez mis vos binaires dans/sbin
.- Assurez vous que l'horloge de votre ordinateur n'est pas en avance et pas en retard de plus de cinq minutes. Assurez-vous également que votre fuseau horaire est le bon.
- Je vais considérer que vous utilisez
rrdhcpcd
. Si vous n'en avez pas une version binaire, vous allez devoir le compiler . Exécutez ces commandes pour vous assurer d'avoir les bons liens pour utiliser les nouveaux programmes que vous avez copié dans/sbin
.
mv /sbin/dhcpcd /sbin/dhcpcd_old mv /usr/sbin/dhcpcd /usr/sbin/dhcpcd_old mv /usr/bin/rdate /usr/bin/rdate_old ln -s /sbin/rdate /usr/bin/rdate ln -s /sbin/rrdhcpcd /sbin/dhcpcd ln -s /sbin/rrdhcpcd /usr/sbin/dhcpcd ln -s /sbin/rrclientd /usr/sbin/rrclientd
Une fois
rrclientd-1.3.tar.gz
installé correctement, utilisez ce fichier /root/Login.bat pour commencer votre session de login avecsource /root/Login.bat
. Pensez à changer USERNAME dans le fichier par le nom d'utilisateur que vous avez. Dans mon scripts, je stoppe et démarrerrdhcpcd
, ce qui n'est pas nécessaire. Une foisrrdhcpcd
lancé, il essaye de renouveler l'adresse ip toutes les trois heures. Par conséquent, vous ne devriez pas avoir à arrêterrrdhcpcd
mais je le fais pour ma part quand même.5.6 Configurer roadrunner en tant que service.
Vous devez configurer votre carte ethernet pour qu'elle utilise le protocole
dhcp
. Faites également en sorte que roadrunner soit un service activé de manière à le lancer quand votre ordinateur est mis en marche. CEla a fonctionné pour moi. J'ai lu quedhcpcd
(et probablementrrhcpcd
de la même manière) essaye de renouveler l'adresse ip toutes les trois heures. C'est bien. Cela implique que les utilisateurs n'ont pas à le lancer ni à l'arrêter.A. Tout d'abord, installer roadrunner en tant que service.
- http://www.vortech.net/rrlinux/rhrrclientd.htm : c'est la page web que j'ai utilisée comme guide.
- /root/roadruner est le fichier dont vous avez besoin. J'ai téléchargé ce fichier le 7 Avril 1998. Il est plutôt simple donc je ne pense pas qu'il change.
- Changez votre nom d'utilisateur dans le fichier comme indiqué.
- Copiez-le dans
/etc/rc.d/init.d
avec
cp /root/roadrunner /etc/rc.d/init.d
- Faîtes
chkconfig --list | grep roadrunner
et vous devriez obtenir
roadrunner 0:off 1:off 2:off 3:off 4:off 5:off 6:off
- Activez le service par
chkconfig --add roadrunner
- Tapez la commande
chkconfig --list | grep roadrunner
et vous obtiendrez
roadrunner 0:off 1:off 2:on 3:on 4:on 5:on 6:off
B. Utilisez maintenant le panneau de configuration (
control-panel
). Loguez vous sous root et lancez X Window avecstartx
sixdm
n'est pas installé. Lecontrol-panel
devrait être là. La prochaine étape va mettre en placerrdhcp
avecdhcp
pour la première carte ethernet (l'ordinateur ne sait pas faire mieux).
- Cliquez sur Configuration du réseau dans le
control-panel
.- Cliquez sur "Interfaces".
- Cliquez sur "eth0"
- Cliquez sur "edit"
- OPTIONNEL : Cliquez sur "Permettre à l'utilisateur d'(dés)activer l'interface".
- Choisissez "dhcp" comme protocole de configuration de l'interface.
- Cliquez pour sauvegarder les changements.
Maintenant,
rrdhcpcd
est lancé en configurant l'utilisation du protocoledhcp
par la première carte ethernet et nous avons installé le service roadrunner qui utiliserrclientd
.Relancez votre ordinateur pour voir ce qui se passe!
Vous devriez être connectés à Internet quand votre serveur bootera de même que tous vos clients. Si vous utilisez un navigateur Web, vous aurez peut-être à le configurer pour utiliser le serveur proxy sur le port 8080. Les programmes comme
telnet
,ssh
,nslookup
,ftp
etping
devraient fonctionner. En fait, il se peut queping
fonctionne avec la simple activation derrdhcpd
.5.7 Lancer et stopper le service roadrunner et
rrdhcpd
Pour tout arrêter et tout redémarrer, vous ferez :
/etc/rc.d/init.d/roadrunner stop /etc/rc.d/init.d/network stop /etc/rc.d/init.d/network start /etc/rc.d/init.d/roadrunner start
Bien sûr, c'est un peu lourd.
Rrdhcpd
essaye de renouveler l'adresse ip toutes les trois heures, ce qui fait que vous ne devriez pas avoir à le lancer et à l'arrêter. C'est une bonne chose dans la mesure où il prend un certain temps à lancer et qu'il bloque le réseau.Pourquoi vouloir arrêter et relancer le service roadrunner?
En théorie,
rrdhcpd
devrait obtenir la même adresse ip 99% du temps si vous le laissez activé tout le temps. Si ce n'est pas le cas, vous allez en souffrir et vous allez devoir relancer le service roadrunner. Ainsi, au lieu d'utiliser le script/root/Login.bat
, mettez tout simplement dans la crontab l'interruption et le relancement du service roadrunner à des moments précis. Utilisez les fichiers /root/Login2.bat, /root/cron2 et /root/email.pl. Assurez vous d'avoir faitchmod 755 /root/Login2.bat /root/email.pl
et pensez également à faire uncrontab /root/cron2
. Et si d'autres choses passent par cron sous root, pensez à rajoutez ces divers travaux avecadd
ou vous riquez de voir disparaître vos anciens jobs cron.J'inclus également une réponse de Joshua Jackson quand je l'ai mailé au sujet des problèmes que l'on pouvait rencontrer quand on est loggué en permanence.
Si, pour quelque raison que ce soit, vous perdez votre adresse IP (cela ne DEVRAIT PAS arriver en temps normal), vos tickets Kerberos et vos informations d'authentification GSS deviendront invalides. Si cela arrive,rrclientd
se terminera et vous devrez vous reloguer.La seule raison qui pourrait faire que vous perdiez votre adresse IP est soit un dysfonctionnement matériel ou logiciel sur le client ou le serveur, soit une réactivation des serveurs dhcp à RR.Joshua Jackson5.8 Compléments
Utilisez cette esection à vos risques et périls. A ce sujet, j'espère pouvoir faire plus dans la mesure où nombreux sont ceux qui m'ont fait des suggestions utiles. Pour les mises-à-jour de cette page web, regardez à http://linux.med.ohio-state.edu/nielsen/rr.html mais cela changera peut-être un jour. RIEN de ce qui figure ici n'est bien expliqué. Des modifications sont certainement nécessaires. C'est justement ce que je vais faire.
- Si vous ne configurez pas le service roadrunner et n'attachez pas
rrdhcpcd
à la carte ethernet mais voulez tout de même rester connecté presque en permanence, vous pourriez vous envoyer un mél à vous-même en utulisant un script perl et un job cron sur votre passerelle et lancer la commandecrontab cron
pour le démarrer. Le fichier/root/cron
utilise /root/Login.bat : vous en avez donc besoin. de même, le fichier /root/Kill.bat est là pour le tuer tous les soirs à 1 heure du matin. Ce n'est pas la peine de le faire mais je le fais quand même. Faîtes unchmod 755 /root/email.pl /root/Kill.bat /root/Login.bat
. Modifiez-le pour qu'il convienne à vos désirs. Ajoutez également cela à/etc/rc.d/rc.local
et remplacez USERNAME par le nom d'utilisateur que vous utilisez pour roadrunner. Cela le lancera au moment du boot si vous ne l'avez pas configuré comme cela avec le service roadrunner et le control-panel.
echo démarrage de rrdhcpcd /sbin/rrdhcpcd eth0 echo sommeil de 5 secondes sleep 5 echo démarrage de rrclientd /sbin/rrclientd -u USERNAME /etc/rrpasswd dce-server echo terminé echo sommeil pour 20 secondes de plus sleep 20
- Si vous êtes intéressés par les programmes que vous pouvez utiliser,
telnet
,ssh
,ftp
,ping
,nslookup
et les programmes x-window semblent fonctionner. J'ai entendu dire que d'autres marchent également. Certaines des ressources mentionnées dans Ressources mentionnent par exempleircs
et autres.- Dans
/etc/inet.d
, je commenteraisftp
,telnet
,rsh
,pop3
,pop2
,imap
etgopher
pour des raisons de sécurité. Compilez et installez ssh.- SI vous êtes intéressés par les modifications à
/etc/resolv.conf
de manière à ce qu'il ne change pas, faîtes unchmod 444 /etc/dhcpc/resolv.conf
après l'avoir configuré. Je recommande d'avoir ajouté seulement des informations telles que les serveurs de nom et les noms de domaines tel que le mien :
domain columbus.rr.com search mark.local columbus.rr.com nameserver 10.0.0.10 ### notre DNS nameserver 204.210.252.18 ### dns de roadrunner nameserver 128.146.1.7 ### POUR LES PERSONNES DE COLUMBUS OHIO SEULEMENT!
5.9 Index des fichiers
Vous ne devriez pas avoir de lignes blanches vides au début des fichiers.
/etc/named.boot pour le serveur
; ; une configuration du serveur de nom en cache seulement ; directory /var/named cache . named.ca primary 0.0.127.in-addr.arpa named.local primary mark.local mark.local primary 0.0.10.in-addr.arpa 10.0.0
/etc/resolv.conf pour le serveur et les clients
domain columbus.rr.com search mark.local columbus.rr.com nameserver 10.0.0.10 ### notre DNS nameserver 204.210.252.18 ### dns de roadrunner nameserver 128.146.1.7 ### POUR LES PERSONNES DE COLUMBUS OHIO SEULEMENT! ### Vous pouvez probablement utiliser notre dns en premier si vous le voulez. ### Pour l'instant, je le ferais
/var/named/mark.local pour le serveur
mark.local. IN SOA main.mark.local. root.main.mark.local. ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum mark.local. IN NS main.mark.local. ;localhost IN A 127.0.0.1 main.mark.local. IN A 10.0.0.10 c1.mark.local. IN A 10.0.0.21 c2.mark.local. IN A 10.0.0.22 c3.mark.local. IN A 10.0.0.23 c4.mark.local. IN A 10.0.0.24 c5.mark.local. IN A 10.0.0.25 c6.mark.local. IN A 10.0.0.26 c7.mark.local. IN A 10.0.0.27 c8.mark.local. IN A 10.0.0.28
/var/named/10.0.0 pour le serveur
0.0.10.in-addr.arpa. IN SOA main.mark.local. root.main.mark.local. ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS main.mark.local. 10.0.0.10.in-addr.arpa. IN PTR main.mark.local. 21.0.0.10.in-addr.arpa. IN PTR c1.mark.local. 22.0.0.10.in-addr.arpa. IN PTR c2.mark.local. 23.0.0.10.in-addr.arpa. IN PTR c3.mark.local. 24.0.0.10.in-addr.arpa. IN PTR c4.mark.local. 25.0.0.10.in-addr.arpa. IN PTR c5.mark.local. 26.0.0.10.in-addr.arpa. IN PTR c6.mark.local. 27.0.0.10.in-addr.arpa. IN PTR c7.mark.local. 28.0.0.10.in-addr.arpa. IN PTR c8.mark.local.
/var/named/named.local pour le serveur
@ IN SOA localhost. root.localhost. ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS localhost. 1 IN PTR localhost.
/etc/hosts pour le serveur et les clients
127.0.0.1 localhost localhost.localdomain 10.0.0.21 c1.mark.local c1 10.0.0.10 main.mark.local main 10.0.0.22 c2.mark.local c2 10.0.0.23 c3.mark.local c3 10.0.0.24 c4.mark.local c4 10.0.0.25 c5.mark.local c5 10.0.0.26 c6.mark.local c6 10.0.0.27 c7.mark.local c7 10.0.0.28 c8.mark.local c8
/etc/resolv.conf pour les clients
search mark.local nameserver 10.0.0.10
boot=/dev/hda map=/boot/map install=/boot/boot.b prompt timeout=50 ### ATTENTION: VALABLE POUR MON SEUL ORDINATEUR!!!!! image=/boot/vmlinuz label=linux root=/dev/hda1 append="ether10,0x300,eth0 ether=11,0x310,eth1" read-only
/etc/rc.d/rc.local pour le serveur
## Ajoutez ce fichier à /etc/rc.d/rc.local echo "configuration de ip Masquerade" /sbin/depmod -a /sbin/modprobe ip_masq_ftp /sbin/modprobe ip_masq_raudio /sbin/modprobe ip_masq_irc echo "positionnement des permissions pour le 10.0.0.0 pour le masquerading" ipfwadm -F -p deny ipfwadm -F -a m -S 10.0.0.0/24 -D 0.0.0.0/0
/etc/sysconfig/network pour le serveur
NETWORKING=yes FORWARD_IPV4=true HOSTNAME=main.mark.local DOMAINNAME=mark.local GATEWAY= GATEWAYDEV=eth0
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 IPADDR=10.0.1.10 NETMASK=255.255.255.0 NETWORK=10.0.1.0 BROADCAST=10.0.1.255 ONBOOT=yes
/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1 IPADDR=10.0.0.10 NETMASK=255.255.255.0 NETWORK=10.0.0.0 BROADCAST=10.0.0.255 ONBOOT=yes
## Ceci est une solution radicale pour lancer et arrêter roadrunner ## Normalement vous ne devriez n'avoir à lancer roadrunner qu'une seule fois ## et vous ne devriez pas avoir à bidouiller la date du réseau echo killing rrclientd /sbin/rrclientd -k sleep 5 echo killing rrdhcpcd /sbin/rrdhcpcd -k eth0 echo sleeping 2 seconds sleep 2 ### enlevez les commentaires des 5 prochaines lignes si vous le désirez ##echo arrêt et démarrage du réseau ##/etc/rc.d/init.d/network stop ##echo sommeil de 5 secondes ##sleep 5 ##/etc/rc.d/init.d/network start echo démarrage de rrdhcpcd /sbin/rrdhcpcd eth0 echo sommeil de 5 secondes sleep 5 echo Démarrage de rrclientd /sbin/rrclientd -u USERNAME /etc/rrpasswd dce-server echo Terminaison echo sommeil de 20 secondes de plus sleep 20
/root/roadrunner pour le serveur
#!/bin/sh # # roadrunner Ce script shell démarre et arrête rrclientd # # chkconfig: 2345 11 30 # description: Logue le système dans le TWC Road Runner Internet Service # # Auteur: Joshua Jackson jjackson@neo.lrun.com # 1/6/98 # # Bibliothèque de fonctions source . /etc/rc.d/init.d/functions # Configuration du réseau source . /etc/sysconfig/network # Vérifie que le réseau est monté [ ${NETWORKING} = "no" ] && exit 0 [ -f /usr/sbin/rrclientd ] || exit 0 RRUSER="mettez votre nom d'utilisateur ici!" # Comment le script a-t-il été appelé ? case "$1" in start) # Démarre les daemons. echo -n "Entrée dans Road Runner: " daemon rrclientd -u ${RRUSER} /etc/rrpasswd dce-server echo ;; stop) # Arrête les daemons. echo -n "Sortie de Road Runner " killproc rrclientd echo ;; status) status rrclientd ;; restart) $0 stop $0 start ;; *) echo "Usage: roadrunner start|stop|restart" exit 1 esac exit 0
/root/email.pl pour le serveur
!/usr/bin/perl $EMAIL = "USERNAME\@somewhere.foo.edu"; open(EMAIL,"| /bin/mail -s RR $EMAIL"); $date = `date`; chop $date; print EMAIL "DATE ET HEURE: $date\n"; print EMAIL "--------------------------------------------------\n"; print EMAIL "test\n"; close(EMAIL);
# Redémarre dhcpd et rrclient à 7 a.m., 2 p.m. et 10 p.m. # Et le tue à 1 a.m. # Et envoie un e-mail toutes les heures 5 minutes après l'heure 0 7,14,22 * * * /root/Login.bat >> /root/Login.log 0 1 * * * /root/Kill.bat >> /root/Kill.log 5 * * * * /root/mail.pl
/root/Kill.bat pour le serveur
date /sbin/rrclientd -k sleep 5 /sbin/rrdhcpcd -k eth0 sleep 5
### Il suffit d'arrêter et de redémarrer roadrunner rapidement /etc/rc.d/init.d/roadrunner stop sleep 5 /etc/rc.d/init.d/roadrunner start
# Redémarre à 7 a.m., 2 p.m. et 10 p.m. # Et envoie un e-mail toutes les heures 5 minutes après l'heure 0 7,14,22 * * * /root/Login2.bat >> /root/Login2.log 5 * * * * /root/mail.pl
main.mark.local
Précédent Suivant Table des Matières
Copyright (c) 1998, Mark Nielsen
Adaptation française de Éric Jacoboni et Pierre Tane