라이브러리
프로그래밍언어, 각종코드, 관련동향, 논문 등의 저장소
Teredo 전환기술을 이용한 사설 IP 환경에서 IPv6 이용
1. Teredo란
지금까지 다양한 IPv4-IPv6 전환기술이 개발되었지만, NAT(Network Address Translator) 내부의 사설 네트워크에서 IPv6를 이용할 수 있는 방법은 거의 없었습니다. 하지만, 얼마전 Microsoft에서 Teredo란 새로운 IPv4-IPv6 전환(터널링) 기술을 제안하고, Teredo를 지원하는 Advanced Networking Pack이 발표됨에 따라, NAT 내부의 사설 IP 사용자도 최신의 IPv6 주소체계를 이용할 수 있게 되었습니다.
 
Teredo는 NAT 내부에서 사설 IP를 이용하더라도, UDP 터널링 기법을 이용하여 IPv6를 사용할 수 있도록 하는 IPv4-IPv6 전환기술입니다. 따라서, 인터넷공유기를 이용하는 가정이나 소규모 기업에서도 IPv6 환경을 구성하여 IPv6 관련 서비스를 이용할 수 있습니다.
 
한국전산원 IPv6 포탈(Vsix.Net) 이용자 가운데 인터넷공유기를 이용한 사설 IP 환경에 있으신 분은 Teredo 전환기술을 이용하여 Vsix.Net에서 제공하는 각종 IPv6 서비스를 제한없이 이용할 수 있습니다.
 
2. Teredo 이용을 위한 사전 준비
A. Windows XP SP1(Service Pack 1) 설치
B. IPv6 스택(프로토콜) 설치
C. 고급네트워킹팩(Advanced Networking Pack, MS 권장 업데이트) 설치
D. Teredo를 이용할 수 있는 인터넷 공유기(NAT)
 
참고 : Teredo를 이용할 수 있는 인터넷공유기(NAT)란?

* Teredo를 지원하는 별도의 인터넷공유기가 있는 것은 아닙니다.
최근의 인터넷 공유기에서는 Teredo를 이용할 수 있으며, 2003년부터 판매된 대부분의 인터넷 공유기에서는 Teredo를 이용가능할 것으로 예상됩니다.

* Teredo를 정상적으로 이용할 수 있다고 자체적으로 확인된 인터넷 공유기는
   - Netgear RP114, MR814 등
   - AnyGate GW300A, ZIO INB3040SR VII, IP Share PS-620 Turbo, SMC 7004VBR, KTN-3100A 등
   - 아직 테스트는 해보지 않았지만, 이외에 많은 인터넷 공유기에서 Teredo를 이용할 수 있습니다.
   - Microsoft에서 테스트결과 정상작동이 확인된 인터넷공유기리스트
 
가. Windows XP SP1(Service Pack1) 설치
 
Windows XP SP1은 Windows XP 바탕화면의 '시작' >> 'Windows Update'를 실행하고, '업데이트 검색'을 선택하신뒤, '중요업데이트 및 서비스 팩' 항목을 통해 손쉽게 설치할 수 있습니다.
 
또는Windows XP SP1 다운로드 페이지에서 업데이트 파일을 다운로드 받으신 후 설치하시면 됩니다.
 
나. IPv6 프로토콜(스택) 활성화
 
IPv6 프로토콜(스택)을 활성화 시키기 위해서는Vsix.Net초기화면의Windows XP용 IPv6 StartPack을 이용하거나, 초기화면의 'IPv6 설치 Step by Step'에서 STEP2 까지 진행하시면 됩니다.
 
다. 고급네트워킹팩(Advanced Networking Pack) 설치
 
바탕화면에서 '시작' >> 'Windows Update'를 실행하고, 업데이트 검색을 선택하신뒤, Windows XP 항목중 고급네트워킹팩(Advanced Networking Pack)선택하여 설치하시면 됩니다.
 
또는 Microsoft 홈페이지[그림1]에서고급네트워킹팩 파일을 다운로드 받으신후 직접 설치하시면 됩니다.
 
사용자 삽입 이미지
[그림1] Microsoft 고급네트워킹 다운로드 페이지
 
라. Teredo를 이용할 수 있는 인터넷 공유기
 
2003년도 이후에 출시된 인터넷공유기라면 대부분 Teredo를 이용할 수 있습니다. 혹은 그이 전 구형 인터넷공유기라도, 공유기 내부의 Port Forwarding이나 DMZ 설정을 통해 Teredo가 동작하도록 할 수 있습니다.(구체적인 방법은 향후 별도로 설명하겠습니다.)
 
참고로 앞으로 설명할 Teredo 설정 과정에서 자신의 공유기의 Teredo IPv4-IPv6 전환기술 이용가능 여부를 직접 확인하실 수 있습니다.
 
3. Windows XP SP1 설치, 고급네트워킹팩 설치, Teredo 가상 인터페이스 확인
Teredo를 이용을 위한 필수요소인 Windows XP SP1과 고급네트워킹팩이 정상적으로 설치되어 있는지 확인해보겠습니다.
 
가. Windows XP SP1 설치 확인
 
Windows XP SP1(Service Pack 1)의 설치여부를 확인하기 위해서는 '시작 >> 설정 >> 제어판 >> 시스템'을 클릭하면 아래[그림2]처럼 Windows XP의 버전을 확인할 수 있으며, 버전이 Windows XP ... Service Pack 1로 나오면 Teredo를 이용할 수 있습니다.
 
사용자 삽입 이미지
[그림2] Windows XP 버전 확인
 
나. 고급네트워킹팩(Advanced Networking Pack) 설치 확인
 
다음으로, Teredo 기능을 구현하는 고급네트워킹팩이 정상적으로 설치되어 있는지 확인해 보겠습니다.
 
'시작 >> 설정 >> 제어판 >> 프로그램추가/제거' 아이콘을 선택하면, 아래[그림3]처럼, PC에 설치된 각종 소프트웨어 리스트를 볼 수 있으며, 이 가운데 'Windows XP용 고급 네트워킹 팩' 항목이 있으면 됩니다.
 
사용자 삽입 이미지
[그림3] Windows XP용 고급 네트워킹팩 설치 확인
 
다. Teredo 가상 인터페이스 확인
 
Windows XP SP1 및 고급네트워킹팩이 설치되었다면, 소프트웨어적으로는 준비되었습니다. 이번에는 네트워크 측면에서 PC의 Teredo 가상 인터페이스(Teredo Tunneling Pseudo-Interface)를 확인하겠습니다.
 
Teredo 가상 인터페이스는 명령프롬프트에서ipconfig명령을 이용하여 확인할 수 있습니다. '시작 >> 실행 >> cmd'를 입력하셔서[그림4]와 같은 명령프롬프트를 실행합니다.
 
명령 프롬프트에서ipconfig명령을 입력하시면[그림4]처럼 시스템에 설치된 각종 물리, 논리(가상) 인터페이스가 표시됩니다. 이중 'Tunnel Adapter Teredo Pseudo-Interface' 항목이 있으면 됩니다.
(아마 아직는 Teredo 가상 인터페이스는 있지만, 관련 설정이 되어 있지 않아, fe80으로 시작하는 Link Local 주소만 있을 것입니다.)
 
사용자 삽입 이미지
[그림4] Teredo 가상 인터페이스 확인
 
4. Teredo 서버와 릴레이(Relay) 설정
가. Teredo 서버와 릴레이 운영 현황
 
Teredo IPv4-IPv6 전환기술 이용을 위한 소프트웨어가 준비되었다면, Teredo 데이터를 처리해줄 Teredo 서버와 릴레이를 지정해 주어야 합니다. Teredo 서버는 각 Teredo Client(여러분이 사용하는 PC)의 정보를 관리하며, Teredo Relay는 여러분의 PC에서 전달된 IPv6 데이터를 공식 IPv6 네트워크로 전달하고, 공식 IPv6 네트워크에서 전달된 IPv6 데이터를 여러분의 PC로 전달해주는 역할을 합니다.
 
참고로, Teredo IPv4-IPv6 전환기술은 아직 표준화가 진행중이기 때문에, 일반인을 위한 Teredo 서버 및 릴레이의 운영은 6to4 릴레이 및 ISATAP 릴레이에 비해 활발하지는 않습니다.현재 Microsoft, 6Wind, 한국전산원에서 Teredo 서버와 릴레이를 운영하고 있습니다.
 
본 문서에서는 한국전산원 6NGIX에서 운영중인 Teredo 서버와 릴레이를 이용하겠습니다.
* 한국전산원 6NGIX의 Teredo 서버는 릴레이 역할을 함께 수행합니다.
 
나. Teredo 서버와 릴레이 설정
 
6NGIX의 Teredo 서버와 릴레이 주소는teredo.ngix.ne.kr입니다.[그림5]처럼 이 Teredo 서버 주소를 PC에 알려줘야 합니다.
 
명령프롬프트에서netsh interface ipv6 set teredo client teredo.ngix.ne.kr명령을 입력하시면 됩니다.
 
위 명령은, Teredo를 설정(set)하되, 이 PC는 클라이언트(clinet) 역할을 하며, teredo.ngix.ne.kr 호스트를 Teredo 서버(릴레이)로 지정한다는 의미입니다.
 
사용자 삽입 이미지
[그림5] Teredo 서버(릴레이) 설정 명령
 
5. Teredo 설정 상태 및 Teredo 주소 확인
이제, Teredo 관련 설정이 완료되었습니다. Teredo 관련 추가 명령을 이용하여 Teredo 설정 상태와 Teredo 주소를 확인할 수 있으며, 사용하시는 인터넷공유기(NAT)에서 Teredo를 이용할 수 있는지 확인할 수 있습니다.
 
가. 인터넷공유기(NAT)의 Teredo 지원여부 확인
 
일부 구형 인터넷공유기에서는 Teredo가 정상적으로 동작하지 않으므로, Teredo 주소를 확인하기에 앞서 인터넷공유기(NAT)의 호환성을 확인해보겠습니다.
 
명령프롬프트에netsh interface ipv6 show teredo명령을 입력하면,[그림6]과 같이 Teredo 설정상태가 표시됩니다.
 
사용자 삽입 이미지
[그림6] Teredo 설정 상태 표시
 
[그림6]의 내용은 현재 Client 모드이며, Teredo 서버는 teredo.ngix.ne.kr이고, NAT의 종류는cone NAT임을 의미합니다. NAT 종류가 cone으로 표시되면 아무런 문제없이 Teredo 전환기술을 이용할 수 있습니다.만약 위 내용에서 NAT의 종류가symmetric NAT로 표시되면, 해당 인터넷공유기(NAT)는 Teredo와 호환이 되지 않으므로 사용할 수 없습니다.
 
만약 symmetric NAT일 경우, 해당 인터넷공유기의 설명서를 참조하여, 인터넷공유기의DMZ 설정이나 Port 포워딩 기능등을 이용하여 사용하시는 PC에 대해 패킷포워딩을 하시면 cone NAT로 동작을 할 것입니다.
 
예를 들어 Client PC의 IP가 192.168.0.10일 경우, 인터넷공유기에서 192.168.0.10 PC에 대해 DMZ 설정을 하시거나, 모든 Port에 대해 192.168.0.10 PC로 포트 포워딩을 하시기 바랍니다.
 
나. Teredo 주소 확인
 
이용하는 인터넷공유기가 Teredo와 호환이 된다면, 시스템에 Teredo IPv6 주소가 생성됩니다.
 
명령프롬프트에서ipconfig명령을 입력하면, 아래[그림7]처럼 Teredo IPv6 주소가 표시됩니다.[그림7]에서Tunnel adapter Teredo Tunneling Pseudo-Interface항목에서3ffe:831f로 시작되는 IPv6 주소가 바로 시스템에 생성된 Teredo IPv6 주소입니다.
 
사용자 삽입 이미지
[그림7] Teredo 주소 확인
 
만약 6to4나 ISATAP(Automatic Tunneling)에 2002나 2001로 시작하는 IPv6 주소가 생성되어 있으면, Teredo 가상 인터페이스가 활성화되지 않고, Teredo IPv6 주소도 생성되지 않습니다.
 
이 경우, 6to4나 ISATAP 터널링 가상 인터페이스를 비 활성화 시켜야 합니다.
 
6to4 가상 인터페이스를 비 활성화 시키기 위해서는netsh interface ipv6 6to4 set state state=disabled,
ISATAP 가상 인터페이스를 비 활성화 시키기 위해서는
Windows XP SP1인 경우에는,netsh interface ipv6 isatap set router isatap.ngix.ne.kr disabled
Windwps XP SP1+고급네트워킹팩을 설치한 경우netsh interface ipv6 isatap set state state=disabled
명령을 입력하시면 됩니다.
 
6. Terdo IPv6 주소를 이용한 IPv6 네트워크 테스트 및 Vsix.Net 접속
지금까지 여러 절차를 거치면서 시스템에 Teredo IPv6 주소가 생성된 것을 확인하였습니다. 이제, 이 Teredo IPv6 주소를 이용해 IPv6 네트워크의 동작을 확인하고, IPv6 웹사이트(www.vsix.net)에 접속해 보겠습니다.
 
가. IPv6 네트워크 동작 테스트
 
Ping6명령을 이용해 한국전산원 6NGIX와 IPv6 네트워크 테스트를 해보겠습니다.
 
명령어 프롬프트에ping6 2001:2b8::1을 입력하면, 아래와[그림8]과 유사한 결과가 나올 것이며, 이는 공식 IPv6 네트워크와 정상적으로 통신이 된다는 것을 의미합니다.
 
사용자 삽입 이미지
[그림8] Ping6 테스트 결과
 
나. IPv6 웹사이트 접속 테스트
 
마지막으로, IPv6 접속을 지원하는 IPv6 웹사이트에 접속하여, Teredo를 이용한 웹 서비스 이용이 가능한지 확인해 보겠습니다.
 
Internet Explorer 주소 입력창에http://www.vsix.net을 입력하여 웹사이트에 접속하시면, 아래[그림9]처럼'IPv6로 접속하셨습니다. MY IP : 3ffe:831f:cbfe:210d:8000:c50e:2ccc:da67'메시지가 나오며, IPv6를 이용(접속)하고 있음을 알 수 있습니다.
 
사용자 삽입 이미지
[그림9] Teredo를 이용한 한국전산원 IPv6 포탈(www.vsix.net) 접속 테스트
 
7. Teredo 이용도중 문제점 해결
가. Teredo 주소는 있는데, IPv4로 접속되는 경우
 
Teredo 주소가 정상적으로 생성되고, IPv6 Ping6 테스트까지 정상적으로 되는데, 막상 웹사이트는 IPv4로 접속되는 경우가 발생할 수 있습니다. 현재 Windows XP의 문제로 생각되며, DNS를 변경함으로써 해결이 가능합니다.
 
기존 사용하시던 DNS를 168.126.63.1(KT DNS)로 변경해 보시기 바랍니다. 혹은 203.254.33.103으로 변경하시면 Vsix.Net은 IPv6로 접속하실 수 있습니다.
 
DNS 변경은 '시작 >> 설정 >> 제어판 >> 네트워크 연결 >> 해당 네트워크 인터페이스 >> 인터넷프로토콜 TCP/IP[그림10]>> DNS 항목을 변경하시면 됩니다.
 
그리고 DNS 항목을 변경하신후, 명령프롬프트에서ipconfig /flushdns명령을 내려주시기 바랍니다.
 
사용자 삽입 이미지
[그림10] DNS 변경을 위한 TCP/IP 항목 선택
 
나. Teredo 주소가 갑자기 사라지는 경우
 
간혹 Teredo 주소를 이용하여 IPv6 이용을 잘 하던중, 일시적인 네트워크 장애 등으로 Teredo 주소가 없어지는 경우가 있습니다.
 
이 경우 명령 프롬프트에서netsh interface ipv6 set teredo client teredo.ngix.ne.kr명령을 내려주시면 곧 Teredo IPv6 주소가 다시 생성됩니다.
  Comments,     Trackbacks