# réseau Linux/Windows

## Dom

Salut ! Je voudrais partager ma connexion internet et éventuellement jouer en réseau avec une autre machine tournant sous windows. Je ne sais pas si je dois installer Samba ou s'il existe d'autres méthodes (je ne compte pas partager des fichiers). Merci pour votre aide.

----------

## DuF

Amha il faut regarder du côté d'iptables et netfilter, et non du côté de samba !

----------

## arlequin

Owh !! c'est relativement plus que simple...

Tout d'abord, comme l'as dit DuF, il voir du côté d'iptables. Pour ça:

```
emerge iptables
```

Note: il n'est plus installer de base depuis la 1.4rc4

Puis, une fois la chose installée, on la démarre:

```
/etc/init.d/iptables start
```

Un petit coups de configuration, pour activer le partage:

```
iptables -F FORWARD

iptables -A FORWARD -j ACCEPT

iptables -A POSTROUTING -t nat -o ppp0 -j MASQUERADE
```

Et voilà   :Wink: 

Pour finir en beauté, on sauvegarde les règles:

```
/etc/init.d/iptables save
```

Tu peux désormais surfer à partir de n'importe quel poste du réseau, à condition qu'il soit bien configuré.

Si tu veux que le partage soit appliqué quand ta gentoo boot:

```
rc-update add iptables default
```

Voilà   :Wink: 

----------

## DuF

Je me pose une question, je n'ai jamais utilisé iptables, mais ne faut-il pas activer dans le noyau (en dur ou par module) le support d'iptables justement ?

----------

## arlequin

Ben oui...

En fait, il y a une tripoté de modules, qu'on trouve dans "Netfilter".

```
Networking options  --->

  IP: Netfilter Configuration  ---> 
```

Mais y en a tellement que je sais pas trop lesquels choisir (en fait, je les fout tous en modules).

----------

## Dom

Merci pour votre aide !

Apparemment, il faut installer un module :

```
 # iptables -F FORWARD

modprobe: Can't locate module ip_tables

iptables v1.2.7a: can't initialize iptables table `filter': iptables who? (do you need to insmod?)

Perhaps iptables or your kernel needs to be upgraded.

```

Je m'en occuperais demain...

----------

## Dom

Ah, ben Arlequin a répondu entre temps   :Wink: 

----------

## Dom

Au passage, une petite question : pour activer ma carte réseau et avoir une adresse IP, est-ce que ça suffit de faire ca :

```
 ifconfig eth0 192.168.0.1 netmask 255.255.255.0
```

(après avoir chargé le module de la carte bien sûr)

----------

## arlequin

Exact... 'ifconfig interface ip' suffit.

----------

## DuF

OK c'est bien ce qui me semblait, car qd t'as parlé de juste emerge iptables, me semblait que ça ne suffisait pas, comme sous gentoo on compile le noyau, ce n'est pas forcément sûr que la personne pense à le faire  :Smile: 

Sinon pour configurer une carte réseau tu as aussi le rc-scripts net.etho (que tu peux adapter) qui est très pratique.

----------

## yaubi

Petit détail qui a tout de même son importance : 

Pour partager ta connection à l'Internet, il faut activer la transmition des paquets entre les interfaces

```
echo 1 > /proc/sys/net/ipv4/ip_forward
```

Je me rappelle avoir perdu de nombreuses heures, dans mes débuts, à m'arracher les cheveux pour essayer de comprendre pourquoi ça ne marchait pas  :Smile:  ... ce qui est ridicule : jamais de s'arracher les cheveux n'a résolu de problèmes  :Wink: 

Yoann

----------

## sebweb

Une trés bonne doc sur l'installation et la configuration d'iptables :

http://lea-linux.org/reseau/iptables.php3

Et pour creer des super regle de sécurités on line :

http://easyfwgen.morizot.net/gen/

----------

## Dom

Merci beaucoup pour votre aide ! J'ai configuré ma machine Linux, mais j'ai du mal à configurer celle sous Windows. Je sais que ce n'est pas l'objectif de ce forum, mais est-ce que quelqu'un sais comment il faut faire ? (je n'ai jamais utilisé Windows en réseau, et je n'ose pas demander sur un forum windosien, ils vont me demander pourquoi j'utilise Linux   :Very Happy:  ).

----------

## HuGoBioS

sous win, il faut que tu specifie la gateway (a savoir l'ip de ta machine reliée au net)

il faut aussi que tu specifie les DNS de ton fai si tu veux pouvoir surfer

----------

## dioxmat

 *yaubi wrote:*   

> Petit détail qui a tout de même son importance : 
> 
> Pour partager ta connection à l'Internet, il faut activer la transmition des paquets entre les interfaces
> 
> ```
> ...

 

Histoire de pas avoir a le refaire:

edite /etc/conf.d/iptables , et si le forwarding ipv4 est a no... mets le a yes :)

ensuite, /etc/init.d/iptables mettre automatiquement le 1 laouilfaut.

----------

## sieurVLD

tiens voila un script qui te permet de rediriger les ports pour les jeux qui utilisent DirectX et pour jouer sur zone.

avec ca tu peux heberger des partis.

```

#! /bin/sh

PATH=/bin:/sbin:/usr/bin:/usr/sbin

IP_NET=`ifconfig ppp0 | grep "addr" | cut -d: -f2 | cut -d' ' -f1`

# $IP_NET est l'adresse de la carte qui va sur l'internet

# 192.168.0.2 est l'adresse du PC de jeux

# DirectX 7

iptables -t nat -A PREROUTING -p tcp -d $IP_NET --dport 2300:2400 -j DNAT --to 192.168.0.2:2300-2400

iptables -A FORWARD -p tcp -d 192.168.0.2 --dport 2300:2400 -j ACCEPT

iptables -t nat -A PREROUTING -p udp -d $IP_NET --dport 2300:2400 -j DNAT --to 192.168.0.2:2300-2400

iptables -A FORWARD -p udp -d 192.168.0.2 --dport 2300:2400 -j ACCEPT

iptables -t nat -A PREROUTING -p tcp -d $IP_NET --dport 47624 -j DNAT --to 192.168.0.2:47624

iptables -A FORWARD -p tcp -d 192.168.0.2 --dport 47624 -j ACCEPT

# DirectX 8

iptables -t nat -A PREROUTING -p udp -d $IP_NET --dport 2302:2400 -j DNAT --to 192.168.0.2:2300-2400

iptables -A FORWARD -p udp -d 192.168.0.2 --dport 2302:2400 -j ACCEPT

iptables -t nat -A PREROUTING -p udp -d $IP_NET --dport 6073 -j DNAT --to 192.168.0.2:47624

iptables -A FORWARD -p udp -d 192.168.0.2 --dport 6073 -j ACCEPT

# Zone

iptables -t nat -A PREROUTING -p tcp -d $IP_NET --dport 6667 -j DNAT --to 192.168.0.2:6667

iptables -A FORWARD -p tcp -d 192.168.0.2 --dport 6667 -j ACCEPT

iptables -t nat -A PREROUTING -p tcp -d $IP_NET --dport 28800:29000 -j DNAT --to 192.168.0.2:28800-2900 0

iptables -A FORWARD -p tcp -d 192.168.0.2 --dport 28800:29000 -j ACCEPT

iptables -t nat -A PREROUTING -p udp -d $IP_NET --dport 28800:29000 -j DNAT --to 192.168.0.2:28800-2900 0

iptables -A FORWARD -p udp -d 192.168.0.2 --dport 28800:29000 -j ACCEPT

```

remplace 192.168.0.2 par l'ip de ton PC windows et ppp0 par l'interface qui va vers le net.

apres avoir installer iptable tu copie ca dans un fichier puis un pti "chmod +x" au fichier.

tu l'execute et tu peux jouer, il faut l'executer apres chaque redemarage, mais comme c'est pas tres secure, ca vaut mieux comme ca !

moi je l'utilise pour jouer a Total Hanihilation : )

----------

## Dom

Merci ! Malheureusement, je n'ai toujours pas réussi à configurer le PC windows, mais je n'ai pas eu beaucoup de temps pour le faire et je finirais bien par y arriver... En fait, lorsque j'ouvre Internet Explorer, il cherche à se connecter à l'IP du PC linux,  mais il n'arrive pas à accéder à Internet. Il n'y a pas un moyen de vérifier si les deux ordis sont en mesure de "communiquer" ? Sinon, il ne faudrait pas que j'indique l'IP du PC windows quelque part dans un fichier de config ?

----------

## sieurVLD

Oui mais la : )

fait une recherche sur google pour installer et configurer ta carte sur windows !

si ie va chercher l'IP de ton router, c'est que dans ie tu as mis l'ip du router comme proxy.

pour vérifier la communication entre deux pc, la commande ping suffit, et elle est disponible sous win & linux !

si tu veux héberger des parties indique l'ip du PC win dans mon script, sinon la config décrite plus haut suffit.

A+

----------

## Dom

En fait, j'ai déjà recherché comment faire sur Internet, mais les méthodes que j'ai trouvé ne fonctionnent pas. Je viens de tester ping, et apparemment chaque machine n'arrive pas à envoyer un paquet à l'autre. Pourtant, les adresses IP semblent bien configurées, puisque un paquet envoyé par un ordi à l'adresse IP de ce même ordi est reçu correctement. Lorsque les deux machines sont sous Windows, le réseau fonctionne. Je vais recommencer tout depuis le début, et on verra bien...

----------

## DuF

t'aurais pas fait une erreur de netmask ?

Si tes interfaces réseaux ne sont pas dans le même sous réseau elles ne se verront jamais.

Peux-tu indiquer ici ta configuration réseau (@IP+netmask...) ?

----------

## Dom

L'IP de la machine linux c'est 192.168.0.1, netmask 255.255.255.0

Pour la machine windows, c'est 192.168.0.2, netmask idem

J'ai cru voir quelque part qu'il fallait indiquer l'adresse des machines du réseau dans /etc/hosts. Est-ce que c'est vrai, et si oui est-ce que mon problème pourrait venir de là ?

----------

## Dom

Ca y est, ça marche !!   :Very Happy: 

J'ai testé le réseau en bootant la machine windows avec Knoppix et ça fonctionnait, j'en ai donc déduit que ça devait venir de windows. J'ai réinstallé le pilote de la carte réseau et maintenant ça fonctionne... C'est ce qui fait le charme tout particulier de windows   :Confused: 

Merci à vous tous pour votre aide !

----------

## DuF

vraiment "particulier" comme charme  :Smile: 

----------

