Les Forums

Les Forums

Les forums sont fermés. Ils restent présent pour consultation et archivage.
Vous pouvez désormais poser vos questions directement dans les commentaires en bas de chaque page du site.
Alors n'hésitez pas à participer

Qui interprète les paquets ARP ?

Bonsoir, c’est re-moi (cheese)

Un cas que je ne comprend pas, et qui m’éclaire surtout sur mes lacunes au sujet de ARP.

Je re-expose la configuration déjà un peu présentée dans un autre message.

Trois machine A, B, C. A est sous Windows XP, B et C sont des machines virtuelles sous Windows 98 [i:b08a4a44b2](machines qui tournent sous QEMU).

Sur la machine A, deux interfaces Tap sont installées, Tap1 et Tap2 [i:b08a4a44b2](pilote fourni avec OpenVPN).

Tap1 a l’adresse 192.168.0.1
Tap2 a l’adresse 192.168.0.2
La machine C a l’adresse 192.168.0.3

Quand je fais un ping 192.168.0.2 depuis la machine C, tout fonctionne, et le snifeur réseau me montre des requêtes ARP, du genre « who has 192.168.0.2 tell 192.168.0.3  » et « 192.168.0.2 is at [adresse MAC] .... blablabla  », et une fois l’adresse résolue, le ping fonctionne.

Ok.

Mais si depuis la machine C je fais un ping 192.168.0.1, il y a des émissions de paquets « who has 192.168.0.1 tell 192.168.0.3  », mais qui ne reçoivent jamais de réponse, et le ping échoue.

En fait, qui interprète les paquets ARP ? Les cartes [i:b08a4a44b2](interfaces) ou le système d’exploitation ?

les deux machines B et C ont le même masque de sous réseau 255.255.255.0. Pourquoi alors la requête ARP qui est pourtant un broadcast, semble ne jamais atteindre l’interface 192.168.0.1 ?

Quelles sont les conditions à remplir pour qu’un broadcast ARP soit effectivement transmis à toutes les interfaces ? Le fait que ce soit un broadcast ne suffit pas ?

J’ai tenté de désactivé le pare-feu [i:b08a4a44b2](non sans avoir débranché mon modem connecté au net au préalable), pensant que c’était lui qui bloquait peut-être quelque chose, mais ça n’y a rien changé.

Quelle est la chose que je ne comprend pas ?
Suppositions…

J’étais en train de me dire que peut-être que l’ARP ne fonctionne que entre deux cartes Ethernet exclusivement. Et comme dans le cas de l’exemple, l’interface 192.168.0.1 et 192.168.0.2 n’ont pas de connexion Ethernet entres elle, alors peut-être que c’est ce qui explique que ça ne fonctionne pas. C’est ce qui expliquerait que le broadcast ARP puisse aller de 192.168.0.3 à 192.168.0.2 mais reste bloqué là sans pouvoir aller plus loin ? C’est bien ça ?

Mais alors que faut-il à la machine 192.168.0.3, reliée à l’interface 192.168.0.2, pour qu’elle puisse envoyer quelque chose à l’interface 192.168.0.1 ? N’est-ce pas le poste Windows XP qui devrait rediriger naturellement les paquets reçus sur 192.168.0.2 et ayant 192.168.0.1 pour destinataire ? [i:9781004607](vu que les deux interfaces 192.168.0.1 et 192.168.0.2 sont installée chez lui). Pourtant quand je fais ping 192.168.0.1 depuis 192.168.0.3, ça ne marche pas.

En fait, est-ce que ce ne serait pas l’interface Ethernet elle même qui répond aux ARP ? Mais alors, comment connait-elle son IP ? Elle connait sont adresse MAC, c’est sûre… mais son IP, comment la connait-elle ?

P.S. Même avec les partages de dossier, qui n’est pas basé sur le même protocole je crois, la machine virtuelle C ne voit pas la machine virtuelle B, et réciproquement, alors que la machine A voit bien B et C.