Lister les interfaces réseau physiques

Lister les interfaces réseau physiques - C++ - Programmation

Marsh Posté le 21-12-2009 à 13:47:07    

Salut !
 
J'ai posté un message il y a quelque temps pour savoir comment récupérer la liste des interfaces réseau ; j'utilise comme l'on m'a conseillé la fonction  
GetAdaptersInfo() qui me satisfait (presque) pleinement.
La liste des interfaces que me renvoie cette fonction est la même que lorsque je fais un ipconfig ; or maintenant j'aimerais pouvoir discriminer les interfaces physiques des interfaces virtuelles (type vmware, virtualbox...).
 
Jusqu'à maintenant je fonctionne avec le nom mais ce n'est pas propre et surtout ce n'est pas universel. Y'a-t-il un moyen pour windows de distinguer si une interface est associée à un périphérique matériel ?
 
Merci pour vos réponses !

Reply

Marsh Posté le 21-12-2009 à 13:47:07   

Reply

Marsh Posté le 21-12-2009 à 23:59:18    

Y'a-t-il un moyen pour windows de distinguer si une interface
est associée à un périphérique matériel ?

 :)  
je ne crois pas , (windows XP ?) , en tout cas  
windows n ' a pas besoin de faire ca (c'est pas commun)
.... il a une loopback (interface virtuelle) , tu peut ajouter d'autre  
(mais ce n'ai pas standard/commun )
 
# tu cherche par interface GUID dans le registre , sys/ENUM
( virtual sous Root/Net , hardware sous le 'Bus'/ID du HW )
(Bus = Pci par exemple.) , je crois qui
il ya des function pour chercher ses chose (ca se fait plutot par les drivers)
 
# 2em , les virtual on une address 'mac' avec byte(s) reservé
pour indiquer que c'est software .....?? :??:  (je ne sai pas , verifiez)

Reply

Marsh Posté le 22-12-2009 à 09:09:31    

Merci pour ces pistes, je vais fouiller et je reviendrai faire mon rapport ;) N'hésitez pas à formuler d'autres idées !

Reply

Marsh Posté le 22-12-2009 à 11:01:26    

Effectivement dans HKLM\SYSTEM\CurrentControlSet\Enum\Root\NET j'ai une liste d'interfaces virtuelles ; la valeur de "driver" correspond à l'interface dans HKLM\SYSTEM\CurrentControlSet\Control\Class\<valeur de driver>.
 
Cependant, les interfaces virtuelles de vmware ne sont pas référencées ici ; même si c'est le cas pour les loopback de MS, ou encore virtualbox ou checkpoint.
 
En ce qui concerne les adresses mac, je n'ai rien trouvé de probant même si ton idée est très plausible.

Reply

Marsh Posté le 22-12-2009 à 12:00:35    

__tomjost a écrit :


 
# tu cherche par interface GUID dans le registre , sys/ENUM
( virtual sous Root/Net , hardware sous le 'Bus'/ID du HW )
(Bus = Pci par exemple.) , je crois qui
il ya des function pour chercher ses chose (ca se fait plutot par les drivers)


il y a  http://msdn.microsoft.com/en-us/library/dd406734.aspx qui peut servir, notemment les SetupDiEnum...?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed