vbs Windows 시스템 이 네트워크 카드 의 MAC 주 소 를 변경 하거나 수정 하 는 스 크 립 트 와 소프트웨어

핵심 코드

'/*=========================================================================  
' * Intro          ,     ,        ,                 ,           ,    ,     VBS MAC        ,                          (        ),        MAC  :  -->    -->    -->      (   "    ")-->        -->  ..-->  -->  -->NetworkAddress-->    "   "  
' * FileName  ChangeMAC.vbs  
' * Author   yongfa365  
' * Version   v3.0  
' * WEB     http://www.yongfa365.com  
' * Email    yongfa365[at]qq.com  

' * MadeTime  2007-12-09 22:17:58  
' * LastModify 2007-12-13 18:35:58  
' *==========================================================================*/  
  
On Error Resume Next  
strComputer = "."  
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")  
Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=true", , 48)  
For Each objItem in colItems  
  msg = msg & "  :" & objItem.Index & "  MAC:" & objItem.MACAddress & vbCrLf & "  :" & objItem.Description & vbCrLf & vbCrLf  
Next  
  
idx = InputBox( msg , "1/2        MAC   ", "1")  
If Not IsNumeric(idx) Or Len(idx) = 0 Then  
  WScript.Echo "      ,  "  
  Wscript.Quit  
End If  
MAC = InputBox( "      MAC   (     12         ,    -、:    )" , "2/2       MAC  ", "000000000000")  
MAC = Replace(Replace(Replace(MAC, ":", ""), "-", ""), " ", "")  
If RegExpTest("[^\da-fA-F]", MAC)>0 Or Len(MAC)<>12 Then  
  WScript.Echo "MAC    ,  "  
  Wscript.Quit  
