Se connecter à internet à travers un autre pc

Voilà la situation. J’ai un pc connecté à internet via le wifi. J’aimerais connecter un second pc, en passant par le premier, en reliant les 2 par un cable ethernet. Comment puis-je faire ça simplement.

Toutes mes tentatives consistaient à modifier le fichier /etc/network/interface, mais rien n’a fonctionné jusqu’à présent, pas d’accès internet.

Donc pour faire simple, avez vous une méthode toute prête pour faire ça? :slightly_smiling:

Merci d’avance!

Tu dois utiliser la file d’attente POSTROUTING de netfilter, et faire de ton client connecté au net un routeur :wink:

Bonnes recherches :023

[ul][li]Alors il faut un câble croisé (forums.cnetfrance.fr/topic/6-eth … le-croise/).[/li]
[li]Ensuite, sur ta machine routeur tu auras donc deux interfaces réseaux : l’une vers internet l’autre vers le PC.[/li]
[li]Tu doit leur donner des adresses IP fixes à la main (tu peut le faire par ifconfig à chaque démarrage ou via le fichier/etc/network/interfaces).[/li]
[li]Après il faut créer des règles NAT pour netfilter (avec iptables) pour que les paquets qui viennent du PC soient redirigés, puis que les paquets qui viennent d’internet et qui sont en relation à une connexion du PC vont vers le PC (le tuto de ricardo pourrait t’aider : debian-fr.org/installation-p … t1901.html).[/li][/ul]

Bon, les 2 pc se répondent par ping, ça c’est fait.

Par contre, avec le pc qui veut accéder à internet via l’autre pc, si je tape :

ping www.google.fr par exemple, j’ai le droit à un unknown host.

Je dois changer quelque chose dans les DNS du fichier resolv.conf ?

Resolv.conf doit être le même sur les deux machines.

Peux tu poster tes règles iptables ?

[code]Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all – anywhere anywhere
ACCEPT all – anywhere anywhere state RELATED,ESTABLISHED
ACCEPT all – anywhere anywhere
ACCEPT icmp – anywhere anywhere

Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all – anywhere anywhere state RELATED,ESTABLISHED
ACCEPT all – anywhere anywhere

Chain OUTPUT (policy ACCEPT)
target prot opt source destination [/code]

Salut,

# iptables -S (toutes les infos sont affichées contrairement au -L qui masque certains trucs)
# iptables -t nat -S
# sysctl net.ipv4.ip_forward

?

Voilà tout ça dans l’ordre :

-P INPUT DROP -P FORWARD DROP -P OUTPUT ACCEPT -A INPUT -i eth0 -j ACCEPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -p icmp -j ACCEPT -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT -A FORWARD -o wlan0 -j ACCEPT

-P PREROUTING ACCEPT -P INPUT ACCEPT -P OUTPUT ACCEPT -P POSTROUTING ACCEPT -A POSTROUTING -o wlan0 -j MASQUERADE

Je parie que c’est la dernière ligne qui fait que ça cloche?

Exact cela doit être un 1 :wink:

Tiens prends toi ça aussi, ça ira mieux après :stuck_out_tongue:

gentoo.org/doc/fr/home-router-howto.xml

++

Oui faut au moins passer ça à 1 (et le rendre permanent dans /etc/sysctl.conf ou /etc/sysctl.d/cequetuveux.conf).

Après je suis pas sûr que les règles FORWARD dans FILTER soient très utiles, j’en ai pas eu besoin pour faire marcher le VPN du client (net -> routeur -> LAN) mais comme toi c’est dans l’autre sens j’avoue que je suis paumé. :mrgreen:
En tous cas le MASQUERADE a l’air bon à vue de nez.

Merci pour tout! Je crois que avec un simple cable ethernet ça ne fonctionnera pas d’après la doc gentoo. En tout cas cette dernière est vraiment bien fichue!

J’ai résolu mon problème avec apt-cacher-ng (c’était pour l’installation de paquets et la mise à jour la connexion à internet).
:slightly_smiling: