본문 바로가기
IT 지식

Deep Dive: 윈도우 포맷 후 AD 연결, 클릭하지 말고 '명령어'로 하세요

by elite777 2025. 11. 30.
반응형

Deep Dive: 윈도우 포맷 후 AD 연결, 클릭하지 말고 '명령어'로 하세요

수십 대의 PC를 세팅해야 하는 시스템 엔지니어에게 GUI(마우스 클릭) 방식은 비효율의 극치입니다. 진짜 고수는 PowerShell 한 줄로 도메인 가입을 끝내고, CMD로 연결 상태를 검증합니다.

본 포스팅에서는 윈도우 OS 재설치(포맷) 직후, 엔지니어가 수행해야 할 AD 연결 프로세스(Join)장애 검증(Validation) 방법을 스크립트 기반으로 상세히 다룹니다.


1. [Step 1] 포맷 직후: 도메인 가입 전 필수 체크리스트

도메인 가입 명령어를 날리기 전에, 반드시 아래 두 가지가 선행되어야 합니다. 이걸 건너뛰면 100% 에러가 납니다.

① 컴퓨터 이름(Hostname) 변경

포맷 후 DESKTOP-XXXX 같은 랜덤한 이름으로 되어 있으면 관리 자체가 불가능합니다. 사내 규칙에 맞게 변경합니다.

# PowerShell (관리자 권한)
Rename-Computer -NewName "DEV-PC-01" -Restart

-Restart 옵션을 주면 이름 변경 후 자동으로 재부팅됩니다.

② DNS 서버 주소 변경 (핵심)

AD 서버가 DNS 역할을 겸하므로, PC의 DNS를 AD 서버 IP로 바꿔야 합니다. (예: AD IP가 192.168.10.2인 경우)

# PowerShell: 인터페이스 별칭 확인 후 DNS 설정
Get-NetAdapter
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses ("192.168.10.2", "192.168.10.3")

※ 보조 AD가 있다면 쉼표(,)로 구분하여 두 번째 IP까지 넣어주는 것이 정석입니다.


2. [Step 2] PowerShell 한 줄로 도메인 가입 (Add-Computer)

시스템 속성 창을 열고 클릭할 필요가 없습니다. Add-Computer CMDlet을 사용하면 깔끔하게 처리됩니다. [web:144][web:148]

기본 가입 명령어

# PowerShell (관리자 권한)
$credential = Get-Credential
Add-Computer -DomainName "corp.example.com" -Credential $credential -Restart
  • Get-Credential: 팝업창이 뜨면 도메인 관리자 계정(예: administrator@corp.example.com)을 입력합니다.
  • -Restart: 가입 성공 시 자동으로 재부팅합니다.

[심화] 특정 OU(부서)로 지정하여 가입하기

기본적으로 가입하면 'Computers' 컨테이너에 들어갑니다. 이를 '개발팀' OU로 바로 넣고 싶다면 -OUPath 옵션을 씁니다.

Add-Computer -DomainName "corp.example.com" -OUPath "OU=Developers,OU=Staff,DC=corp,DC=example,DC=com" -Credential $credential -Restart

3. [Step 3] 연결 검증 및 장애 테스트 (Validation)

재부팅 후 로그인이 된다고 끝이 아닙니다. 엔지니어라면 Secure Channel(보안 채널)이 정상인지 확실하게 검증해야 합니다.

① PowerShell로 보안 채널 검증 (Test-ComputerSecureChannel)

가장 확실한 방법입니다. True가 나와야 정상입니다. False라면 트러스트가 깨진 것입니다. [web:149][web:154]

# 단순 검증
Test-ComputerSecureChannel -Verbose

# 트러스트가 깨졌을 때 자동 복구 시도 (관리자 권한 필요)
Test-ComputerSecureChannel -Repair -Credential $credential

② CMD로 도메인 컨트롤러 통신 확인 (nltest)

현재 내 PC가 어떤 도메인 컨트롤러(DC)와 통신 중인지, 연결 상태는 어떤지 확인하는 고전적이지만 강력한 명령어입니다. [web:150][web:160]

# 현재 연결된 DC 정보 확인
nltest /dsgetdc:corp.example.com

# 보안 채널 상태 쿼리 (결과가 'Success'여야 함)
nltest /sc_query:corp.example.com

③ 그룹 정책(GPO) 적용 테스트 (gpresult)

도메인 연결은 됐는데 보안 정책(USB 차단 등)이 안 먹힌다면? 정책을 강제로 업데이트하고 리포트를 뽑아봅니다.

# 정책 강제 업데이트
gpupdate /force

# 적용된 정책 리포트 생성 (HTML로 출력)
gpresult /h C:\GPO_Report.html

마무리: 스크립트로 '표준화' 하라

엔지니어의 실력은 '일관성'에서 나옵니다. 오늘 소개한 명령어들을 하나의 .ps1 스크립트 파일로 만들어 USB에 담아 다니십시오. PC 1대를 세팅하든 100대를 세팅하든, 항상 동일한 품질의 결과물을 1분 안에 만들어낼 수 있습니다.

[핵심 요약]
1. Set-DnsClientServerAddress로 DNS 잡고,
2. Add-Computer로 가입하고,
3. Test-ComputerSecureChannel로 검증한다.

 

반응형