MAC-adres uitlezen

  • Onderwerp starter Onderwerp starter poi
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

poi

Terugkerende gebruiker
Lid geworden
4 dec 2001
Berichten
1.151
Volgens mij moet dat kunnen met vba. Voor mij is VBA abracadabra. Ik wil dus een servernaam "ergens" invoeren, op een knop klikken en het MAC-adres terug krijgen. Bestaat er zo'n tooltje?
 
servernaam heeft niks met mac adres te maken.
mac adres is uniek voor de netwerkkaart die er in zit.
dus denk ik dat jou vraag niet opgelost gaat worden.
 
Moet toch kunnen. Onze cisco man wil het macadres hebben van een netwerkkaart die in een bepaalde server zit. Nl. Als er een instelling fout staat, kom je die tegen in de eventlogs van die server.
Ik kan nu bijvoorbeeld een server overnemen, dosbox openen en ipconfig /all typen. Dan krijg ik het macadres van de netwerkkaart van de server die ik heb overgenomen. Aangezien er hier zo'n 180 servers staan zou het prettig zijn om dat te automatiseren.
 
Het kan. Een collega van me heeft een dergelijk script geschreven. Ik zal hem eens vragen.

Heb je ondertussen hier iets aan? http://www.google.nl/search?hl=nl&q=getmac+script&meta=

Het kan ook in dos met het commando nbtstat.

nbtstat -a servernaam

(Let op de kleine -a, een grote -A geeft een ander resultaat)

De servernaam zou je als een variabele %1 kunnen invoeren.
 
Laatst bewerkt:
He thanx alvast, ik ga gelijk ff neuzen. Al hou ik me aanbevolen voor het script. :thumb:
 
de GETMAC utility is niet te downloaden. Helaas
 
heb m binnen, maar een dubbelklik doet erg weinig:(
 
Bijgevoegd vind je een tekstbestand, dat je alleen nog even naar vbs moet hernoemen.
 

Bijlagen

Bedankt

Heel erg bedankt, was een goede opzet. Hij is nu uitgebreid, zodat ik een domeinnaam in kan voeren. Nu zoek ie alle namen en macadressen van de servers erbij.

Title = "Mac-adressen"
'strComputer = InputBox("Geef PC naam", Title, "SBLUT411", 400, 400)
Domain = InputBox("Geef Domein naam", Title, "DBLAMF", 400, 400)
Workdir = WScript.ScriptFullName
WorkdirAlg = Left(Workdir, InStrRev(Workdir, "\"))
WorkDir = WorkDirAlg & Domain & "\"
TempFile = WorkDir & domain & "netview.txt"
Text = ""
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("WScript.Shell")

'**** Create Workdirectory als ie nog niet bestaat *********************************************
If (Not fso.FolderExists(WorkDir)) Then
Set oNewFolder = fso.CreateFolder(WorkDir)
Set oNewFolder = fso.CreateFolder(WorkDir & "Recovery")
End If

'**** Creeer met net view een lijst met computer accounts **************************************
'**** Als de lijst al bestaat dan verwijzen naar een andere lijst ******************************
If (Not fso.FileExists(TempFile)) Then
Command = "%comspec% /c net view /domain:" & Domain & " >" & TempFile
WshShell.Run Command, 1, True
Else
End If

'**** Lees lijst met pcnamen, als het een laptop is voer dan de routine uit ********************
Set txtStream = fso.OpenTextFile(TempFile)
Do While Not (txtStream.atEndOfStream)
strComputer = trim(txtStream.ReadLine)
TNaam = cstr(Left(strComputer, 3))
strcomputer = trim(Left(strcomputer, 15))
If TNaam = "\\S" Then
strComputer = Right(strComputer,(len(strComputer)-2))
Routine
Else
End If
Loop

MsgBox "MAC adressen van domain " & vbcrlf & domain & vbcrlf & text, vbOKonly + vbInformation, Title

WScript.Quit


Sub Routine
On Error Resume Next
Set adapters = GetObject("winmgmts:\\" & strComputer).ExecQuery("select * " & "from Win32_NetworkAdapterConfiguration " & "where IPEnabled=true")
For Each adapter In adapters
msg = adapter.MACAddress
text = text & strcomputer & " : " & msg & vbcrlf
Next
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan