|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Можно ли изменить МАС адрес средствами vbs |
|
VBS/WSH/JS - [решено] Можно ли изменить МАС адрес средствами vbs
|
Новый участник Сообщения: 14 |
Профиль | Отправить PM | Цитировать Хочу спросить можно ли изменить МАС адрес сетевой карты посредством vbs?
Если да то как? И ищо. Можно ли получит МАС удаленной машины имея IP этой машины? Я понимаю что есть куча прог которые это делают. Просто я хочу знать может ли это осуществить VBScript. Если глупый вопрос не обижайтесь я новичок )) |
|
Отправлено: 01:42, 15-06-2009 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать 1. можно через реестр, но потребуется перезагрузка:
Const HKEY_LOCAL_MACHINE = &H80000002 strComputer = "." strMACAddr = "001E0B3D3F0B" strKeyPath = "SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}" Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set objReg=GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") Set colNetCards = objWMIService.ExecQuery( _ "Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True") For Each objNetCard in colNetCards strSettingID = objNetCard.SettingID If Len(strSettingID)=38 Then Exit For Next objReg.EnumKey HKEY_LOCAL_MACHINE,strKeyPath,arrSubKeys For Each SubKey In arrSubKeys objReg.GetStringValue HKEY_LOCAL_MACHINE, _ strKeyPath & "\" & SubKey, "NetCfgInstanceId", strValue If Not(IsNull(strValue)) And strValue = strSettingID Then objReg.SetStringValue HKEY_LOCAL_MACHINE, _ strKeyPath & "\" & SubKey, "NetworkAddress", strNewMACAddr Exit For End If Next strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colNetCards = objWMIService.ExecQuery( _ "Select IPAddress From Win32_NetworkAdapterConfiguration Where IPEnabled = True") For Each objNetCard in colNetCards strIPAddress = objNetCard.IPAddress(0) Next WScript.Echo strIPAddress |
Отправлено: 05:42, 15-06-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать За первое спасибо.
Но второе ты наверное не так понял. Я сказал «Можно ли узнать МАС адрес удаленной машины имея ёё IP» |
Отправлено: 19:35, 15-06-2009 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Аналогичнейшим же вышеприведённому скрипту amel27 [он, скорее всего, просто промахнулся в определении]:
strDestIPAdress = "192.168.0.1" Set objWMIService = GetObject("winmgmts:\\" & strDestIPAdress & "\root\cimv2") Set colNetCards = objWMIService.ExecQuery( _ "Select Caption, IPAddress, MACAddress From Win32_NetworkAdapterConfiguration Where IPEnabled = True") For Each objNetCard in colNetCards For Each elem In objNetCard.IPAddress If elem = strDestIPAdress Then WScript.Echo objNetCard.Caption, objNetCard.MACAddress End If Next Next |
Отправлено: 21:56, 15-06-2009 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Вот ещё один вариант, с использованием сторонней библиотеки:
Option Explicit Const sscNBSTATSuccess = 0 Dim objNBTNetwork Dim strMACAddress Dim strDestAddress strDestAddress = "192.168.223.3" ' «SScripting.NBTNetwork» из библиотеки «System Scripting Runtime» (http://www.netal.com/ssr.htm) Set objNBTNetwork = WScript.CreateObject("SScripting.NBTNetwork") If objNBTNetwork.QueryNodeStatus(strDestAddress, 1000, strMACAddress) = sscNBSTATSuccess Then WScript.Echo strMACAddress Else WScript.Echo "Can't connect to [" & strDestAddress & "]." End If WScript.Quit 0 |
|
Отправлено: 22:49, 15-06-2009 | #5 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать Всем спасибо. Тема закрыта.
|
Отправлено: 17:22, 17-06-2009 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Изменить IP адрес на сервере (контроллер домена) | grigbk | Microsoft Windows NT/2000/2003 | 3 | 24-12-2009 15:32 | |
CMD/BAT - [решено] изменить MAC-адрес | Intexid | Скриптовые языки администрирования Windows | 2 | 05-11-2009 07:11 | |
Прочее - Как изменить МАС-адрес? | CUMMINS | Сетевое оборудование | 2 | 07-10-2009 09:56 | |
Proxy/NAT - [решено] WinProxy назначил неверный адрес, не могу его изменить | 130586 | Сетевые технологии | 4 | 07-08-2008 16:16 | |
Двойной МАС-адрес | serius | Сетевые технологии | 1 | 23-04-2004 21:44 |
|