The Cable GuyISATAP로 인트라넷을 IPv6으로 마이그레이션

Joseph Davies

이 문서는 Windows Server 2008 시험판 버전을 기준으로 작성되었습니다. 이 문서에 수록된 모든 정보는 변경될 수 있습니다.

IPv6(인터넷 프로토콜 버전 6)에 대한 일반적인 오해 중 하나는, 이를 사용하려면 기본 IPv6 주소 지정 및 라우팅을 배포해야 하며, 이를 위해서는 IPv6 주소 지정 체계에 대한 심층적 분석, 라우터 업데이트와 구성 그리고 롤아웃 일정이 필요하다는 것입니다. 이러한 작업 모두가 기본 IPv6 연결을 위해

언젠가는 해야 할 일이지만 ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)를 사용하면 터널링된 IPv6 연결을 손쉽게 배포할 수 있습니다. 터널링된 IPv6 연결을 사용하면 ISATAP를 지원하는 호스트는 IPv4 헤더로 캡슐화된 IPv6 트래픽을 사용하여 통신할 수 있습니다(IPv4 프로토콜 필드는 41로 설정됨). ISATAP 트래픽은 IPv4 전용 인트라넷에서도 전송 가능하므로 기본 IPv6 인프라가 구축될 때까지 기다릴 필요 없이 곧바로 IPv6 지원 응용 프로그램을 테스트할 수 있습니다.

ISATAP는 IPv4 전용 인트라넷을 가로질러 IPv6/IPv4 호스트 간에 유니캐스트 IPv6 연결을 제공하는 주소 할당 및 자동 터널링 기술이며 RFC 4214에 정의되어 있습니다. ISATAP 호스트는 UnicastPrefix:0:5EFE:w.x.y.z(w.x.y.z가 ISATAP 호스트에 할당된 개인 IPv4 주소인 경우) 또는 UnicastPrefix:200:5EFE:w.x.y.z(w.x.y.z가 ISATAP 호스트에 할당된 공용 IPv4 주소인 경우)와 같은 형식으로 ISATAP 주소가 할당된 논리적 터널링 인터페이스를 사용합니다. UnicastPrefix는 링크-로컬, 글로벌 및 고유 로컬 접두사를 포함한 64비트 유니캐스트 주소 접두사입니다. ISATAP 주소의 예로는 2001:DB8::98CA:200:131.107.28.9 및 2001:DB8::98CA:0:10.91.211.17이 있습니다.

ISATAP로 인트라넷을 IPv6으로 마이그레이션

ISATAP 배포는 64비트 IPv6 서브넷 접두사가 할당된 IPv4 전용 네트워크인 하나 이상의 논리적 ISATAP 서브넷으로 구성됩니다. 논리적 ISATAP 서브넷에는 ISATAP 호스트와 ISATAP 라우터가 있습니다. ISATAP 호스트는 ISATAP 터널링 인터페이스를 사용하여 IPv6 트래픽을 캡슐화합니다. 이 트래픽은 동일한 논리적 ISATAP 서브넷에 있는 다른 ISATAP 호스트로 직접 전송될 수 있습니다. 다른 ISATAP 서브넷 또는 기본 IPv6 서브넷에 있는 목적지에 도달하기 위해 트래픽은 ISATAP 라우터로 전송됩니다. ISATAP 라우터는 서브넷 접두사를 ISATAP 호스트로 알리고 ISATAP 호스트와 다른 IPv6 서브넷의 호스트 사이에 IPv6 트래픽을 전달하는 IPv6 라우터입니다. 그림 1에서는 단순화된 인트라넷에서 ISATAP의 구성 요소를 보여 줍니다.

그림 1 인트라넷의 IPv4 전용 및 IPv6 지원 부분

그림 1** 인트라넷의 IPv4 전용 및 IPv6 지원 부분 **(더 크게 보려면 이미지를 클릭하십시오.)

ISATAP를 사용하면 인트라넷에서 기본 IPv6 주소 지정 및 라우팅 기능을 세 단계로 배포할 수 있습니다.

