본문
Windows Server 2008의 세가지 이름풀이 시스템
Windows Server 2008에서는 세가지 이름풀이 시스템을 제공한다.
1. DNS : FQDN(fully qualified host name)->IP : WINS, DHCP, ADDS와 통합가능.
Active Directory와 DNS는 매우 긴밀하게 통합되어 있어 이름구조와 계층을 구현하는데 사용되며, DNS없이 도메인 컨트롤러를 설치할 수 없다. DNS와 Active Directory의 통합 옵션은 다음과 같다
가. 부분통합 : 도메인은 표준적인 파일 저장소를 이용한다. %SystemRoot%\System32\DNS에 .dns확장자를
가진 텍스트 파일로 저장된다. DNS 변경은 권한을 가진 하나의 DNS 서버를 사용하는데, 이 DNS 서버는 특정 도메인 혹은
zone 이라 불리는 영역에 주 DNS 서버 역할을 담당하는 서버이다., DHCP를 이용해 동적 DNS 업데이트를 사용하는
클라이언트는 반드시 zone 내의 주 DNS 서버를 이용하도록 구성되어야만 한다. 또한 주 DNS 서버가 오프라인인 경우에도
DHCP를 통한 동적 업데이트(DHCP를 통해 IP 주소가 변경될때마다 자동으로 DNS 내의 해당레코드를 바뀐 IP 주소로
변경해 주는 처리)는 일어나지 않는다.
나 : 완전 통합 : 도메인은 디렉터리 통합 저장소를 사용한다. 즉 DNS 정보는 Active Directory 상에 직접
저장된다. 이 정보는 dnsZone 개체 컨테이너를 통해 접근할 수 있다. 이정보는 Active Directory의 일부분이므로
모든 도메인 컨트롤러가 이 정보에 접근할 수 있다. 그리므로 한 도메인 내의 여러 도메인 컨트롤러가 존재하는 Active
Directory 데이터 베이스의 마스터 저장본이 여러군데 존재하는 멀티마스터 방식에서도 DHCP를 통한 동적 업데이트가 사용될수
있다는 것이다. 또한 DNS 정보로의 접근제어에 디렉터리 보안을 그대로 이용할 수 있다.
DNS 서비스를 RODC상에
설치하면 RODC는 DNS에 의해 사용되는 모든 응용프로그램 디렉터리 파티션의 읽기 전용 복사본을 가졍올 것이며 이 파티션에는
ForestDNSZones과 DomainDNSZones이 포함된다. 클라인언트는 다른 ,DNS 서버에 요청하는 것과 동일한
방식으로 RODC에 이름풀이를 요청한다 하지만 RODC상의 DNS 서버는 직접적인 DNS 레코드 업데이트를 지원하지 않는다.
클라이언트가 자신의 DNS레코드를 RODC를 통해 변경하려하는경우 RODC상의 DNS 서버는 업데이트를 수행할 수 있는 다른
DNS 서버에 대한 참조를 클라이언트에 리턴한다. 그러면 리턴된 다른 DNS 서버에 다시 레코드 변경을 요청한다. 위 과정을
통해 클라이언트가 자신의 레코드 변경했다면 RODC 상의 DNS 서버는 다른 DNS 서버로부터 변경된 최근 레코드를 복제해와아야
한다. 이때 사용되는 복제 요청은 특별한 형태를 가지는 오직 하나의 DNS레코드만을 위한 요청(RSO)이다. RSO 요청은 오직
하나의 DNS 레코드에 대해서만 수행 가능하며 영역이나 도메인 데이터의 전체 목록에 대해 수행할 수 없다
2. WINS : 컴퓨터이름->IP . Windows 2000이전의 운영체제 시스템에 대한 지원이나 NetBIOS over TCP/IP 프로토콜을 사용하는 예전 응용프로그램에 대한 지원의 용도이다.
WINS의 질의 요청과 기타 정보를 전송하는 데에는 NetBIOS가 사용된다. NetBIOS는 네트워크 상의 컴퓨터들이
서로간에 통신할 수 있도록 관련 API를 제공한다. 이러한 API를 이용하는 NetBIOS응용프로그램은 컴퓨터 이름과 IP
주소간의 변환을 위해 WINS또는 LMHOSTS라고 하는 파일을 사용한다. 중요성이 감소하고 있으므로 현재는 Windows
2000전/후 시스템이 서로간의 자원을 찾을 수 있도록 하는것이 주 기능이다.;(이전 시스템이 네트워크 상에 존재하는 자원을
Browse하고 이후시스템이 NetBIOS 자원을 찾을 수 있도록함)
DNS와 마찬가지로 클라이언트에서는 서버에 대한 IP를
지정함으로서 네트워크 위치에 관계없이 통신할 수 있도록 한다. 또한 로컬 세그먼트 상에 존재하는 다른컴퓨터들에게 브로드캐스트
메시지를 전송하여 IP를 요청할 수 있다(WINS 서버 사용되지 않는다). 이 방식으로 모든 Non-WINS 클라이언트들도 컴퓨터
이름을 IP 주소로 풀이할 수 있게 된다.(즉, 브로드 캐스팅 전송 방식은 Non-WINS 클라이언트에 대한 WINS
이름풀이서비스제공)
*클라이언트는 WINS 서버와 통신을 할 때 세션을 맺게 되는데, 이 세션은 세가지로 구성.
가. 이름 등록 : 이름 과정 등록 동안 클라이언트는 자신의 컴퓨터 이름과 IP 주소를 서버에 전달하여 WINS 데이터베이스에 등록되도록 요청한다.
나. 이름 갱신 : 이름 등록은 영구적이지 않으며, 클라이언트느 등록한 이름을 정해진 기간동안만 사용하게 되는데이
기간을 Lease라 부른다. 클라이언트가 이 리스를 갱신해야 하는 기간이 존재하는데 이 기간을 갱신 인터벌이고 부른다.
클라이언트는 갱신 인터벌 동안 반드시 WINS 서버에 (다시) 등록해야 한다.
다. 이름 해제 : 클라이언트가 리스를 갱신하지 못하면 정보가 해제되며 해당 컴퓨터 이름 또는 IP 주소는
네트워크상의 다른 컴퓨터가 사용할 ㅜㅅ 있다. 또한 이름 등록 정보는 해당 WINS 클라이언트가 셧다운 되는 경우에도 해제된다
*클라이언트는 WINS 서버와 세션을 설정한 후에 이름 풀이 서비스를 요청할 수 있다. 컴퓨터 이름을
IP 주소로 풀이하는데 어떤 방식이 사용될지는 해당 네트워크의 구성에 따라 결정되며 다음 4개의 이름 풀이 방식을 네트워크상에
구성할 수 있다.
가. B-node(Broadcast) : 컴퓨터 이름을 IP 주소로 풀ㅇ리하기 위해 브로드캐스트 메시지를
이용하는 방식. 이름을 IP 주소로 풀이하려는 클라이언트는 로컬 네트워크상의 모든 컴퓨터에 메시지를 브로드캐스팅함으로서 원하는
컴퓨터 이름에 대한 IP 주소 요청한다.
나. P-node(Peer-to-peer) : 컴퓨터 이름을 IP 주소로 풀이하는데 WINS서버를 사용하는 방식이다. 이 모드는 클라이언트가 서버에 메시지를 전송하고 서버는 이요청에 대해 응답하는 식으로 이름풀이를 한다.
다. M-node(Mixed) : B-node와 P-node를 혼합한 방식이다. 우선 B-node방식으로 이름풀이를 시도한 후 P-node 방식을 이용한다.
라. H-node : 이 방식 역시 B-node와 P-node를 혼합한 방식이다. 우선 P-node를 사용한 후 B-node를 시도한다. 대부분의 네트워크상에서 최상의 성능을 제공하는 방식이며 WINS의 기본 작동 방식이다
*Windows 클라이언트에서 Wins 서버가 네트워크상에 존재하면 p-node 방식을 이용해 이름풀이를 시도하고, 존재하지 않으면 b-node 방식을 사용해 이름풀이를 시도한다. 또한 로컬 파일을 이용할 수도 있다;
3. LLMNR(Link-Local Multicast Name Resolution) : IPv4, IPv6 또는 두 주소 모두를 가진 장비를 위한 p2p 이름 풀이 서비스를 제공한다.
이는 하나의 서브넷 상에 존재하는 IP4v4 장비와 IPv6 장비가 WINS 또는 DNS 없이 서로 간에
이름을 풀이할 수 있도록 해준다. (Vista/2k8지원및 기본설정:활성화) 다른 이름풀이 시스템이 없는 환경에서 IPv4와
IPv6 클라이언트 모두를 위해 제공되는 기능이다. 이는 Home/ Ad hoc 네트워크에서 사용될 수 있다
->전통적
인 DNS 이름풀이가 불가능한 환경에서 이름풀이를 제공하기 위해 DNS의 보완수단으로 설계되었다. NetBIOS가 요구되지 않는
환경에서 WINS기능을 대체할 수 있지만 DNS의 대체수단은 될 수 없다. 왜냐하면 NNMNR은 로컬 서브넷상에서만 작동하기
때문이다.
* DNS를 통한 이름풀이가 실패한 경우 LLMNR사용하며 진행은 다음과 같다
가. 컴퓨터가 주 DNS 서버로 질의를 전송한다. 응답이 없거나 에러를 수신하면 대체 DNS 서버로 시도한다. 이에도 실패할 경우 LLMNR이 작동한다.
나. 컴퓨터는 로컬 서브넷에 UDP를 이용해 멀티캐스트로 이름풀이 질의요청을 전송한다.
다. LLMNR을 지원하는 컴퓨너는 질의를 자신의 이름과 호스트병으로 비교하며 일치하면 유니캐스트 메시지를 클라이은트에 전송하며 아니면 무시한다.
* LLMNR 역 맵핑은 특정 IP 주소에 대한 컴퓨터 이름을 찾는 질의 요청을 유니캐스트로 전송한다.
LLMNR 활성화된 컴퓨터는 그 이름이 로컬 서브넷 상에서 유일해야 한다. 대부분의 컴퓨터는 시작할때 및 대기상태에서 복귀할때,
네트워크 어댑터 설정을 변경할 때 로컬 서브넷상에서 자신의 이름이 유일한지 확인한다. 자신의 유일성이 확인되지 못했을 경우
확인되지 않았음을 Reply에 기록한다 기본적으로 LLMNR은 활성화되지만 레지스트리로 비활성화시틸 수 있다.
모든 네트워크 어뎁터에 대해 LLMNR을 비활성화하려면 다음의 레지스트리 값을 생성하고 그값을
0으로 설정한다.
HKML/SYSTEM/CurrentControlSet/Services/Dnscache/paremeters/EnableMulticast
특정 네트워크 어댑터에 대한 LLMNR만 비활성화하려면 다음 레지스트리 값을 생성하고 그 값을 0으로 설정한다
HKML/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters/AdapterGUID/EnableMulticast
레지스트리 값을 1로 설정하여 언제든 LLMNR을 활성화 할 수 있으며그룹 정책을 통해 LLMNR을 관리할 수도 있다.
댓글