[Passerelle Debian/Sarge] Marche pas !

Résolu/Fermé
TuRn3r
Messages postés
17
Date d'inscription
lundi 9 mai 2005
Statut
Membre
Dernière intervention
3 janvier 2010
- 9 mai 2005 à 17:04
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
- 10 mai 2005 à 12:15
Je sais que déjà beacoup de sujets de ce type ont été posté, j'en ai fait le tour, mais je ne parvient toujours pas à résoudre mon provlème.

Je n'arrive pas à configurer correctement un PC que j'ai installé entre le routeur et le réseau local.

La machine (Debian/Sarge) possède 2 interfaces ethernet qui sont bien reconnues (eth0 et eth1) : eth0 est relié au routeur et eth1 au switch.
eth0 possède l'adresse IP 192.168.4.2
eth1 possède l'adresse IP 192.168.21.1

Le réseau local possède un PC (windows) dont je me sers pour les tests avec l'adresse IP 192.168.21.2.

Le routeur a pour adresse IP 192.168.4.1.

J'ai activé l'ip forwarding : echo 1 > /proc/sys/net/ipv4/ip_forward

Comme règles de routage, j'ai defini:
route add -net 192.168.21.0/24 gw 192.168.21.1
route add -net 192.168.4.0/24 gw 192.168.4.2
route add -net 0.0.0.0/0 gw 192.168.4.1

Un route -n me donne donc:
Destination          Gateway           Genmask         Flags     Metric     Ref     Use     Iface
192.168.21.0     192.168.21.1     255.255.255.0     UG     0 0 0 eth1
192.168.4.0       192.168.4.2       255.255.255.0     UG     0 0 0 eth0
0.0.0.0              192.168.4.1         0.0.0.0              UG     0 0 0 eth0

J'ai mis comme passerelle par défaut sur la machine test 192.168.21.1.

De plus,
Du PC je ping la station de test sur le réseau 192.168.21.2
Du PC je ping le routeur (192.168.4.1).

De la station test sur le réseau, je ping les 2 interfaces du PC (192.168.21.1 et 192.168.4.2).
Mais d'une station sur le réseau, je ne ping pas le routeur (192.168.4.1).

Quel est le probleme ???
Quelqu'un a-t'il un idée ???

14 réponses

TuRn3r
Messages postés
17
Date d'inscription
lundi 9 mai 2005
Statut
Membre
Dernière intervention
3 janvier 2010
4
10 mai 2005 à 12:00
MERCI CA MARCHE

Merci à tous et particulièrement a "moi" pour son aide.

Alors pour recapituler rapidement :
Destination     Passerelle     Genmask     Indic Metric Ref Use Iface
192.168.21.0     0.0.0.0     255.255.255.0     U 0 0 0 eth1
192.168.4.0     0.0.0.0     255.255.255.0     U 0 0 0 eth0
0.0.0.0         192.168.4.1     0.0.0.0         UG 0 0 0 eth0

Il n'y a en fait aucune route a ajouter, celles par défaut fonctionnent à merveille.
Pour que l'ip forwarding soit automatique, dans /etc/network/interfaces je fais un
up echo 1 > /proc/sys/net/ipv4/ip_forward


Comme je n'ai pas accés au routeur, il fallait faire du nat avec la passerelle
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


Et voila tout marche !!!
Encore merci a tous.

PS : est-ce que tout passe au travers (ftp, pop, snmp, etc ...), ou faut-il rajouter des modules/regles ?
Apres j'arrete avec les questions !
2
Je ne sais pas si ca vient de la mais déjà, tes règles ne sont pas bonne
en effet, tu n'as pas à rajouter ceci:
route add -net 192.168.21.0/24 gw 192.168.21.1
route add -net 192.168.4.0/24 gw 192.168.4.2
Ce ne sont pas des gateway mais des interfaces. A partir du moment où tu as configurer tes deux interfaces il saura par ou rediriger les trames du meme réseau
( je ne sais pas si j'ai été très clair)
Donc dans un premier temps retire ces deux routes!

++
Tiens nous au courant ;)
0
salut, en effet tu n'est pas obligé de déclarer les réseaux auxquels ta machine est directement connecté, par contre sur le routeur tu dois déclarer le réseau 192.168.4.0 sinon il ne sait pas comment l'atteindre et sur ta debian tu dois mettre une passerelle par defaut qui est l'adresse du routeur. De plus la manière dont tu active l'ip forwarding sur la debian le "1" dans /proc/sys/net/ipv4/ip_forward se remet à zero à chaque redemarrage, il faut que tu mette "yes" dans /etc/network/options pour ip forward ! voila, peut-être que ça pourrait marcher comme ça ;-) bon courage @+
0
Ce n'est pas qu'il n'est pas obligé...
Ils ne doit pas déclarer ses propres adresses ip en tant que gateway sinon ça "boucle"...

La passerelle par defaut y est déjà !
route add -net 0.0.0.0 gw X.X.X.X
revient au même que
route add default gw X.X.X.X

Sinon exact pour le forwarding

++
0
pardon, j'avais pas vu pour la passerelle par defaut, désolé.
0

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

Posez votre question
TuRn3r
Messages postés
17
Date d'inscription
lundi 9 mai 2005
Statut
Membre
Dernière intervention
3 janvier 2010
4
10 mai 2005 à 10:33
Merci a tous pour ces réponses, mais si je laisse uniquement la route par defaut : add route default gw 192.168.4.1
De la machine debian je ne peux rien pinger du tout
0
si tu fais ca:
#ifconfig eth0 192.168.4.2 netmask 255.255.255.0
#ifconfig eth1 192.168.21.1 netmask 255.255.255.0
#route add default gw 192.168.4.1
# echo 1 > /proc/.....

