Je viens de régler mon problème en passant par le BIOS!
J'ai déclaré une IRQ (la 10) ur=tilisé par les ports ISA.
Ca a marché!

Pourquoi alors, c'était bon pour window$ et pas pour LINUX?

nono a écrit:
Le Dimanche 8 Décembre 2002 14:16, vous avez écrit :
  
Si je comprends bien:
Ta Station moyen-Linux (celle de win98) d'adresse 192.168.1.10 est en
mdk9.0 . arp de moyen-Linux voit bien les @MAC des stations gros-Linux
(192.168.1.1) et win95 (192.168.1.100) lorsque ces 2 dernières ont pingué
ta moyen-Linux.
      
Non, pas les mac adresse. le PC moyen LINUX (encore nommé windobe) ne
fait que :
[]#arp -a
? (192.168.1.1) at <incomplete> on eth0

Losque le pc win95 tourne et lui fait un ping, il fait la me ligne avec
192.168.1.100

    
Ta carte 3c509 fonctionne bien sous win98.
      
Sans problème. D'ailleurs, elle va reservir... pour avoir le réseau!

    
Pour l'instant, je ne sais pas mais:
Un arp -a sur ta gros-Linux (ou ta win95) voit-il ta moyen-Linux ?
-> tu dois obtenir 192.168.1.10 = @MAC de moyen-Linux
      
? (192.168.1.5) at <incomplete> on eth1
? (192.168.1.10) at <incomplete> on eth1
ssy-gw-05-213245103001.chello.fr (213.245.103.1) at 00:00:77:95:5C:E4
[ether] on eth0
? (192.168.1.100) at 02:60:8C:7D:00:85 [ether] on eth1

Tient, c'est quoi ce 192.168.1.5 ?????
    
Je ne sais pas, mais cela n'a rien foutre ici si tu n'as pas de station en 
192.168.1.5 sur ton réseau.
En tout cas, ta win95 (ptit-pc) est bien vue sur ta carte eth1 de gros-linux.
  
Je te passe le résultat dans un fichier joint : dmesg

    
 >Un dmesg sur ta moyen-linux voit-il ta carte 3c309 ?

Ta carte réseau est vue comme une 3c509 (et non 3c309). La sortie est le 
Twisted Pair (c'est Ok). L'@MAC est 00 60 8c b6 c1 fe. La carte utilise 
l'IRQ10. Ta carte travaille en half-duplex ce qui est normal (connexion sur 
le hub).
eth0: 3c5x9 at 0x300, 10baseT port, address  00 60 8c b6 c1 fe, IRQ 10.
3c509.c:1.18c 1Mar2002 [EMAIL PROTECTED]
http://www.scyld.com/network/3c509.html
eth0: Setting 3c5x9/3c5x9B half-duplex mode if_port: 0, sw_info: 1310
eth0: Setting Rx mode to 1 addresses.
Par contre tu n'as pas ces infos (tirés de mon dmesg):
eth0: Promiscuous mode enabled.
device eth0 entered promiscuous mode



  
As-tu la possibilité de lancer un tcpdump sur ta gros-Linux et démarrer ta
moyen-linux, pour voir les trames et paquets qui sont balancés sur le
réseau au démarrage ? Si tu fais la manip, n'allumes pas ta win95 (il y
aura moins de trace à éplucher).
      
C'est fait dans le  fichier joint tcpdump
    

Gros-Linux vers Moyen-Linux 
Lorsque tu fais "ping 192.168.1.10":
Visiblement, ta moyen-linux reste muette aux requêtes arp de ta gros-linux:
"13:47:54.509041 arp who-has 192.168.1.10 tell troumad.maison", la question en 
terme francisé est:
Qui a l'adresse IP 192.168.1.10 ?  demande troumad.maison.

Ce à quoi moyen-linux devrait répondre en donnant son @MAC, du genre:
 "arp reply moyen-linux is-at 000:60:8c:b6:c1:fe" . 
C'est à dire "C'est moi 00:60:8c:b6:c1:fe" . Mais moyen linux ne répond pas 
(la réponse ne figure pas dans ton tcpdump ni dans ethereal).

Du coup Gros-linux ne peut pas lui envoyer les trames car elle ne connait pas 
l'adresse MAC de son detinataire (celle de moyen-linux).

Moyen-Linux vers Gros-Linux 
Lorsque c'est ta moyen-linux qui émet une requête arp, ta gros-linux répond 
bien. Mais pour autant, les paquets ip (sensés contenir tes requêtes icmp 
écho (lorsque tu fais ping 192.168.1.1) ne sont pas envoyés sur le réseau par 
ta moyen_linux.  Je pense que bien que moyen-linux reçoit les réponses arp, 
elle n'en tient pas compte. Elle ne remplit pas son cache arp (d'où le:   "? 
(192.168.1.10) at <incomplete> on eth1"  d'après ta commande  arp-a).
Là encore, ta moyen-linux ne connaissant pas l'@MAC de gros-linux (puisqu'elle 
ne remplit pas son cache malgré la réponse arp), moyen-linux n'a aucun moyen 
de formater une trame contenant l'@MAC de gros-linux...et c'est l'échec !!! 
Le message icmp (ping) ne peut pas être émis.

  
Ensuite, tu nous balances le fichier sur la liste ou
en privée pour examen.
      
Merci!

    
Si tu as ethereal sur ta gros-Linux, refais la manip
et envoie moi le fichier (une analyse sous ethereal est plus simple
qu'avec tcpdump).
      
Je viens de le récupérer. Et je fais l'essai. LE fichier sera ethereal
    
Ok, merci c'est beaucoup plus précis et convivial que tcpdump.

  
Pour chaque essai, j'ai démarrer LINUX sur le PC moyen. Fait un ping sur
le gros puis un sur le moyen.
Personnellement, j'ai l'impression que les deux engins n'arrivent pas à
se comprendre, comme si le protocole était différent!
    
Les protocoles sont identiques mais le cache arp de moyen-linux ne remplit pas 
son rôle.

Je te propose un essai de debbug. Tu vas forcer ton cache arp (inscrire en 
statique) à apprendre l'@MAC de ta Gros-Linux sur ta moyen-linux. Si ça 
marche, ta moyen linux n'émettra plus de requête arp vers gros-linux car son 
cache sera rempli (le protocole arp ne lui sera plus nécessaire pour 
apprendre l'@MAC de Gros-linux, elle aura déjà l'info). Ensuite tu contrôles 
avec ping 192.168.1.1 . Si ça marche, il faudrait pouvoir mettre cette 
commande dans un scripte de démarrage mais ça, je ne sais pas faire (peut 
être une possibilité avec le commutateur "-f" voir man arp) .
Voici la commande sur ta moyen-linux pour forcer le cache (tu recopies texto, 
j'ai mis les bonnes adresses ip et mac):
[root@localhost test]# arp -i eth0 -s 192.168.1.1 00:60:08:11:51:d7
Tu vérifies que le cache est bien rempli:
[root@localhost test]# arp -a
? (192.168.1.1) at 00:60:08:11:51:d7 [ether] PERM on eth0
[root@localhost test]#
Si un ping 192.168.1.1 ne fonctionne pas, je deviens péssimiste :-((

Si un ping 192.168.1.10 ne fonctionne pas non plus
Tu peux aussi forcer le cache arp sur Gros-linux (mais je ne pense pas que 
cela changera grand chose):
 [root@localhost test]# arp -i eth1 -s 192.168.1.10 00:60:8c:b6:c1:fe
Tu vérifies le cache:
[root@localhost test]# arp -a
? (192.168.1.10) at 000:60:8c:b6:c1:fe [ether] PERM on eth1
[root@localhost test]#

Une entrée statique de ton cache restera tant que tu ne rebootes pas ta 
machine ou tant que tu ne l' effaces pas par la commande:
[root@localhost test]# arp -i eth0 -d 192.168.1.1
[root@localhost test]# arp -a
? (192.168.1.1) at <incomplete> on eth0
[root@localhost test]# (Tu attends une petite minute et tu revérifies que le 
cache soit vide).
[root@localhost nono]# arp -a
[root@localhost nono]#

Normalement un ping dans les deux sens devrait fonctionner si ce n'est qu'un 
problème de cache. Cela n'est certes pas satisfaisant dans la mesure où cela 
ne règle pas le problème de la carte qui fonctionne mal (ou est mal pris en 
compte par moyen-linux).

Si tu veux que ta moyen-linux cause avec win95, il va falloir aussi entrer en 
statique l'@MAC de ta win95 dans le cache de arp de moyen-linux. Pour obtenir 
l'@MAC de ta win95, la commande est soit "ipconfig /all" soit "winipcfg" et 
cliquer sur détail si mes souvenirs sont bons.


  
Si tu peux faire qqc MERCI!
    
À défaut de t'apporter une véritable solution, cela peut au moins t'aider à 
comprendre le fonctionnement des résolutions d'adresses physiques (MAC) et 
logique (IP).

J'attends des nouvelles de tes essais.
nono



  


--
Amicalement vOOotre

Troumad
Bernard SIAUD
troumad.free.fr : AD&D, mathématiques, WEB, Electronique et sectes.

Répondre à