Problème partage connexion sous MDK 10.1

Fermé
Ben - 28 déc. 2004 à 23:03
 aBERZEn - 24 févr. 2005 à 15:45
Bonjour,
Bonne année à tout le monde!!

j'essaye de partager la connexion internet sur deux ordi équipé de la mandrake 10.1 community.
J'ai configuré par l'interface graphique le partage sur mon premier ordi (192.168.0.100) qui se connecte sur internet.
Ensuite j'ai configuré sur mon deuxième une connexion réseau en spécifaint comme passerelle et dns l'ip de mon premier.
Mais voila ca marche pas.
Pourtant j'ai désactivé tout les firewalls sur les deux ordi.

De mon deuxième ordi je pinge ma passerelle sans problème mais quend je pinge un site extèrieur il me met :

[root@A root]# traceroute www.yahoo.fr
traceroute to www.euro.yahoo.akadns.net (217.12.3.11), 30 hops max, 38 byte packets
 1  192.168.0.100 (192.168.0.100)  0.367 ms  0.239 ms  0.115 ms
 2  * * *
 3  * * *
 4  * *
[root@A root]# ping www.yahoo.fr
PING www.euro.yahoo.akadns.net (217.12.3.11) 56(84) bytes of data.

--- www.euro.yahoo.akadns.net ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 1999ms


Il trouve l'ip du site extérieur mais ne veut pas le pinger?
j'ai essayé de redéfinir le forwarding dans la console en tapant sur la passerelle:
[root@amd1700 root]# iptables -A POSTROUTING -t nat -o ppp0 --j MASQUERADE
iptables: Invalid argument

mais ca ne marche pas, aprés plusieurs essai il s'avère c'est que l'argument "-j MASQUERADE" qu'il ne reconnait pas.

En essayant de me connecter avec mozilla il me dit :
" la connexion a été refusée au contact du serveur proxy que vous avez configuré"

Est-ce que quelqu'un sait ce que je pourrai faire?
merci d'avance
A voir également:

8 réponses

bien j'ai voulu écrire :
[root@amd1700 root]# iptables -A POSTROUTING -t nat -o ppp0 -j MASQUERADE


au lieu de
[root@amd1700 root]# iptables -A POSTROUTING -t nat -o ppp0 --j MASQUERADE
0
Regardes a:
http://www.commentcamarche.net/forum/affich-1138827-partage-de-connection#1
Notamment le point 4. En principe il faut activer le NAT, "network address translation" sur le pc qui partage la connection. En principe la commande avec "iptables ..." doit etre faite sur celui la mais je ne suis pas sur si c'est vraiement correct et suffisant. Je te conseille de ne pas faire comme ca. Il vaut mieux utiliser le script propose dans le lien ci-dessus et de suivre toutes les inscriptions la dedans. Normalement ca marche tres bien.
Si tu veux en plus un peu mieux comprendre tu peux aussi etudier le "IP-Masquerade-HOWTO", notamment:
http://www.tldp.org/HOWTO/IP-Masquerade-HOWTO/firewall-examples.html#RC.FIREWALL-2.4.X
Selon ce site, il faut faire tres attention avec les bonnes regles de filtrage et de forwarding. Avec un truc trop simple on peut reussire tel que ca marche mais il n'y a aucune protection pour les pcs deriere le 1er pc!! Je craint que ta tempative avec "iptables ..." allait dans ce sens dangereux. C'est plutot bien que ca n'a pas marche. (Je suppose c'est a cause de modules manquants et du au fait que tu n'as pas active le "ipforwarding" dans le bon fichier-noyau dans /proc/...., mais ca n'a pas d'importance).
Essaies les instructions dans le 1er lien ci-dessus, c'est plus simple et ca marche bien.

Apart ca pour les serveurs DNS sur le deuxieme pc il faut manuellement mettre les serveurs DNS de ton FAI. Le numero IP de ton pc de partage est uniquement bon si tu as installe un serveur DNS la dessus ce qui n'est pas evident. Par contre pour la passerelle il faut effectivement prendre le pc de partage.
0
Merci beaucoup pour ta réponse.

Bon j'ai vérifié il y a bien un serveur dns qui tourne sur le serveur.
J'avais lancée la ligne "iptables etc" sur le serveur.
j'ai vérifié que le forwarding soit activé dans /proc/sys/net/ipv4/ip_forward
en fait j'ai beau mettre un 1 à chaque fois que je rédémarre le réseau ou l'ordi il me remet un 0!!!!