End If  
  
  
idx = Right("00000"&idx, 4)  
reg = "HKLM\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\" & idx  
Set WSHShell = CreateObject("WScript.Shell")  
WshShell.RegWrite reg & "\NetworkAddress", MAC , "REG_SZ"  
WshShell.RegWrite reg & "\Ndi\params\NetworkAddress\default" , MAC , "REG_SZ"  
WshShell.RegWrite reg & "\Ndi\params\NetworkAddress\ParamDesc" , "NetworkAddress" , "REG_SZ"  
WshShell.RegWrite reg & "\Ndi\params\NetworkAddress\optional" , "1" , "REG_SZ"  
'       ,  “     2”  
NetWorkName = WshShell.RegRead("HKLM\SYSTEM\ControlSet001\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\" & WshShell.RegRead(reg & "\NetCfgInstanceId") & "\Connection\Name")  
  
restartNetWork NetWorkName  
'WScript.Echo "    "  
  
Function restartNetWork(sConnectionName)  
  '      
  'sConnectionName = "     5" '            , "      "   
  '         
  Set shellApp = CreateObject("shell.application")  
  Set oControlPanel = shellApp.Namespace(3)  
  For Each folderitem in oControlPanel.Items  
    If folderitem.Name = "    " Then  
      Set oNetConnections = folderitem.GetFolder  
      Exit For  
    End If  
  Next  
  '           
  For Each folderitem in oNetConnections.Items  
    If LCase(folderitem.Name) = LCase(sConnectionName) Then  
      Set oLanConnection = folderitem  
      Exit For  
    End If  
  Next  
  '      
  For i = 1 To 2  
    For Each verb in oLanConnection.verbs  
      If RegExpTest("  |  |  ", verb.Name)>0 Then  
        verb.DoIt  
        Exit For  
      End If  
    Next  
    '           ,                     ,           
    WScript.Sleep 5000  
  Next  
    
    
End Function  
  
  
'             
  
Function RegExpTest(patrn, strng)  
  Set re = New RegExp  
  re.Pattern = patrn  
  re.IgnoreCase = True  
  re.Global = True  
  Set Matches = re.Execute(strng)  
  RegExpTest = Matches.Count  
End Function 
인터넷 관련 소개 1:
어떻게 네트워크 카드 MAC 주 소 를 수정 합 니까?
인터넷 카드 의 MAC(물리)주 소 를 쉽게 수정 할 수 있 습 니 다.지금 은 모두 ADSL 이 인터넷 에 접속 하고 있 습 니 다.인터넷 요금 을 찾 을 때 인터넷 전신 에 인터넷 카드 MAC 주 소 를 기록 하 는 것 을 발견 할 수 있 습 니 다.이것 은 IP 주소 가 동태 적 이기 때 문 입 니 다.(인터넷 에 접속 할 때마다 다 릅 니 다)MAC 주 소 는 변 하지 않 습 니 다.모든 네트워크 카드 에는 남 다른 MAC(물리)주소 가 있 습 니 다.그래서 MAC 주 소 는 고객 의 인터넷 신분증 이 되 었 습 니 다.MAC 주 소 를 기록 하면 인터넷 에 올 라 간 것 을 확인 할 수 있 습 니 다!
1.MAC 주소 의 용도
MAC 주 소 는 네트워크 카드 에 고정 되 어 있 으 며,네트워크 카드 마다 MAC 주소 가 다르다.네트워크 카드 를 제작 하 는 과정 에서 공장 은 그의 EPROM 에서 한 조 의 숫자 를 녹음 할 것 이다.이 숫자 는 모든 네트워크 카드 가 각각 다르다.이것 이 바로 네트워크 카드 의 MAC(물리)주소 이다.
MAC 주소 의 유일 성 때문에 주로 네트워크 에서 사용자 의 신분 을 식별 하 는 데 사용 된다.예 를 들 어 ADSL 이 인터넷 에 접속 할 때 전신 은 그것 으로 비용 을 기록 하고 네가 인터넷 에 접속 한 것 을 확인한다.캠퍼스 네트워크 에서 MAC 주소 도 사용 자 를 식별 하 는 데 사용 할 수 있다.캠퍼스 네트워크 의 정식 사용자 에 게 MAC 주 소 는 서버 측 에 등 록 됩 니 다.만약 당신 이 불법 사용자 라면 서버 에 네트워크 카드 MAC 주소 가 없습니다.그러면 인터넷 을 연결 하려 고 할 때 서버 는 바로 당신 을 알 아 보고 네트워크 연결 을 막 을 것 입 니 다.
2.MAC 주 소 는 수정 할 수 있 습 니 다.
일부 경우,예 를 들 어 네트워크 의 정식 사용 자 를 사칭 하려 면 네트워크 카드 MAC 를 수정 해 야 합 니 다.MAC 주 소 를 수정 하려 면 하드웨어 의 방법 으로 실현 할 수 있 습 니 다.즉,네트워크 카드 업 체 가 제공 한 수정 절 차 를 이용 하여 네트워크 카드 의 EEPROM 을 녹음 할 수 있 습 니 다.이렇게 하면 가능 하지만 위험 이 매우 크 고 조작 도 복잡 합 니 다.설령 경험 이 있 더 라 도 조작 중 에 오류 가 발생 하 는 것 을 피하 기 어렵 습 니 다.
사실 너 는 녹음 방법 으로 네트워크 카드 의 MAC 주 소 를 수정 할 필요 가 전혀 없다.윈도 가 설치 되 어 있 는 것 을 알 면 자동 으로 네트워크 카드 에서 MAC 주 소 를 읽 고 레 지 스 트 에 저장 해서 사용 합 니 다.데이터 가 네트워크 에서 전 송 될 때 네트워크 카드 에서 보 낸 패 킷 에서 원본 MAC 주 소 를 요구 합 니 다.이 MAC 주 소 는 레 지 스 트 에서 읽 은 것 입 니 다(네트워크 카드 에서 읽 은 것 이 아 닙 니 다).따라서 레 지 스 트 의 MAC 주 소 를 수정 하면 네트워크 카드 EEPROM 의 MAC 주 소 를 바 꾸 는 것 과 같 습 니 다.이들 의 실제 효 과 는 완전히 같 습 니 다!
3.레 지 스 트 에서 MAC 를 수정 하 는 방법
1.소프트웨어 수정 사용
이 방법 은 모든 종류의 네트워크 카드 에 적용 된다.서로 다른 Windows 에서 서로 다른 소프트웨어 로 MAC 를 수정 해 야 합 니 다.
  (1)Win2003/XP/2000
시스템 이 Win 2003/XP/2000 이 라면 SMAC(다운로드 주소)를 사용 할 수 있 습 니 다.http://www.klcconsulting.net/smac/#Download)。이 소프트웨어 는 네트워크 카드 의 MAC 주 소 를 수정 할 수 없고 레 지 스 트 의 MAC 만 수정 할 수 있다.
이 소프트웨어 는 두 가지 실행 모드 가 있 습 니 다."Windows"를 사용 하면 Management Instrumentation (WMI)"서비스,소프트웨어 는[WBEM 에서 실 행 됩 니 다. ON]모드 에서 더 많은 네트워크 카드 정 보 를 표시 할 수 있 습 니 다.그렇지 않 으 면[WBEM 에서 실 행 됩 니 다. OFF]모드 에서 소프트웨어 창 제목 표시 줄 에서 현재 실행 모드 를 볼 수 있 습 니 다.
소프트웨어 의 사용 은 매우 간단 합 니 다.실행 후"Refresh"를 누 르 면 창의 목록 상 자 는 네트워크 카드 의 종류,IP 주소,Active 를 표시 합 니 다. MAC 등,아래 여섯 개의 입력 상자 에 지정 한 MAC 주소(그림 1)를 입력 하고 오른쪽 에 있 는"Update"를 클릭 하 십시오. MAC",수정 완료 가능;마지막 으로 컴퓨터 를 다시 켜 서 수정 값 을 적용 합 니 다.
그림 1
시용 판 은 새로운 MAC 주 소 를 입력 할 수 없고,MAC 를 0C-0C-0C-0C-0C-0C-01 로 바 꿀 수 있 습 니 다.
  (2)Win98
시스템 이 Win 98 이 라면'Mac 스캐너'를 사용 하 는 것 을 권장 합 니 다.이 도 구 는 레 지 스 트 의 MAC 주 소 를 수정 한 다음 컴퓨터 를 다시 시작 하여 수정 을 적용 할 수 있 습 니 다.
2、네트워크 카드 속성 에서 수정
만약 당신 의 네트워크 카드 가 RealTek 회사 의 RTL 8139 칩 을 사용한다 면 네트워크 카드 속성 에서 MAC 를 수정 할 수 있 습 니 다.그러면 레 지 스 트 의 MAC 주소 도 함께 바 뀔 것 입 니 다.방법 은 다음 과 같 습 니 다.
그림 2
Win 2003/XP/2000 에서 메뉴'시작'/설정/제어 판 을 클릭 하고'시스템'을 더 블 클릭 하고'하드웨어'/장치 관리 자 를 클릭 하여 장치 관리자 에서'네트워크 어댑터'를 펼 치고 MAC 주 소 를 수정 할 네트워크 카드 를 오른쪽 클릭 하여'속성'을 선택 하 십시오."고급"옵션 을 클릭 하고"속성"에서 네트워크 클릭 을 선택 하 십시오. address 항목(그림 2)은 오른쪽'값'아래 에 지정 하고 자 하 는 MAC 주소 값(예 를 들 어 020202020202)을 입력 하고 12 개의 숫자 나 알파벳 을 연속 으로 입력 하 십시오(중간 에 입력 하지 마 십시오-).컴퓨터 를 다시 시작 하면 수정 이 유효 하 다.Win 98 의 MAC 수정 방법 은 상기 방법 과 유사 하 다.
수정 후 Win 2003/XP/2000 레 지 스 트 에 있 는 MAC 주 소 를 그대로 복원 하려 면"Network"를 선택 하 십시오. address"항목,오른쪽 값 을"존재 하지 않 음"으로 선택 하고 다시 시작 하면 됩 니 다.Win 98 에 서 는'표시 되 지 않 음'을 선택 합 니 다.
3.등록 표 에서 수정
RTL 8139 칩 이 아 닌 네트워크 카드 에 대해 서 는 레 지 스 트 의 MAC 를 직접 수정 할 수 있 습 니 다.주의:레 지 스 트 를 수정 하기 전에 레 지 스 트 를 백업 해 야 합 니 다.
  (1)Win2003/XP/2000
"시작"/실행 을 누 르 고 regedit 를 입력 하여 레 지 스 트 를 열 고 HKEY 로 위치 추적LOCAL_MACHINE\\SYSTEM\\Current Control Set\\Control\Class\\{4D36E972-E325-11CE-BFC 1-08002BE 10318}\\0000,0001,0002 등 메 인 키 에서 DriverDesc 의 내용 을 찾 아 네트워크 카드 가 어떤 메 인 키 를 사 용 했 는 지 알 아 보 세 요(예 를 들 어 0001).메 인 키 에 params 항목 이 있 으 면 이 메 인 키 도 네트워크 카드 에서 사용 합 니 다.
예 를 들 어 네트워크 카드 는 0001 메 인 키 를 사 용 했 기 때문에 우 리 는 그것 을 선택 하여 오른쪽 에 문자열 항목(NetworkAddress 라 고 함)을 만 들 고 이 문자열 을 두 번 눌 러 서 지정 한 MAC 주소 값 을 입력 합 니 다(12 자리 의 연속 숫자 나 알파벳 이 어야 합 니 다.그 사이 에-번호 가 없습니다).0001 의 NDI\params 에 하위 키(NetworkAddress 라 고 함)를 추가 합 니 다.이 하위 키 를 선택 하고 오른쪽 에 default 라 는 문자열 을 추가 합 니 다.키 값 은 수 정 된 MAC 주소 로 위의 수치 와 같 습 니 다.수정 후 다시 시작 하면 효력 이 발생 합 니 다.
  (2)Win98
"시작"/실행 을 누 르 고 winipcfg 를 입력 하여 수정 할 네트워크 카드 를 선택 하고 MAC 주소 값 을 기록 하 십시오.그리고"시작"/실행 을 누 르 고 regedit 를 입력 하여 레 지 스 트 를 열 고 HKEY 로 찾 습 니 다.LOCAL_MACHINE\System\Current ControlSet\서비스\\Class\Net,아래 에"0000","0001","0002"등 하위 키 가 있 습 니 다."0000"키 부터 클릭 하여 하위 키 아래 의"DriverDesc"키 내용 을 찾 아 방금 기 록 된 MAC 주 소 를 찾 을 때 까지 순서대로 찾 습 니 다.
예 를 들 어 네트워크 카드 는 0001 메 인 키 를 사 용 했 기 때문에 우 리 는 그것 을 선택 하여 오른쪽 에 새 문자열 을 만 들 었 습 니 다.이름 은 networkaddress 이 고 이 문자열 을 더 블 클릭 하여 새로운 MAC 주소 값 을 입력 하 십시오.(12 비트 의 연속 숫자 나 알파벳 이 어야 합 니 다.그 사이 에-번호 가 없습니다.)마지막 으로 컴퓨터 를 다시 켜 면 수정 이 유효 합 니 다.
인터넷 에 공개 코드 프로그램 이 있 는데 한 화 했 어 요.다운로드 주소:MACAddressChanger.rar

좋은 웹페이지 즐겨찾기