1단계: IPv4 전용 인트라넷 이 단계에서 전체 인트라넷은 하나의 논리적인 ISATAP 서브넷일 수 있습니다. 그림 2에서는 글로벌 또는 고유 로컬 주소 접두사를 ISATAP 호스트에 알리기만 하는 ISATAP 라우터가 있는 IPv4 전용 인트라넷의 예를 보여 줍니다.

그림 2 IPv4 전용 인트라넷

그림 2** IPv4 전용 인트라넷 **(더 크게 보려면 이미지를 클릭하십시오.)

2단계: 인트라넷의 IPv4 전용 및 IPv6 지원 부분 이 중간 단계에서는 인트라넷에 IPv4 전용 부분(논리적 ISATAP 서브넷)과 IPv6 지원 부분이 있습니다. 인트라넷의 IPv6 지원 부분은 IPv4를 지원하며 기본 IPv6 주소 지정과 라우팅을 지원하도록 업데이트되었습니다. 그림 1에서 이 구성을 볼 수 있습니다.

3단계: IPv6 지원 인트라넷 이 마지막 단계에서는 전체 인트라넷이 IPv4와 기본 IPv6 주소 지정 및 라우팅을 모두 지원합니다. ISATAP는 더 이상 필요하지 않습니다. 그림 3에 예가 나와 있습니다.

그림 3 IPv6 지원 인트라넷

그림 3** IPv6 지원 인트라넷 **(더 크게 보려면 이미지를 클릭하십시오.)

ISATAP를 사용하면 IPv4 전용 인트라넷에서 IPv6 지원 인트라넷으로 이전하는 처음 두 단계 중 호스트와 응용 프로그램 간에 IPv6 연결을 구현할 수 있습니다.

Windows Server 2008과 Windows Vista

Windows Server® 2008 및 Windows Vista®의 IPv6 프로토콜은 ISATAP 호스트와 ISATAP 라우터를 모두 지원합니다. 다른 DNS 접미사가 할당된 컴퓨터에 설치된 LAN 인터페이스마다 별도의 ISATAP 터널링 인터페이스가 있습니다. 예를 들어 Windows Vista를 실행하는 컴퓨터에 있는 두 개의 LAN 인터페이스에 모두 동일한 인트라넷이 연결되어 있으며 동일한 DNS 접미사가 할당되어 있는 경우에는 ISATAP 터널링 인터페이스가 하나만 있습니다. 이 두 개의 LAN 인터페이스가 다른 DNS 접미사가 할당된 서로 다른 두 네트워크에 연결된 경우에는 두 개의 ISATAP 터널링 인터페이스가 있습니다. Windows Server 2008 또는 Windows Vista SP1을 실행하는 컴퓨터에서는 이름 "ISATAP"를 확인할 수 없는 경우 ISATAP 터널 인터페이스가 '미디어 연결 끊김' 상태가 됩니다.

기본적으로 서비스 팩이 설치되지 않은 Windows Vista의 IPv6 프로토콜은 해당 LAN 인터페이스에 할당된 IPv4 주소에 대한 ISATAP 터널 인터페이스에서 링크-로컬 ISATAP 주소(FE80::5EFE: w.x.y.z 또는 FE80::200:5EFE:w.x.y.z)를 자동으로 구성합니다.

Windows Server 2008 및 Windows Vista SP1의 IPv6 프로토콜은 이름 "ISATAP"를 확인할 수 있는 경우에만 ISATAP 터널 인터페이스에서 링크-로컬 ISATAP 주소를 구성합니다.

ISATAP 호스트가 ISATAP 라우터에서 라우터 알림 메시지를 수신하려면 ISATAP 라우터에 라우터 요청 메시지를 전송해야 합니다. 이더넷 서브넷에서는 기본 IPv6 호스트가 멀티캐스트 라우터 요청 메시지를 전송하고 서브넷의 라우터는 라우터 알림 메시지로 응답합니다. ISATAP는 IPv4 멀티캐스트 트래픽을 사용하거나 IPv4 멀티캐스트 지원 인프라를 필요로 하지 않기 때문에 ISATAP 호스트는 라우터 요청 메시지를 ISATAP 라우터로 유니캐스트해야 합니다.