Quand je configure manuellement le adresses dns du fai sur le client lorsque je pinge un site extérieur il ne trouve même plus sont adresse ip
il me met :
[root@A root]# ping www.yahoo.fr
ping: unknown host www.yahoo.fr


Ensuite je me suis apercu que le service iptables sur le serveur été arrété et je n'arrive pas à le démarrer avec drakconf. j'ai coché la case "au démarrage". Mais j'ai beau essayé de l'arréter et de le démarer (en cliquant sur arréter et démarrer) rien ne se passe.

J'ai bien compris que j'avais désactivé tout les firewalls, mon idée était de les désactiver juste le temps des tests, aprés j'aurais tout bloqué et autorisé les ports au cas par cas.

Enfin j'ai fait comme tu m'as dit avec le fichier rc.firewall-2.4, mais il me renvoie :
[root@amd1700 g]# ./rc.firewall-2.4


Loading simple rc.firewall version 0.75..

   External Interface:  ppp0
   Internal Interface:  eth0
   loading modules:   - Verifying that all kernel modules are ok
----------------------------------------------------------------------
ip_tables, ip_conntrack, ip_conntrack_ftp, ip_conntrack_irc, iptable_nat, ip_nat_ftp, ----------------------------------------------------------------------
   Done loading modules.

   Enabling forwarding..
   Enabling DynamicAddr..
   Clearing any existing rules and setting default policy..
   FWD: Allow all connections OUT and only existing and related ones IN
   Enabling SNAT (MASQUERADE) functionality on ppp0
iptables: Invalid argument

rc.firewall-2.4 v0.75 done.



toujours ce probléme avec iptables, la ligne :
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE

qui foire...

je ne sais pas quoi faire...
0
La ca commence a devenir mysterieux. Tu n'as pas par harsard une tres vielle version d'iptables que traine dans le $PATH de root ? Normalement c'est impossible avec Mandrake 10.1. Il devrait y avoir une bonne version d'iptables. Peut-etre tu as installe une version d'iptables ou Mandrake a mis de patches speciaux qui t'embetent ??

Pour continuer je te conseille d'aller a la source, c.-a-d. a la page du projet netfilter:
http://www.netfilter.org/
et de telecharger la derniere version d'iptables sous forme de source:
http://www.netfilter.org/files/iptables-1.2.11.tar.bz2
Tu le compiles et l'installes en /usr/local (c'est l'endroit default) et apres tu (re)modifies le script pour prendre le nouveau iptables qui se trouvera dans /usr/local/sbin.

Si le message reste, ca veut peut-etre dire que ton noyau est mal configure/compile, peut-etre il n'y a de support d'ipforwarding prevu ? Ca peut arriver si tu as compile le noyeau toi meme et tu as enleve trop de trucs dans la config. Si c'est le cas reprends le "make xconfig" et cherches les bonnes options pour activer le netfilter et ipforwarding. Il y a pas mal de trucs auxquels il faut faire attention.
Je ne sais pas mais je pense avec le noyau de Mandrake ca devrait bien aller. Peut-etre c'est une question de differents types de paquets noyau et/ou iptables que Mandrake prevoit ??

Apart ca quand tu fais tourner le script: il ne faut pas avoir d'autre firewall!! Un autre firewall ne fait que boussiler toutes les regles car il fera aussi iptables!! C'est ce script qui fait d'office de firewall. Dans la premiere version c'est encore assez ouvert (pour le 1er pc) mais apres c'est facile de le modifier pour faire un vraie firewall. Regardes dans le IP-Masquerade-HOWTO la section avec "stronger-rule-set". La tu trouveras un autre script qui est plus fort pour la protection. Bien-entendu avant il faut reussier de faire marcher le ipforwarding (ou le NAT).

Pour le DNS ton observation que ca ne marche pas avec les serveurs de ton FAI c'est normale car le NAT ne marche pas encore. Une fois c'est bon ca va aussi marcher. En fait pour l'instant ton reseau interne marche mais le NAT ne marche pas.