tu devrais avoir une table de routage correct et normalemet toutes les machines devraient se pinger..

Sinon as-tu des règles iptables qui bloqueraient les paquets icmp ??

++
0
TuRn3r
Messages postés
17
Date d'inscription
lundi 9 mai 2005
Statut
Membre
Dernière intervention
3 janvier 2010
4
10 mai 2005 à 10:52
je voulais dire je ne peut rien pinger sauf le routeur (désolé)
ps : non, je n'ai pas (encore) de regles iptables
0
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
496
10 mai 2005 à 10:57
Chez moi j'ai dans une situation similaire avec deux cartes reseaux, le NAT et le loopback device ca comme autoput de "route":

Destination Gateway Genmask Flags Metric Ref Use Iface
xx.xx.xx.xx * 255.255.255.0 U 0 0 0 eth0
192.168.0.0 * 255.255.255.0 U 0 0 0 eth1
loopback * 255.0.0.0 U 0 0 0 lo
default yy.yy.yy.yy 0.0.0.0 UG 0 0 0 eth0

ici xx.xx.xx.xx est le numero IP internet et yy.yy.yy.yy est la passerelle par defaut vers internet/reseau exterieur.
On voit il y a trois passerelles simples associe a chaque carte et le "lo". Celles la sont creees automatiquement avec "ifconfig" (utilise par les scripts de demarrage) quand la carte reseau est configure avec un numero IP. Ils ont l'option U dans la 3eme colonne. Il n'est normalment pas necessaire de les creer soi meme avec route!!! Donc tes commandes routes sont soit inutiles (comme le dit aussi "moi" ci-dessus) ou meme fausse, notamment le "UG" dans chaque ligne est faux.

Apres il n'y a qu'une seule passerelle par default et en principe celle la est cree par une commande comme:
route add default gw yy.yy.yy.yy

Normalement c'est aussi fait automatiquement par les bons scripts.


J'ai mis comme passerelle par défaut sur la machine test 192.168.21.1.
Ca c'est simplement faux si tu veut avoir la connection internet. La passerelle par defaut doit etre le routeur sur eth0 dans ton cas.

-----------------
Si tu veux tester de facon manuelle, tu dois faire les commandes suivantes (en root):
/sbin/ifconfig eth0 down
/sbin/ifconfig eth1 down
/sbin/ifconfig eth0 netmask 255.255.255.0 192.168.4.2 up
/sbin/ifconfig eth1 netmask 255.255.255.0 192.168.21.1 up
route add default gw 192.168.4.1

et apres ca devrait marcher! Regarde apres avec "/sbin/route" !!
0
en gros cela revient au meme que le message <6> non? :))
0
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
496 > moi
10 mai 2005 à 12:09
Oui, mais je n'ai vu les autres messages (apres <4>) qu'apres.
0
donne moi la table de routage de la passerelle debian

Je pense que ca doit venir de là !
++
0
TuRn3r
Messages postés
17
Date d'inscription
lundi 9 mai 2005
Statut
Membre
Dernière intervention
3 janvier 2010
4
10 mai 2005 à 11:08
Merci a tous de votre aide mais ca ne marche toujours pas!!

Destination     Passerelle     Genmask     Indic Metric Ref Use Iface
192.168.21.0     0.0.0.0     255.255.255.0     U 0 0 0 eth1
192.168.4.0     0.0.0.0     255.255.255.0     U 0 0 0 eth0
0.0.0.0         192.168.4.1     0.0.0.0         UG 0 0 0 eth0

J'ai également essayé en supprimant les 2 premieres lignes, idem.

Je ne vois pas d'ou ca peut venir, d'autant qu'avec la machine test, je parvient a pinger eth0 et eth1, mais pas le routeur qui est directement relié a eth0
0
et de la passerelle du ping le routeur ?
0
TuRn3r
Messages postés
17
Date d'inscription
lundi 9 mai 2005
Statut
Membre
Dernière intervention
3 janvier 2010
4
10 mai 2005 à 11:24
oui, de la passerelle je ping absolument tout, la machine test, le routeur, meme internet.
0
Qu'as tu mis comme passerelle par defaut sur ton pc test ?
0
TuRn3r
Messages postés
17
Date d'inscription
lundi 9 mai 2005
Statut
Membre
Dernière intervention
3 janvier 2010
4
10 mai 2005 à 11:37
192.168.21.1 (soit eth1)
0
Ton routeur connait-il la route vers le réseau 192.168.21.0 ?
si non configure ton routeur pour

si tu peux pas essaie d'activer le NAT sur ta passerelle!
$iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
0
kmf31
Messages postés
1564
Date d'inscription
mercredi 30 mars 2005
Statut
Contributeur
Dernière intervention
22 juin 2007
496
10 mai 2005 à 12:15
PS : est-ce que tout passe au travers (ftp, pop, snmp, etc ...), ou faut-il rajouter des modules/regles ?

Cote client oui, cote serveur par defaut seulement sur la passerelle.
Ca depends de ce que tu as comme firewall. En principe tu as interet de mettre un vrai script iptables qui definit les regles pour forward etc., regarde ici:
http://www.tldp.org/HOWTO/IP-Masquerade-HOWTO/
Tu y trouves un script en version simple dans la section 3.4.1 et en version plus severe dans la section 3.6.1. Les deux font firewall pour les pcs derrieres et le 2nd fait firewall aussi pour la passerelle.
Si tu veux mettre un serveur dans le sous-reseau il faut rediriger de ports, => section 6.7.1
0