ISATAP 호스트는 라우터 요청 메시지를 ISATAP 라우터로 유니캐스트하기 위해 먼저 논리적 ISATAP 서브넷에서 ISATAP 라우터 인터페이스의 유니캐스트 IPv4 주소를 확인해야 합니다. Windows Server 2008 및 Windows Vista의 IPv6 프로토콜의 경우 ISATAP 호스트는 호스트 이름 "ISATAP"를 IPv4 주소로 확인하거나 netsh interface isatap set router 명령을 사용하여 ISATAP 라우터의 유니캐스트 IPv4 주소를 가져옵니다.

인트라넷 마이그레이션: 1단계

IPv6으로 마이그레이션하는 작업의 1단계로 ISATAP를 인트라넷에 배포하려면 다음 단계를 수행해야 합니다.

ISATAP 서브넷 접두사 확인 인트라넷에 해당하는 논리적 ISATAP 서브넷에 할당할 64비트 서브넷 접두사를 확인해야 합니다. 48비트 접두사는 ISP 또는 인터넷 등록 기관에서 얻을 수 있으며 48비트 고유 로컬 접두사를 직접 파생시킬 수도 있습니다(tools.ietf.org/html/rfc4193에서 RFC 4193 참조).

48비트 접두사에서 논리적 ISATAP 서브넷을 위한 16비트 서브넷 ID를 선택합니다. 48비트 접두사 및 16비트 서브넷 ID의 조합이 64비트 ISATAP 서브넷 접두사입니다. 예를 들어 48비트 고유 로컬 접두사 FD8A:219C:052A::/48과 서브넷 ID 1이 조합되면 64비트 서브넷 접두사 FD8A:219C:052A:1::/64가 생성됩니다.

ISATAP 라우터 컴퓨터 지정 ISATAP 라우터로 사용할 컴퓨터를 결정합니다. 시중의 많은 라우터가 ISATAP 라우터 기능을 지원하지만 여기에서 설명하는 정보는 Windows Server 2008을 실행하는 컴퓨터와 관련된 것입니다.

ISATAP 라우터 컴퓨터에는 LAN 인터페이스가 여러 개일 필요가 없으며 1단계에서 인트라넷의 IPv6 지원 부분에 연결할 필요도 없습니다. 하지만 나중에 인트라넷의 IPv6 지원 부분에 연결되는 추가적인 LAN 인터페이스로 업데이트할 수 있도록 컴퓨터를 선택해야 합니다.

ISATAP 라우터 컴퓨터 구성 ISATAP 라우터 컴퓨터에서 다음 명령을 실행하면 ISATAP 라우터 컴퓨터의 ISATAP 터널링 인터페이스가 '미디어 연결됨' 상태가 됩니다.

netsh interface isatap set router IPv4Address 

IPv4Address는 논리적 ISATAP 서브넷에 연결된 ISATAP 라우터 컴퓨터의 LAN 인터페이스에 할당된 IPv4 주소입니다.

다음으로, 논리적 ISATAP 서브넷에 연결된 ISATAP 라우터 컴퓨터의 LAN 인터페이스에 해당하는 ISATAP 터널링 인터페이스의 이름 또는 인터페이스 색인을 확인합니다. 이것은 다음 명령의 출력을 통해 확인할 수 있습니다.

netsh interface ipv6 show interfaces

그런 다음 아래 명령을 사용하여 ISATAP 인터페이스에서 알림을 사용하도록 설정합니다.

netsh interface ipv6 set interface ISATAPInterfaceNameOrIndex advertise=enabled

ISATAPInterfaceNameOrIndex는 ISATAP 터널링 인터페이스의 이름 또는 인터페이스 색인입니다.