Une autre question: Pourquoi tu mets 192.168.0.100 pour le premier pc et pas 192.168.0.1 ?? Si ton access Internet passe deja par un autre routeur qui utilise deja la plages d'adresses 192.168.0.xxx pour lui meme c'est la m...e ultime et les conflits sont preprogrammes. Si c'est le cas il faut mettre pour ton reseaux interne une autre plage d'adresses (comme 192.168.1.xxx par exemple) qui n'entre pas en conflit avec ton routeur!!
Dans ce cas il y a aussi une ligne a modifier dans le script.

Je rappelle, normalement c'est:
1er pc : device externe: numero IP externe pour internet
device interne: numero IP: 192.168.0.1

2eme pc: numero IP: 192.168.0.2 et passerelle 192.168.0.1
et la masque 255.255.255.0 partout pour le reseau interne.

Si par harsard tu as un routeur qui fait que deja ton numero IP externe est de genre 192.168.0.xxx la ca ne marche pas et il faut modifier !!! Il faut passer le device interne du 1er pc a: 192.168.1.1 et le 2nd pc a 192.168.1.2 (avec passerelle 192.168.1.1) pour eviter les conflits!!!
0
Voila ma version d'iptables :
[root@amd1700 root]# iptables -V
iptables v1.2.9


Ensuite je vais regarder en détail tout les services qui ressemble à un firewall pour les tuer avant de relancer le script.

Pour info, j'avais la MDK 10.0 community avant de passer à la 10.1 community sans formatage mais en faisant une mise à jour, je n'ai jamais touché au noyau et j'ai coché les options serveur à l'installation.

Je n'ai pas de routeur autre que l'ordi qui me sert de serveur car je n'ai pas l'adsl... Et dans mon village (60 habitants en été) France Télécom ne daigne pas nous cabler pour l'adsl. Mais prochainement le maire va mettre en place une connexion par satellite descendante et montante avec un wifi sur tout le village (ça va envoyer du pâté!). En attendant j'essaye de partager une connexion rtc 56K entre 2 ordi, qui les meilleurs jours me permet de surfer la toile à la vitesse incroyable de 31K grâce au formidable état de la liaison france télécom.

Bon j'avoue j'ai mis 192.168.0.100 complétement par hasard c'est rond, ça sonne jolie pour un serveur mais je changerai.

Je vais essayer de formater et de réinstaller depuis le début une version propre de la 10.1 car il y a un autre problème :
quand j'allume l'ordi souvent aprés l'écran du mot de passe il plante et ne veut pas lancer kde. Alors que sur mon client, sur lequel j'ai fait une installation complète ca marche toujours trés bien.

voila, autre chose sur mon client j'ai aussi ZindoZ XP qui ne veut pas non plus se connecter sur internet par mon serveur. mais lorsque je partage avec ZindoZ la connexion internet du client (qui devient serveur du coup)(le client et un portable avec son propre modem), le serveur lui devient client (toujours sous linux) et se connecte bien sur internet. Mais hasard, ça rame...

En tout cas merci beaucoup pour ton aide kmf.

VIVE l'internet par satellite!!
0
Je crois c'est la mise a jour qui est peut-etre a l'origin de ce probleme. Si tu reinstalles le Mandrake 10.1 completement ca doit tres bien marcher avec les instructions du 1er lien que j'ai donne ci-dessus. J'ai fait ce genre de partage avec une connection RTC moi meme et ca fonctionne tres bien, sauf la petite bande passante est partage entre deux ordinateurs. En fait tout au debut j'avais pas de carte reseau sur un des pcs et j'avais relie les deux pcs linux par un cable seriel et j'avais mis le reseau entre les deux par ppp (aussi avec 192.168.0.x, le principe est tres similaire). Ca donne un debit entre les deux de 115 Kb/s (encore 2-4 fois plus que le RTC, donc suffisant pour la partage). Ajourd'hui cette methode devient plus difficile et obsolete car souvent les ordinateurs modernes n'ont plus de port seriel mais ils sont equipes en ethernet avec une carte reseau ce qui est beaucoup mieux.

Une fois ca marche et si tu es pres a investir un peu de temps pour apprendre des choses plus compliques tu peux envisager de mettre le QoS ("quality of service") sur ton 1er pc pour mieux gerer la connection, par exemple pour garder un surf efficace pendant un telechargement longue. Il y a un autre HOWTO la dessus:
http://tldp.org/HOWTO/Adv-Routing-HOWTO/
notamment la section 15 et particulierement 15.8. Ce n'est pas facile mais c'est interessant. En 15.8 il y a des scripts pour la mise en place. En principe ils parlent de l'ADSL mais avec un RTC ca doit aussi marcher, en fait c'est meme plus important et urgent pour le RTC.
0
Bon ca y est j'ai trouvé le problème : Shorewall!!
En fait Mandrake le configure automatiquement quand on fait le partage de connexion avec drakconf.
MAIS : si je ne laisse pas décochées toutes les cases dans la config de ce firewall de drakconf il ne me permet plus de d'avoir internet sur le client.
Je ne comprend pas, si je lui autorise tout : ca marche pas .
Si j'arrête le service shorewall : ca marche pas.

