none
AD에 로그인하면 dns 설정이 자동 세팅되게 하기 RRS feed

  • 질문

  • 안녕하세요?

    예전에 답변 받았던 ip,subway,gateway 자동 올라오게 하는 스크립트(*.vbs)를 썼더니 잘 됩니다.

    그런데, dns 설정하는 부분이 빠져 있어요.

    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

    Set colNetAdapters = objWMIService.ExecQuery _
        ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")

    strIPAddress = Array("192.168.1.141")
    strSubnetMask = Array("255.255.255.0")
    strGateway = Array("192.168.1.100")
    strGatewayMetric = Array(1)
     
    For Each objNetAdapter in colNetAdapters
        errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
        errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
        If errEnable = 0 Then
            WScript.Echo "The IP address has been changed."
        Else
            WScript.Echo "The IP address could not be changed."
        End If
    Next

    확실하다고 생각한 netsh로 배치 파일(*.bat)은 만들었는데 이 녀석은 개인 프로필에 넣었는데 위치가 틀린 건지 전혀 적용이 되지 않아요.

    netsh -c int ip set address name="로컬 영역 연결" source=static addr=155.230.25.99 mask=255.255.255.0 gateway=155.230.25.1 gwmetric=0
    netsh -c int ip set dns name="로컬 영역 연결" source=static addr=168.126.63.1 register=PRIMARY add dns name="로컬 영역 연결" addr=168.126.63.2 index=2

    참, WSUS를 구성해 보았는데 서버에서 클라이언트 목록이 한 대도 안 보이고, 클라이언트가 서버랑 잘 연동되고 있는지 어떻게 확인할 수 있나요?

    틈틈히 서버 2003 공부 중인데 도움 주시면 정말 고맙겠습니다.

    2007년 2월 24일 토요일 오후 12:42

모든 응답

  •  AD멤버이므로 DC에 대한 DNS 세팅은이미 되어 있기 때문에
    DNS세팅을 추가하고 싶을때는 아래 스크립트를 사용하시면 됩니다.

    changeDNS.vbs

    1. DNS변경할 서버리스트를 server-list.txt에 저장합니다
    2. 변경할DNS IP 1,2,3을 수정합니다.

    filePath=는 txt화일이 저장된 폴더경로입니다.

    충분히 테스트후 적용해 보세요..

    ----------------------------------------------------------

    Const FILEPATH = "C:\temp\"

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set fsoFile = FSO.GetFile(FILEPATH & "Server-List.txt")
    strFilePath = fsoFile.Path
    Set fsoInput = FSO.OpenTextFile(strFilePath, 1)

    Do While Not fsoInput.AtEndOfStream

    ComputerName = fsoInput.ReadLine

    Call ChangeDNS_addy(ComputerName)

    Loop
    Set fsoInput = Nothing
    Set fsoFile = Nothing
    set FSO=Nothing

    Sub ChangeDNS_addy(ComputerName)


    On Error Resume Next
    Set objWMIService = GetObject("winmgmts:\\" & ComputerName & "\root\cimv2")
    Set colNetCards = objWMIService.ExecQuery _
        ("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
    For Each objNetCard in colNetCards
        arrDNSServers = Array("변경할DNS IP-1", "변경할DNS IP-2", "변경할DNS IP-3")
        objNetCard.SetDNSServerSearchOrder(arrDNSServers)
    Next

    Set colNetCards = Nothing
    Set objWMIService = Nothing
    End Sub

    ----------------------------------------------------------------------

     

    WSUS는 windows update.log화일을 리뷰해야 알수 있습니다.

     

    2007년 2월 26일 월요일 오전 12:07
  • 사랑 하는 이
    2007년 4월 12일 목요일 오전 1:29