그런 다음 아래 명령을 사용하여 ISATAP 라우터 컴퓨터가 ISATAP 호스트에 ISATAP 서브넷 접두사를 알리도록 구성합니다.

netsh interface ipv6 add route ISATAPSubnetPrefix ISATAPInterfaceNameOrIndex publish=yes

ISATAPSubnetPrefix가 확인된 ISATAP 서브넷 접두사입니다.

DNS 구성 사용자의 DNS에서 인트라넷의 ISATAP 호스트가 이름 "ISATAP"를 성공적으로 확인할 수 있도록 이름 ISATAP에 대한 주소 (A) 레코드를 적절한 도메인에 추가합니다. 예를 들어 인트라넷 호스트가 contoso.com DNS 접미사를 사용하는 경우에는 IPv4 전용 인트라넷에서 ISATAP 라우터의 LAN 인터페이스에 할당된 IPv4 주소를 사용하여 이름 isatap.contoso.com에 대해 contoso.com 도메인에 A 레코드를 추가해야 합니다.

DNS 서버에서 Windows Server 2008을 실행하는 경우에는 DNS 서버에서 레지스트리 편집기(regedit.exe)를 사용하여 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS\Parameters\GlobalQueryBlockList 레지스트리 값에서 ISATAP 항목을 제거합니다.

ISATAP 호스트 테스트 인트라넷의 ISATAP 호스트에서 Ipconfig 도구를 사용하여 할당된 주소를 봅니다. ISATAP 호스트의 주소 형태는 ISATAPSubnetPrefix:: 5EFE:w.x.y.z 또는 ISATAPSubnetPrefix:: 200:5EFE:w.x.y.z와 같아야 합니다. 예를 들어 ISATAP 서브넷 접두사가 FD8A:219C: 052A:1::/64이고 ISATAP 호스트의 IPv4 주소가 10.1.31.97인 경우 ISATAR 호스트의 주소 FD8A: 219C:052A:1::5FE:10.1.31.97이 ISATAP 터널링 인터페이스에 할당되어야 합니다.

ISATAP 호스트에 ISATAP 서브넷 접두사 기반의 ISATAP 주소가 없는 경우에는 호스트가 이름 "ISATAP"를 확인할 수 있는지 살펴봅니다. 확인할 수 없으면 A 레코드가 적절한 도메인에서 생성되었는지 확인하고, Windows Server 2008을 실행하는 DNS 서버의 경우에는 GlobalQueryBlockList 레지스트리 값이 수정되어 ISATAP 항목이 제거되었는지 확인합니다. 이름을 확인할 수 있으면 ISATAP 라우터 컴퓨터가 올바르게 구성되었는지 살펴봅니다. 올바르게 구성되었으면 인트라넷의 라우터가 IPv4 프로토콜 41 트래픽의 전달을 허용하는지 확인합니다.

ISATAP 호스트는 ISATAP 서브넷 접두사 기반의 주소를 사용하여 자체적으로 구성할 수 있는 경우 이러한 ISATAP 주소를 DNS에 AAAA 레코드로 등록하고 이를 IPv6 기반 연결에 사용하기 시작합니다.

인트라넷 마이그레이션: 2단계

IPv6으로의 마이그레이션 2단계에서는 인트라넷의 IPv4 전용 및 IPv6 지원 부분 사이에서 전달을 수행하도록 ISATAP 라우터 구성을 수정해야 합니다.

ISATAP 라우터 컴퓨터에서 다음 명령을 실행합니다.

netsh interface ipv6 show interfaces

위의 명령 출력에서 인트라넷의 IPv6 지원 부분 및 ISATAP 터널링 인터페이스 연결된 LAN 인터페이스의 이름 또는 인터페이스 색인을 확인합니다.

다음 명령을 사용하여 ISATAP 인터페이스에서 전달을 사용하도록 설정합니다.

netsh interface ipv6 set interface ISATAPInterfaceNameOrIndex forwarding=enabled