Par exemple je ne peux plus me connecter avec ssh si je veux aller sur internet avec le client. je ne peux pas non plus pinger le serveur depuis le client (hôte introuvable) mais je peux surfer...

En bref soit toutes les cases sont décochées et je peu surfer sur le client, soit je coche ssh, ping, http, ftp ou autre et je ne peux plus surfer.
En plus d'aprés drakconf, ce firewall gére tout ce qui est accéssible depuis internet... pas depuis le lan...

voila, pour résumer : je ne comprend pas...

sinon j'ai toujours le problème au démarrage qui bugge 4 fois sur 5.
0

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

Posez votre question
En principe si tu utilises le script rc.firewall-2.4 (voir mon 1er poste) pour mettre la partage de connection ca va annuler toutes les configurations de firewall et mettre sa propre configuration. Ca marche toujours avec la commande iptables. Meme le shorewall appelle iptables, en fait les logiciels comme shorewall ce ne sont que de "frontends" pour itptables pour permettre une utilisation plus commode car franchement l'iptables n'est pas tres facile a utiliser. De facon generale, il faut faire attention de ne pas melanger shorewall et par exemple le script que j'ai propose.

Je ne sais pas si tu as deja reinstalle le Mandrake 10.1 mais si c'est non tu as toujour le probleme original qui est autre chose qu'un conflit entre shorewall et le script. En fait je crois le meme probleme qui t'embete avec iptables empeche aussi le shorewall de fonctionner correctement (car shorewall depend aussi d'iptables). La mise a jour de Mandrake 10.0 vers 10.1 a cree un vrai probleme peut-etre au niveau du device-filesysteme (les fichiers devices dans le repertore /dev/.... ). C.-a-d. maintenant tu utilise un nouveau noyau et d'autre versions de logiciels qui marchent mal avec l'ancien device-filesysteme. On ne saura jamais avec precision mais une propre reinstallation ca devrait disparaitre. Il y a deja eu d'autres exemples avec des mises a jours 9.2 vers 10.1 qui se sont mal passe (pb. acces cdrom, ....).

Donc il me parait bien de reinstaller Mandrake 10.1 et apres ca devrait bien fonctionner pour la partage avec deux facons differentes: (i) par le drakconf de Mandrake avec le shorewall (je suppose ca fonctionnera bien apres reinstallation) ou (ii) par la methode plutot manuelle avec le script rc.firewall-2.4.
Si ca marche avec le shorewall c'est certainement mieux et plus commode. Apparamment le Mandrake a deja prevu la partage de connection. Donc la methode "manuelle" du IP-Masquerade-Howto n'est pas forcement necessaire (en fait sur le fond: le Mandrake fera avec le shorewall la meme chose, une fois ca fonctionne!)
0
Je crois que l'assistant de mandrake est assez buggué;
Personnellement j'utilise webmin pour configurer shorewall et ça marche tres bien.
Tu trouveras tout ce qu'il faut ici:
http://docs.cafe-philo.net/procedures/shorewall.html
0
Voila j'ai tout réinstallé!!!!

Plus de problème au démarrage par contre je n'est pas eu le temps de re tester le partagede la connexion...

Merci en tout cas pour vos réponses

et bonne année 2005
0
Bonjour Ben,

Ton problème ressemble beaucoup à un problème de proxy http.
Je m'explique: tu as dû utiliser la configuration automatique de MDK et le partage assisté de connexion internet....

Je te conseille de tester si tu peux surfer sur le net en configurant ton proxy sur le port 3128 à l'adresse de ton server/router (port par defaut)

Si c est le cas tu as identifié ton problème. Il te suffit de désinstaller le serveur SQUID et de te taper une petite configuration réseau manuelle...

Voilà... si je suis à côté de la plaque, n'hésite pas à me le signaler... :)
A++

aBERZEn
0