[Réglé] Conflit Carte ethernet

Bonjour à tous,

après de l’aide pour la création d’un réseau, je viens vous soliciter pour un conflit entre mes carte ethernet.

voici mon problème:
Suite à l’installation d’une deuxième carte réseau, voir le sujet suivant (pour vous permettre de comprendre plus facilement)

http://forum.debian-fr.org/viewtopic.php?f=3&t=12472

Les personnes extérieur à mon réseau n’arrivent plus à se connecter sur mon serveur.

Quand je débranche le cable qui relie mon serveur au routeur (lui même connecté à internet), et que je redémarre la machine, je n’ai pas de problème, l’accès de l’extérieur se fait sans problème. Mais dès que je rebranche le cable relié au routeur, j’ai une connexion via le réseau sans problème, mais il n’y a plus d’accès de l’extérieur.

J’ai l’impression que dès que le cable réseau est branché, il veut passer par eth1 pour avoir sa connexion internet et bloque la connexion via eth0.

Voici après un ifconfig

eth0      Lien encap:Ethernet  HWaddr 00:20:35:67:EB:35
          adr inet6: fe80::220:35ff:fe67:eb35/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:796 errors:0 dropped:0 overruns:0 frame:0
          TX packets:954 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          RX bytes:64037 (62.5 KiB)  TX bytes:880874 (860.2 KiB)

eth1      Lien encap:Ethernet  HWaddr 00:14:C1:40:B2:C5
          inet adr:192.168.2.3  Bcast:192.168.2.255  Masque:255.255.255.0
          adr inet6: fe80::214:c1ff:fe40:b2c5/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:88 errors:0 dropped:0 overruns:0 frame:0
          TX packets:105 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          RX bytes:11543 (11.2 KiB)  TX bytes:17325 (16.9 KiB)
          Interruption:169 Adresse de base:0xe800

lo        Lien encap:Boucle locale
          inet adr:127.0.0.1  Masque:255.0.0.0
          adr inet6: ::1/128 Scope:Hôte
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:652 errors:0 dropped:0 overruns:0 frame:0
          TX packets:652 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:0
          RX bytes:1246726 (1.1 MiB)  TX bytes:1246726 (1.1 MiB)

ppp0      Lien encap:Protocole Point-à-Point
          inet adr:81.xxx.xxx.xx  P-t-P:81.xxx.xxx.x  Masque:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:3
          RX bytes:262 (262.0 b)  TX bytes:54 (54.0 b)

Voici mon fichier interface

auto lo dsl-provider eth0
iface lo inet loopback

iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider



#auto eth0

iface eth0 inet manual




auto eth1
iface eth1 inet dhcp

Je n’arrive pas à expliquer le problème comme il faut, mais si vous avez des questions n’hésitez pas.

eth0 en dhcp, pas mieux ?

Ne surtout pas toucher à eth0 qui n’a rien demandé !

Le problème vient en revanche de eth1 qui est en DHCP. Le serveur DHCP (le routeur) lui refile une adresse de passerelle (lui-même) et la machine crée donc une route par défaut sur eth1 via le routeur, qui entre en concurrence avec la route par défaut de l’interface PPP. Un “route -n” ou “ip route” confirmera la présence des deux routes par défaut. Ce n’est pas un conflit de cartes ethernet mais de routes par défaut.

Quand une machine a deux routes par défaut de même métrique (priorité), il doit en choisir une, la loi de Murphy s’en mêle et c’est jamais la bonne qui est choisie. Si les paquets de réponse passent par le routeur, celui-ci modifie l’adresse source (masquerading/NAT) et du coup le client ne la reconnaît pas. Boum. Voire le routeur refuse les paquets de réponse du serveur parce que leur adresse source (celle de l’interface PPP) ne correspond pas au sous-réseau local. Le NAT et le routage asymétrique ne font pas, mais alors pas du tout bon ménage.

Quelques solutions possibles :

  • Configurer eth1 en statique sans définir de passerelle (pas d’option gateway). Simple et efficace. En plus à titre personnel je trouve que l’adresse IP statique sied mieux à un serveur.

  • Modifier /etc/dhclient.conf pour ignorer l’option “routers” transmise par le serveur DHCP. Risqué, c’est le genre de truc qu’on oublie et le jour où on branche la babasse ailleurs on se demande pourquoi elle chope pas de passerelle.

  • Modifier les commandes du genre “route add default gw $router” dans /etc/dhclient-script pour affecter à la route par défaut créée par le client DHCP une métrique supérieure à zéro, de sorte qu’elle ait un priorité inférieure à la route par défaut de l’interface PPP. Raffinement ultime, si la connexion PPP du serveur est coupée, celui-ci aura quand même un accès de secours à internet via le routeur (mais sera inaccessible en tant que serveur depuis internet, faut pas rêver).

  • Faire du routage basé sur l’adresse source, mais ça devient un peu compliqué pour pas grand chose.


C’est mon 100e message ! :slightly_smiling:

Yop Pascal bravo pour ton 100 ème post :smiley:

De toute tes techniques, j’ai essayé la plus simple; mettre ma carte en ip static.

auto lo dsl-provider eth0
iface lo inet loopback

iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider



#auto eth0

iface eth0 inet manual

auto eth1
iface eth1 inet static
	address 192.168.2.10
	netmask 255.255.255.0

Avec le cable branché en Eth1 , j’ai bien le réseau local placé sur l’ip statique 192.168.2.10, mais rien du tout via le net. Donc le fait d’enlever la passerelle, enlève bien le fait que ne plus avoir internet via eth1.
Malheureusement quand les deux cables (eth0 et eth1) sont branché, je n’ai que le réseau et pas internet. mais si je déconnecte le cable eth1 … j’ai internet…

Voici mon ifconfig

eth0      Lien encap:Ethernet  HWaddr 00:20:35:67:EB:35
          adr inet6: fe80::220:35ff:fe67:eb35/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1465 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1683 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          RX bytes:157696 (154.0 KiB)  TX bytes:1588856 (1.5 MiB)

eth1      Lien encap:Ethernet  HWaddr 00:14:C1:40:B2:C5
          inet adr:192.168.2.10  Bcast:192.168.2.255  Masque:255.255.255.0
          adr inet6: fe80::214:c1ff:fe40:b2c5/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:128 errors:0 dropped:0 overruns:0 frame:0
          TX packets:387 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000
          RX bytes:8086 (7.8 KiB)  TX bytes:501728 (489.9 KiB)
          Interruption:169 Adresse de base:0xe800

lo        Lien encap:Boucle locale
          inet adr:127.0.0.1  Masque:255.0.0.0
          adr inet6: ::1/128 Scope:Hôte
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:944 errors:0 dropped:0 overruns:0 frame:0
          TX packets:944 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:0
          RX bytes:1845864 (1.7 MiB)  TX bytes:1845864 (1.7 MiB)

ppp0      Lien encap:Protocole Point-à-Point
          inet adr:81.xxx.xx.xxx  P-t-P:81.xxx.xx.x  Masque:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:88 errors:0 dropped:0 overruns:0 frame:0
          TX packets:99 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:3
          RX bytes:10041 (9.8 KiB)  TX bytes:15244 (14.8 KiB)

un petit route -n

Destination     Passerelle      Genmask         Indic Metric Ref    Use Iface
81.xxx.xx.x    0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 ppp0

Voilà.

J’ai aussi essayer de trouver le fichier "dhclient-script " mais je ne le trouve null part

Merci pour l’aide

Bon :blush:

ça a l’air de fonctionner…

je laisse le post en attente un ou deux jours pour voir si j’ai encore des problèmes, et au cas ou vous auriez vu une erreur dans mes modifications.

merci

Tout me semble correct dans la configuration des interfaces et la table de routage. C’est pourquoi j’étais perplexe que ça ne fonctionne toujours pas.

Edit :
Quant aux fichiers dhclient.conf et dhclient-script, ils ne concernent que le client DHCP dhclient en version 2 (paquet dhcp-client) ou 3 (paquet dhcp3-client), et leur localisation dépend de la version (dpkg -L ).

Bon je vais mettre Réglé

Merci encore PascalH