다음 명령을 사용하여 LAN 인터페이스에서 전달을 사용하도록 설정합니다.

netsh interface ipv6 set interface LANInterfaceNameOrIndex forwarding=enabled

LANInterfaceNameOrIndex는 LAN 인터페이스의 이름 또는 인터페이스 색인입니다.

다음 명령을 사용하여 ISATAP 라우터에 대한 기본 경로를 추가합니다.

netsh interface ipv6 add route ::/0 LANInterfaceNameOrIndex NextHopAddress publish=yes

NextHopAddress는 인트라넷의 IPv6 지원 부분에서 인접 기본 IPv6 라우터의 IPv6 주소입니다.

인트라넷의 IPv6 지원 부분에서 논리적 ISATAP 서브넷에 도달할 수 있도록 하려면 ISATAP 라우터 컴퓨터를 가리키는 ISATAP 서브넷 접두사에 대한 경로를 사용하여 기본 IPv6 라우터를 구성하는 것이 중요합니다.

인트라넷의 IPv6 지원 부분에서 컴퓨터에 대한 ISATAP를 선택적으로 사용하지 않도록 설정하려면 인트라넷의 IPv6 지원 부분에 있는 컴퓨터가 이름 ISATAP를 확인할 수 없도록 DNS에서 이름 ISATAP에 대한 A 레코드를 조작합니다.

또 다른 방법은 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpip6\Parameters\DisabledComponents 레지스트리 값을 만들고 0x4(DWORD 형식)로 설정하는 것입니다.

인트라넷 마이그레이션: 3단계

3단계에서는 전체 인트라넷이 IPv6을 지원하는 경우 DNS를 통해 ISATAP 배포를 제거하고 ISATAP 라우터 컴퓨터를 다시 구성해야 합니다. DNS의 경우 이름 ISATAP에 대한 모든 A 레코드를 제거합니다. 이렇게 하면 호스트가 ISATAP 라우터의 IPv4 주소를 확인하는 것을 막을 수 있습니다.

ISATAP 라우터 컴퓨터에서 다음 명령을 실행합니다.

netsh interface isatap set router default 

이 명령은 ISATAP 구성 요소를 해당 기본 상태로 재설정합니다.

이 명령의 출력에서 ISATAP 터널링 인터페이스의 이름 또는 인터페이스 색인을 확인합니다.

netsh interface ipv6 show interfaces

다음 명령을 사용하여 ISATAP 인터페이스의 전달 및 알림을 사용하지 않도록 설정합니다.

netsh interface ipv6 set interface ISATAPInterfaceNameOrIndex forwarding=disabled advertise=disabled

다음 명령을 사용하여 ISATAP 라우터 컴퓨터에서 ISATAP 서브넷 접두사 경로를 제거합니다.

netsh interface ipv6 delete route ISATAPSubnetPrefix ISATAPInterfaceNameOrIndex

ISATAPSubnetPrefix가 ISATAP 서브넷 접두사입니다.

중복 ISATAP 라우터 및 방화벽 고려 사항을 비롯하여 ISATAP 배포에 대한 자세한 내용을 보려면 "ISATAP(Intra-Site Automatic Tunnel Addressing Protocol) 배포 가이드"(go.microsoft.com/fwlink/?LinkId=106926)를 참조하십시오.

Joseph Davies는 Microsoft의 기술 전문 저술가로 1992년부터 Windows 네트워킹을 주제로 글을 쓰고 가르치는 일을 하고 있습니다. Microsoft Press에서 8권의 책을 저술한 그는 월간 온라인 TechNet Cable Guy 칼럼의 저자이기도 합니다. The Cable Guy 칼럼은 microsoft.com/technet/community/columns/cableguy/about.mspx에서 읽을 수 있습니다.

© 2008 Microsoft Corporation 및 CMP Media, LLC. All rights reserved. 이 문서의 전부 또는 일부를 무단으로 복제하는 행위는 금지됩니다..