Existe-t-il un protocole spécifique utilisé pour la découverte du réseau?
Je cherche à coder ceci dans un projet java existant. Actuellement, j'utilise un scanner de port pour gérer l'affaire, mais je cherche à échanger cela pour quelque chose qui peut me donner un peu plus d'informations. Si possible, je voudrais numériser pour découvrir la machine et tirer l'Ip addr, le nom d'hôte, MAC addr, NIC marque/modèle, OS, et tout ce que je peux obtenir.Découverte du réseau par programme
Répondre
Il n'y a pas un seul protocole qui fera tout cela pour vous. J'ai dû faire exactement cela et, fondamentalement, la meilleure approche consiste à utiliser une combinaison d'heuristiques pour localiser, analyser et croiser les nœuds et la topologie du réseau. Voici les sources de données que j'ai utilisé:
- traceroute vous permet d'identifier les appareils de pointe et des routeurs dans le réseau
- Port-scanner vous permet d'identifier quels services sont en cours d'exécution sur chaque nœud
- SNMP vous permet de détecter le type de périphérique, ainsi que toutes ses interfaces réseau, autres adresses IP, l'adresse IP des périphériques connectés à chaque port sur les commutateurs, la table de routage, la table de processus, la configuration réseau, etc. C'est la meilleure source de données, mais nécessite le n ode exécuter un serveur snmp (installé par défaut sur Windows et la plupart des distributions Linux) et avoir des informations d'identification.
- WMI pour les fenêtres hôtes, fournira à peu près les mêmes informations que le protocole SNMP
Here est une ressource accademic je déterré tout en travaillant sur mon mappeur de topologie. J'espère que ça va aider. Bonne chance!
Vérifiez nmap
pour ce qu'il peut. C'est scanner de réseau, peut scanner avec ARP, TCP-SYN, et beaucoup d'autres techniques de reniflement. Il contient également une grande base de données de différentes empreintes digitales de machines, ce qui lui permet de deviner quel système d'exploitation/version est exécuté. WBEM (similaire à WMI sous Windows) peut être utilisé pour numériser des ordinateurs Unix et d'autres périphériques.
oui, je suis familier avec nmap. L'une des fonctionnalités que je cherche à obtenir plus d'informations à implémenter est de déterminer MAC addr de l'analyse. Des idées sur où commencer? – Nick
@Nick Je pense que la façon la plus facile de déterminer MAC est de faire un scan ARP (Address Resolution Protocol) (vérifier l'utilitaire 'arping'), ou simplement essayer de pinger l'adresse et vérifier la table ARP de votre système. Gardez à l'esprit que vous ne pouvez obtenir que des adresses MAC d'hôtes dans votre réseau local (ou seulement 1 segment). – MBO
Bien sûr, seulement si l'instrumentation WBEM est installée ...
WBEM fonctionne même pour les serveurs ESX (i) s'il y est activé. Dans le cas contraire, vous pouvez également utiliser SSH pour vous connecter par programme aux ordinateurs Unix et émettre des commandes système pour extraire les informations dont vous avez besoin.
Il y a une belle bibliothèque Java pour WBEM appelé SBLIM Il y a beaucoup de bibliothèque Java pour Telnet et SSH là
- 1. Découverte d'instances d'un programme sur un réseau
- 2. Réseau Découverte d'une application pour un réseau pair-à-pair
- 3. Blocage du programme réseau
- 4. Mesure du trafic réseau par programme sur l'iPhone
- 5. Obtenir par programme des statistiques réseau par processus sur Windows?
- 6. Découverte du type de mémoire
- 7. écrire un outil de découverte de réseau dans Objective-C
- 8. Découverte si une visionneuse par défaut existe
- 9. Ajouter par programme "Mon emplacement réseau" pour le site FTP?
- 10. Ajouter un réseau wifi par programme sur le BlackBerry
- 11. Exécutez le programme C# .NET à partir du partage réseau
- 12. L'enfilage de l'application réseau C# provoque le blocage du programme
- 13. Découverte de partage de fichiers dans Cocoa
- 14. Découverte de nœud sans fil
- 15. Émulation du joystick par programme
- 16. Comment puis-je consommer les données du panneau réseau Firebug par programme?
- 17. Remoting automatique découverte du serveur. Diffusion ou non?
- 18. comment trouver l'état du réseau
- 19. Découverte WCF: exception d'interface introuvable
- 20. Découverte de rôles de projet
- 21. Algorithme de schéma de construction de réseau par snmp
- 22. Dump du programme par programme/JDI (Java Debugger Interface)
- 23. Détection automatique du réseau à l'aide de SNMP et .NET
- 24. Découverte de ressource SOA et découverte de service
- 25. Accès par programme à l'historique du navigateur
- 26. Modifier l'utilisateur du service Windows par programme
- 27. Installation du service Windows par programme
- 28. Modification par programme du langage WinXP
- 29. Configuration par programme du client WCF [Silverlight]
La découverte du réseau de quoi? À quelles machines l'ordinateur hôte est-il connecté? D'autres machines exécutant un certain programme de serveur? Peux-tu être plus précis? –
Avec une carte topologique? cela va s'avérer une tâche très intéressante ... – jldupont