Page 1 sur 1

[réseau] multiples config réseaux

Publié : lun. 07 janv. 2013, 19:26
par gael
bonjour,
j'aimerai utiliser un de mes ordis comme serveur dhcp, celui-ci a 4 cartes réseau
j'aimerai que eth0 soit connectée sur le routeur de mon provider
et que eth1 gére l'adressage IP sur les ordis du réseau

et que in fine internet puisse passer de eth0 à eth1

là ou mes soucis débutent c'est pour déclarer les deux cartes dans rc.conf

j'ai mis
interface=eth0
puis
interface=eth1
address=192.168.2.1
netmask=255.255.255.0
broadcast=192.168.2.255
gateway=192.168.2.1

au final je me retrouve avec uniquement eth1 de configuré

si vous pouvez me dire ce que je dois utiliser
j'ai cru comprendre que netcfg pouvait faire cela mais je ne suis pas sur

merci :)

Re: [multiples config réseaux]

Publié : lun. 07 janv. 2013, 19:57
par benjarobin
rc.conf ? Ce fichier n'existe plus, il n'y a plus aucun support d'initscript... On utilise maintenant systemd

Il te faut utiliser netcfg qui est la méthode supporté officiellement

Sinon je ne suis pas sûre de comprendre ce que tu veux faire. Quelle interface sera la gateway pour internet ? Tu ne peux en avoir qu'une seule.

Re: [multiples config réseaux]

Publié : lun. 07 janv. 2013, 20:24
par oktoberfest
En bel ascii art, je pense que @gael veut faire ça :

Code : Tout sélectionner

               -----------     eth0-----------eth1
Internet ------| Routeur |---------| Serveur |--------Réseau interne
               -----------         -----------
Son serveur faisant passerelle et serveur DHCP.

Re: [multiples config réseaux]

Publié : lun. 07 janv. 2013, 20:30
par benjarobin
Dans ce cas ces articles lui seront utiles Internet_Share (en) Partage_de_connexion (fr : moins complet de mon point de vue)

Re: [multiples config réseaux]

Publié : lun. 07 janv. 2013, 22:34
par gael
à ce que j'ai vu sur systemd pour automatiser la connexion d'une carte réseau au démarrage

Code : Tout sélectionner

https://wiki.archlinux.org/index.php/Network_Configuration#Using_a_static_IP_address
il faut créer un fichier de cette façon là

Code : Tout sélectionner

nano /etc/conf.d/network
et insérer ces informations

Code : Tout sélectionner

interface=eth0
address=192.168.1.200
netmask=255.255.255.0
broadcast=192.168.1.255
gateway=192.168.0.1
ensuite créer le fichier pour déclarer le service

Code : Tout sélectionner

/etc/systemd/system/network.service
avec ces infos là

Code : Tout sélectionner

[Unit]
Description=Wireless Static IP Connectivity
Wants=network.target
Before=network.target

[Service]
Type=oneshot
RemainAfterExit=yes
EnvironmentFile=/etc/conf.d/network
ExecStart=/sbin/ip link set dev ${interface} up
#ExecStart=/usr/sbin/wpa_supplicant -B -i ${interface} -c /etc/wpa_supplicant.conf # Remove this for wired connections
ExecStart=/sbin/ip addr add ${address}/${netmask} broadcast ${broadcast} dev ${interface}
ExecStart=/sbin/ip route add default via ${gateway}
 
ExecStop=/sbin/ip addr flush dev ${interface}
ExecStop=/sbin/ip link set dev ${interface} down

[Install]
WantedBy=multi-user.target
puis activer pour le démarrage

Code : Tout sélectionner

systemctl enable network
et démarrer le service

Code : Tout sélectionner

systemctl start network
donc j'imagine que pour une 2e carte réseau
il faut que je recommence cette manip avec deux autres fichiers
/etc/conf.d/network2
/etc/systemd/system/network2.service
?
merci pour le lien sur le partage internet c'est ça qu'il me faut à priori

Re: [multiples config réseaux]

Publié : mar. 08 janv. 2013, 00:30
par benjarobin
Non utilise netcfg qui est beaucoup plus adapté à ta situation...

Re: [multiples config réseaux]

Publié : mar. 08 janv. 2013, 11:30
par gael
ok en attendant j'ai activé manuellement les deux cartes,
la carte eth0 reliée à la borne recoit bien internet et son adresse est bien 192.168.1.200
sa carte eth1 reliée au hub (et autres PC's) est bien active en 192.168.2.1 et un autre ordi branché sur le hub a dynamiquement l'adresse 192.168.2.150
par contre pour rediriger les paquets de eth0 vers eth1 provenant d'internet j'ai ajouté sur 192.168.1.200 :

Code : Tout sélectionner

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

Code : Tout sélectionner

iptables -t nat -A POSTROUTING -s 192.168.2.0/16 -o eth0 -j SNAT --to-source 192.168.1.200
voici ce que j'ai dans mon fichier iptable

Code : Tout sélectionner

# Generated by iptables-save v1.4.16.2 on Tue Jan  8 11:36:20 2013
*nat
:PREROUTING ACCEPT [2:138]
:INPUT ACCEPT [2:138]
:OUTPUT ACCEPT [4:288]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.0.0/16 -o eth0 -j MASQUERADE
COMMIT
# Completed on Tue Jan  8 11:36:20 2013
j'ai essayé aussi ça

Code : Tout sélectionner

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
et au final

Code : Tout sélectionner

 iptables -A POSTROUTING -t nat -o eth0 -j SNAT --to 192.168.1.200
et

Code : Tout sélectionner

iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE
au final j'ai ça

Code : Tout sélectionner

iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
MASQUERADE  all  --  anywhere             anywhere            
SNAT       all  --  anywhere             anywhere             to:192.168.1.200
MASQUERADE  all  --  anywhere             anywhere            

en fait au bout de tout ça je me suis rendu compte sur l'ordi connecté sur le second réseau (192.168.2.150) son fichier resolv.conf est vide, et si j'ajoute manuellement le nameserver de mon provider, j'ai bien internet. Par contre si sur la machine je relance sa connexion il vide de nouveau ce fichier ....
du coup j'ai fait

Code : Tout sélectionner

chattr +i /etc/resolv.conf