annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 
cancel
744
Visites
5
Compliment
3
Réponses

mDNS C++

jeremyczaicki
Spotlight
Spotlight

Bonjour, 

Je développe une application dans Qt et je souhaite ajouter une fonction de découverte réseau des switchs cisco. Je n'ai aucune idée de comment faire ceci! J'ai tout de même entendu parler du mDNS, mais comment l'implémenter ? l'interpréter ? des exemples de code ? 

 

vous pouvez m'aider ? 

 

merci d'avance

3 RÉPONSES 3

Francesco Molino
VIP Alumni
VIP Alumni
Bonjour

Le service mdns n'est pas obligatoirement activé sur les devices, certains devices plus anciens n'ont pas ce service.
Je pense que la solution serait de commencer par des pings pour récupérer la mac address au travers de la table arp et de déduire le constructeur en fonction de l'OUI mac.
Vous pouvez aussi utiliser des outils déjà existant en s'interfacant avec. Regardez sur github, vous trouverez certainement quelque chose qui puisse vous starter.

Thanks
Francesco
PS: Please don't forget to rate and select as validated answer if this answered your question

Merci pour l’information, mais je souhaite utiliser des série sg300, sg350, en obligeant l’utilisateur à activer le service mDNS.

Merci pour votre proposition, mais donc par exemple, si l’adresse MAC commence par 00:ee:ab, on sait discerner qu’il s’agit d’un produit cisco, mais comment maintenant savoir de quel type de produit ?(sg350, sg300 par exemple)

merci d’avance.

si vous accès à la mib snmp, vous pouvez accéder à l'oid spécifique pour lire le modèle de switch exact.
Je ne connais pas l'oid de tête mais en checkant sur le site de Cisco, je suis persuadé que vous pourrez le trouver.
Pour la partie mdns, c'est au travers du protocole bonjour. Avec un outil de discovery vous pourrez voir un nom dns contenant le modèle de switchs mais n'ayant pas de switch SG, je ne peux pas confirmer le résultat dns attendu.
Voici un tool Python qui peut surement vous aider :
https://github.com/jstasiak/python-zeroconf

Thanks
Francesco
PS: Please don't forget to rate and select as validated answer if this answered your question