Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
MAC Address Changes
Message
De
10/08/2016 02:43:51
 
 
À
09/08/2016 17:38:57
Information générale
Forum:
Hardware
Catégorie:
Cartes d'ordinateur
Divers
Thread ID:
01639275
Message ID:
01639296
Vues:
74
>>>>>Hi,
>>>>>
>>>>>I use some code to generate a number based on a PC's hard disk serial number and the MAC address. Recently, I have one client out of a couple hundred that this number changes on sporadically. I wrote a program to display what the serial number and MAC address are and the MAC address has changed from a couple weeks ago. The client says the NIC has not been changed.
>>>>>
>>>>>I thought the MAC address was tied to the NIC. What could cause this to change?
>>>>
>>>>How are you fetching the MAC address?
>>>
>>>VFP code:
>>>
>>>DECLARE INTEGER GetAdaptersInfo IN iphlpapi ; 
>>>STRING @pAdapterInfo, LONG @pOutBufLen 
>>>
>>>LOCAL lcBuffer, lnBufsize 
>>>lnBufsize = 0 
>>>lcBuffer = "" 
>>>= GetAdaptersInfo(@lcBuffer, @lnBufsize) 
>>>lcBuffer = Repli(Chr(0), lnBufsize) 
>>>
>>>IF GetAdaptersInfo(@lcBuffer, @lnBufsize) <> 0 && ERROR_SUCCESS 
>>>* =MESSAGEBOX('MSI Card Not Found',64)
>>>ENDIF 
>>>
>>>LOCAL lnAddrlen, lcAddress, ii
>>>lnAddrlen = Asc(SUBSTR(lcBuffer, 401, 1)) 
>>>lcAddress = SUBSTR(lcBuffer, 405, lnAddrlen) 
>>>lcThisID = ''
>>>lcThisHex = ''
>>>
>>>FOR ii = 1 TO lnAddrLen
>>>	lcThisID = lcThisID + ;
>>>			IIF(ii>1, ',' ,'') + ;
>>>			ALLTRIM(STR(ASC(SUBSTR(lcAddress,ii,1))))
>>>	
>>>	lcThisHex = lcThisHex + ;
>>>			IIF(ii>1,':','') + ;
>>>			RIGHT(TRANSFORM(ASC(SUBSTR(lcAddress,ii,1)),'@0'),2)
>>>ENDFOR
>>> 
>>>RETURN lcThisHex
>>
>>According to the GetAdaptersInfo documentation:
>>
>>In versions prior to Windows 10, the order in which adapters appear in the list returned by this function can be controlled from the Network Connections folder: select the Advanced Settings menu item from the Advanced menu. Starting with Windows 10, the order is unspecified.
>>
>>Is the system returning the address for a different NIC?
>
>I don't know. I'll check if the PC is running windows 10 and if there are multiple NIC s tomorrow

I'm pretty sure Antonio is on the right track. Even a basic PC has multiple virtual adapters defined, plus "real" ones for wired and wireless network connections.

ISTR for best results you basically have to enumerate all MAC addresses, then check that the one you want is present. There is some code that uses WMI in Message#1358939.

Years ago I asked a similar question and someone posted me some code/PoC that also enumerated all MAC addresses. But, I can't find the messages, I can't recall if it was Win32, Registry or something else.
Regards. Al

"Violence is the last refuge of the incompetent." -- Isaac Asimov
"Never let your sense of morals prevent you from doing what is right." -- Isaac Asimov

Neither a despot, nor a doormat, be

Every app wants to be a database app when it grows up
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform