[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[HS]Problème de multicast curieux.



Bonjour,

Pour des besoins de système autoconfigurable, j'ai fait un paquet compsé de
deux programmes:
* coucou -a IP -p N message
diffuse en continue et en multicast sur l'adresse IP et le port N le message
message, par exemple
coucou -a 225.0.0.37 -p 2012 10.0.1.92
envoie en continue l'adresse 10.0.1.92 sur l'adresse multicast 225.0.0.37
(2012), ce qui est confirmé par tcpdump.

* ecoute -a 225.0.0.37 -p 2012
fait l'opération inverse en écoutant sur cette adresse. Exemple

$ ecoute -a 225.0.0.37 -p 2012
10.0.1.92
$ 

Bon. Le problèe est le suivant, le réseau sur lequel je travaille est un
réseau 10.0.0.0/8 (ainsi le serveur a comme adresse 
eth0      Link encap:Ethernet  HWaddr 00:01:6c:56:9c:33  
          inet adr:10.0.1.92  Bcast:10.255.255.255  Masque:255.0.0.0

mais du fait d'utilisateurs négligents, certaines IP attribuées par le DHCP
sont mis également en dur sur des machines (imprimantes par exemple). Bref,
sur mes machines qui s'autoconfigurent (pour se mettre sur un VPN, mais c'est
un autre pbm), j'ai fait un script qui en cas de coupure réseau, leur donne
une IP statique (10.210.0.???N sur le même réseau). Depuis je n'ai plus aucun
souci de connexion (la plage choisie est vide), mais ce que je comprends pas
c'est que
$ ecoute -a 225.0.0.37 -p 2012
ne renvoit strictement rien sur une machine lorsque l'IP a été forcée.
En clair, avec l'IP attribuée par le DHCP,  ecoute -a 225.0.0.37 -p 2012
renvoit bien 10.0.1.92, dès que l'IP est mise à 10.210.0.56 (mettons), toutes
les connexions réseaux se passent très bien, le VPN fonctionne, etc MAIS 
$ ecoute -a 225.0.0.37 -p 2012
ne renvoit plus rien. Un tcpdump montre les lignes
17:51:41.912675 IP 10.0.1.92.50934 > 225.0.0.37.2012: UDP, length 9
mais le programme ne les capture plus. 
En fait ecoute fonctionne à tous les coups sur des machines ayant des IPs
10.0.1.??, sur la plupart des machines ayant des IPs donnés par DHCP en
10.0.0.?? et sur aucune des machines sur 10.210.0.???. Ce phénomène est
réversible, forcer une IP en 10.0.1.??  refait marcher le programme ecoute. 
Je ne comprends pas la différence de comportement,

Si quelqu'un a une explication, je suis preneur.


François Boisson

PS: Ces programmes se trouvent dans le paquet coucou dont les sources sont sur

deb-src http://boisson.homeip.net/sources/ ./
deb http://boisson.homeip.net/debian/ squeeze divers
(ou wheezy)


Reply to: