KR20110065976A - RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법 - Google Patents
RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법 Download PDFInfo
- Publication number
- KR20110065976A KR20110065976A KR1020090122690A KR20090122690A KR20110065976A KR 20110065976 A KR20110065976 A KR 20110065976A KR 1020090122690 A KR1020090122690 A KR 1020090122690A KR 20090122690 A KR20090122690 A KR 20090122690A KR 20110065976 A KR20110065976 A KR 20110065976A
- Authority
- KR
- South Korea
- Prior art keywords
- address
- ipv6
- message
- multicast
- host
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
제한된 IPv6 네트워크의 호스트는 접속을 하기 위해서 자신의 주소 구성을 위해 먼저 RS 메시지로 자신의 접속 정보를 보낸다. 그리고 나서 기존의 global IPv6 주소 구성과 다르게 라우터에서 그 RS 메시지를 받지 않고 보안 서버가 대신 수신하여 그 호스트의 접속 권한을 확인하여 접속 정보를 갱신하고 라우터에게 RA 메시지를 접속된 호스트에게 보내둘 것을 요청한다. 그러면 라우터는 자신의 라우팅 테이블을 업데이트하고 호스트에게 IPv6 주소를 부여하게 된다.
IPv6, 호스트, 주소
Description
본 발명은 RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법 에 관한 것이다.
오늘날의 인터넷은 컴퓨터와 컴퓨터를 잇는 단순한 연결의 개념을 넘어 모든 개인을 묶는 거대한 통합적 정보 인프라의 핵심이 되고 있다. 특히 WWW(world Wide Web) 기술로 인터넷에 대한 일반 사용자 층의 접근이 쉬워지고 이로 인해 개인에게 제공될 수 있는 인터넷 콘텐트 산업이 많은 발전을 이루게 되었다. E-mail, 게임, 음악, 영화 등 다양한 콘텐트 수요의 확대로 수많은 서비스 산업이 생겨나게 되었으며 이것을 기반으로 IT는 경제의 핵심적 역할을 하는 산업으로 부상하였다.
현재 국내 인터넷 산업의 핵심으로 떠오르는 BcN, Home Network, Ubiquitous, Green IT 분야는 차세대 인터넷을 중심으로 진행되고 있다. 하지만 현존하는 기술을 통해서 각각의 산업과 IT산업의 연결고리를 맺기에는 아직도 많은 난제가 있다. 특히 디지털 컨버전스가 가속화 됨에 따라 네트워크와 연결되는 디지 털 기기가 증가하고, End-to-End 커뮤니케이션의 요구가 늘어남에 따라 새로운 IPv6 주소체계에 대한 도입이 시급해질 전망이다.
현존하는 IPv4는 32비트의 주소체계로서 43억 개 정도의 주소를 할당해 줄 수 있지만 사실적으로는 5억 개에서 6억 개 정도의 주소를 할당할 수밖에 없는 한계를 가지고 있다. 또한 개인이 사용하는 장비나 산업에 들어가는 모든 기기들에게 IP 주소를 부여하기에는 턱없이 부족한 숫자이다. 이러한 난제를 해결하기 위해 NAT, CIDR, DHCP 등의 다양한 기술이 발전되어 왔지만, 이러한 방법은 근본적으로 IP 주소 공간을 확대하기 보다는 제한된 IP 주소를 효과적으로 할당, 이용하기 위한 단기적인 해결책에 불과하다는 것이 정설이며, IPv6 주소 부족현상을 해결하기 위해 IETF(Internet Engineering Task Force)에서는 새로운 주소 체계 즉 IPv6를 설계하였다.
본 발명이 이루고자 하는 기술적 과제는 RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법을 제공하는 것이다.
본 발명의 특징에 따른 IPv6 호스트 주소 자동 구성 제어방법은 RA 메시지와 RR 메시지를 이용하여 IPv6 호스트 주소를 자동으로 구성한다.
본 발명의 특징에 따르면 RA 메시지와 RR 메시지를 이용해 IPv6 호스트 주소 를 자동으로 구성할 수 있다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
1. IPv6 개요
1) IPv6 등장 배경
오늘날의 인터넷은 컴퓨터와 컴퓨터를 잇는 단순한 연결의 개념을 넘어 모든 개인을 묶는 거대한 통합적 정보 인프라의 핵심이 되고 있다. 특히 WWW(world Wide Web) 기술로 인터넷에 대한 일반 사용자 층의 접근이 쉬워지고 이로 인해 개인에게 제공될 수 있는 인터넷 콘텐트 산업이 많은 발전을 이루게 되었다. E-mail, 게임, 음악, 영화 등 다양한 콘텐트 수요의 확대로 수많은 서비스 산업이 생겨나게 되었으며 이것을 기반으로 IT는 경제의 핵심적 역할을 하는 산업으로 부상하였다.
현재 국내 인터넷 산업의 핵심으로 떠오르는 BcN, Home Network, Ubiquitous, Green IT 분야는 차세대 인터넷을 중심으로 진행되고 있다. 하지만 현존하는 기술을 통해서 각각의 산업과 IT산업의 연결고리를 맺기에는 아직도 많은 난제가 있다. 특히 디지털 컨버전스가 가속화 됨에 따라 네트워크와 연결되는 디지털 기기가 증가하고, End-to-End 커뮤니케이션의 요구가 늘어남에 따라 새로운 IPv6 주소체계에 대한 도입이 시급해질 전망이다.
현존하는 IPv4는 32비트의 주소체계로서 43억 개 정도의 주소를 할당해 줄 수 있지만 사실적으로는 5억 개에서 6억 개 정도의 주소를 할당할 수밖에 없는 한계를 가지고 있다. 또한 개인이 사용하는 장비나 산업에 들어가는 모든 기기들에게 IP 주소를 부여하기에는 턱없이 부족한 숫자이다. 이러한 난제를 해결하기 위해 NAT , CIDR , DHCP 등의 다양한 기술이 발전되어 왔지만, 이러한 방법은 근본적으로 IP 주소 공간을 확대하기 보다는 제한된 IP 주소를 효과적으로 할당, 이용하기 위한 단기적인 해결책에 불과하다는 것이 정설이며, IPv6 주소 부족현상을 해결하기 위해 IETF(Internet Engineering Task Force)에서는 새로운 주소 체계 즉 IPv6를 설계하였다.
2) IPv6의 특징
IPv4에 대한 문제점과 할당공간부족에 대한 문제점을 해결책으로 개발된 IPv6의 특징으로써는 다음과 같다.
o 거의 무한대 주소 공간 (128bit) - 43억 * 43억 * 43억 *43억 = 현재의 296배
o Aggregation-based address hierarchy
o 효과적인 백본 라우팅
o Efficient and Extensible IP datagram
o Fragmentation NOT by Routers, but only by a Source Host
o 보다 단순한 IPv6 기본 헤더, 40 bytes ㅇMore efficient forwarding
o Source Routing & Hop-by-Hop Options Header
o Autoconfiguration & IP Renumbering ㅇBuilt-in Security AH & ESP
o QoS Flow Labeling
3) IPv6 의 규격
현재 RFC 규약에 의해 프로토콜규격 주소규격 라우팅 및 기타 규격에 의해 정의된 IPv6의 규격은 다음과 같다.
o 프로토콜 규격
- RFC 2460: IPv6 Specification
- RFC 1886: DNS Extensions to support IPv6
- RFC 1981: Path MTU Discovery
- RFC 2461: Neighbor Discovery for IPv6
- RFC 2462: IPv6 Stateless Address Autoconfiguration
o 주소 규격
- RFC 2373: IPv6 Addressing Architecture
- RFC 2375: IPv6 Multicast Address Assignments
- RFC 1887: An Architecture for IPv6 Unicast Address Allocation
- RFC 2374: An IPv6 Aggregatable Global Unicast Address format
- RFC 2470: Proposed TLA and NLA Assignment Rules
o Routing
- RFC 2080: RIPng for IPv6
- RFC 2283: Multiprotocol Extensions for BGP-4
- RFC 2545: Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain
o 기타
- RFC 2292: Advanced Sockets API for IPv6
- RFC 2553: Basic Socket Interface Extensions for IPv6
- RFC 2473: Generic Packet Tunneling in IPv6 Specification
- RFC 2507: IP Header Compression
- RFC 2675: IPv6 Jumbograms
- RFC 2711: IPv6 Router Alert Option
IPv4 주소는 점으로 구분된 10진수 형식으로 표시된다. 이러한 32비트 주소는 8비트 경계로 구분됩니다. 8비트의 각 집합은 그와 동일한 십진수로 변환되며 점으로 구분된다. IPv6의 경우 128비트 주소는 16비트 경계로 구분되며 각각의 16비트 블록은 4자리 16진수로 변환되며 콜론으로 구분된다. 결과적으로 IPv6 주소는 콜론으로 구분되는 16진수 형식으로 표시됩니다. IPv6 주소는 다음과 같은 세가지의 유형을 가지고 있다.
유니캐스트(Unicast) : 단일 인터페이스를 위한 식별자이다. unicast 주소로 보내진 패킷은 해당 주소에 의해 식별된 인터페이스로 전달된다.
애니캐스트(Anycast) : (일반적으로 서로 다른 노드에 속하는) 인터페이스들의 집합을 위한 식별자이다. 애니캐스트 주소로 보내진 패킷은 해당 주소에 의해 식별된 인터페이스들 중의 하나의 인터페이스(라우팅 프로토콜의 거리 측정에 따라 "가장 가까운" 인터페이스)로 전달된다.
멀티캐스트(Multicast) : (일반적으로 서로 다른 노드에 속하는) 인터페이스들의 집합을 위한 식별자이다. 멀티캐스트 주소로 보내진 패킷은 해당 주소에 의해 식별된 인터페이스들로 전달된다. IPv6에는 브로드캐스트 주소는 존재하지 않으며, 브로드캐스트 주소의 기능은 멀티캐스트 주소에 의해 대체된다.
1.1 unicast IPv6 주소
IPv6 unicast 주소는 CIDR 기반의 IPv4 주소와 유사하게 임의 비트 길이의 프리픽스 기반으로 표현된다. 단일 인터페이스를 지정하며 Unicast 주소로 보내진 패킷은 그 어드레스에 해당하는 인터페이스에 전달된다. IPv6에서 Unicast 주소를 할당하는 여러가지 형태가 있다. 그 종류로는 global provider based Unicast 주소, geographic based Unicast 주소, NSAP 주소, IPX hierarchical 주소, site-local-use 주소, link-local-use 주소, IPv4-capable host 주소 등이 있고, 앞으로도 여러 형태가 추가될 것이다. Unicast 주소는 내부 구조를 갖는 주소, 갖지 않는 주소로 나뉘어 질 수 있다. 단 순한 IPv6 노드는 주소의 내부 구조를 인식하지 못하므로 내부 구조가 없는 주소가 사용되고, IPv6 노드의 성능이 좋아질수록 보다 복잡한 내부 구조를 인식하게 된다.
1.2 Global unicast address
unicast 주소는 한개의 장치에서만 확인되는 주소이다. global unicast 주소는 global(포괄적으로)에서 유일무이한 unicast 주소 이다. 즉 Global Address 라고도 하는 Aggregatable Global Unicast Address 는 format prefix (FP) 가001 이며 IPv4의 공인 IP에 해당된다. Global unicast addresses의 구조는 global routing table안의 routing table 엔트리의 수를 제한하는 routing prefixes의 클래스화(집합화)를 가능케 한다. Aggregatable Global Unicast Address 는 ISP 기반의 클래스화(집합화)를 통해 계층 구조화 형태로 되어 있다. 이 같은 구조로써 효율적인 routing 기반을 가능케 한다. Global Address의 범위는 IPv6 전체 인터넷이다.일반적인 global unicast 주소의 일반적인 포캣은 도 3과 같다.
global 라우팅 프리픽스는(일반적인 계층적으로 구조화됨) 사이트(서브넷/링크의 클러스터)에 할당되는 값이며, 서브넷 ID는 사이트 내의 링크의 식별자이다. 이진 값 000으로 시작하지 않는 모든 global unicast 주소는 섹션의 64비트의 인터페이스 ID 필드의 크기나 구조에 있어서 이와 같은 제약 사항이 없다.
이진 값 000으로 시작하는 global unicast 주소의 예로는 IPv4 주소가 포함된 IPv6 주소와 NSAP에 명시된 암화화된 NSAP 주소를 포함한 IPv6 주소 등을 들 수 있다. 이진 값 000으로 시작하지 않는(따라서 64비트의 인터페이스 ID 필드를 지닌) global 주소의 예는 통합(Aggregatable) global IPv6 unicast에서 찾아볼 수 있다. 통합 global unicast 주소의 형식은 도 4와 같다.
(1) TLA(Top-Level Aggregation) 식별자(ID) : TLA ID는 라우팅 계층에서 가장 최상위 식별자를 가리키며, 현재 구성된 형식에 따르면 8,192(213)개의 TLA ID가 존재한다. 추가적인 할당은 RES 필드를 사용하여 추가적으로 할당 가능하도록 구성되어 있다.
(2) NLA(Next-Level Aggregation) 식별자(ID) : NLA ID는 사이트 단위를 식별하기 위하여 TLD ID에 의해 기관 단위로 할당되어 있는 식별자를 가리키며, 그 형식은 도 5와 같다.
TLA ID를 할당받은 기관은 24비트의 NLA ID 공간을 할당할 수 있다. NLA ID 공간은 다음과 같이 규모에 따라 계층적으로 할당이 가능하다.
(3) SLA(Site-Level Aggregation Identifier) 식별자 ID : SLA ID는 서브넷 단위를 식별하기 위하여 SLA ID에 의해 서브넷 단위로 할당되어 있는 식별자를 가리키며, 그 형식은 도 6과 같다.
1.3 Link Local Address
FP, 1111 1110 10으로 식별되는 링크 로컬 주소는 같은 링크에서 인접한 노드와 통신할 때 노드에서 사용한다. 예를 들어 라우터가 없는 단일 링크 IPv6 네트워크에서 링크 로컬 주소는 링크의 호스트 사이에서 통신하는 데 사용된다. 링크 로컬 주소는 169.254.0.0/16 접두사를 사용하는 APIPA(Automatic Private IP Addressing) IPv4 주소와 같습니다. 링크 로컬 주소의 범위는 링크 로컬입니다. 링크 로컬 주소는 인접 탐색 과정에 필요하며 다른 모든 unicast 주소가 없어도 항상 자동으로 구성된다.
링크 로컬 주소는 항상 FE80으로 시작, 64비트 인터페이스 식별자와 함께 링크 로컬 주소의 접두사는 항상 FE80::/64이다. IPv6 라우터는 링크 범위를 벗어나는 부분까지 링크 로컬 트래픽을 전달하지 않는다.
1.4 Multicast Address
그룹 통신을 위하여 다중 수신자들에게 동일한 데이터를 전송하고자 할 경우 unicast 전송방식을 이용한다면 전송하고자 하는 데이터 패킷을 다수의 수신자에게 각각 여러 번 전송해야 하며, 이러한 동일한 패킷의 중복전송으로 인해 네트웍 효율이 저하된다. 또한 수신자 수가 증가할 경우 이러한 문제점은 더 커지게 됩니다. 현재의 인터넷 기술상에서 일반 텍스트, 이미지 등의 데이터를 동시에 다수의 사용자에게 전송할때 unicast로도 충분하다. 하지만 인터넷에서 제공되는 서비스가 텍스트, 이미지 기반에서 음성, 동영상 등의 멀티미디어 기반으로 이동함에 따라 unicast 기술로는 엄청난 대역폭과 네트워크 부하를 감당할 수 없게 되었다. 때문에 IPv6에서는 멀티캐스트를 지원하고 있다.
주소의 상위 Octet이 FF(11111111)값을 가짐으로써 unicast 주소와 구별된다. 만약 패킷이 멀티캐스트 주소의 수신지로 보내지면 이 패킷은 라우팅을 통해 멀티캐스트 그룹의 모두에게 멀티캐스팅(Multicasting)된다. 멀티캐스트의 경우 멀티캐스트 주소공간의 어느 부분이 사용되느냐에 따라서 멀티캐스트 그룹은 서로 다른 범위를 지니게 된다. 그 범위는 다음과 같다.
·지역 연결(Link Local)
·지역 사이트(Site Local)
·지역적 조직체(Organization Local)
·전역 영역(Global)
- Flag : 000T(상위 3 비트는 0으로 예약되어져 있음)
T=0 : 영구히 할당받은 멀티캐스트 주소임을 표시함.
T=1 : 일시적으로 할당받은 멀티캐스트 주소임을 표시함.
- Scope : 4 비트 멀티캐스트의 SCope값이며 멀티캐스트의 그룹의 범위를 제한하는데 사용한다.
0 : 예약됨,
1 : Node-Local Scope
2 : Link-Local Scope
5 : Site-Local Scope
8 : Organization-Local Scope
F : 예약됨.
3,4,6,7,9,A,C,D : 할당되어 있지 않음
Group ID : 그룹(Group) ID는 주어진 범위(Scope) 내에서 영구적이거나 일시적인 멀티캐스트 그룹을 지정한다. 영구적(Permanent) 멀티캐스트 주소라는 것은 할당 받은 멀티캐스트 주소가 범위(Scope)와 관계없다는 뜻이다. 이에 반해 일시적(Transient)이란 것을 할당받은 멀티캐스트 주소가 단지 주어진 범위(Scope) 내에서만 의미가 있다는 것이다.
로컬 노드 및 로컬 링크 범위의 모든 노드를 식별하려면 다음 멀티캐스트 주 소를 정의한다.
- FF01::1(로컬 노드 범위의 모든 노드 주소)
- FF02::1(로컬 링크 범위의 모든 노드 주소)
로컬 노드, 로컬 링크 및 로컬 사이트 범위의 모든 라우터를 식별하려면 다음 멀티캐스트 주소를 정의한다.
- FF01::2(로컬 노드 범위의 모든 라우터 주소)
- FF02::2(로컬 링크 범위의 모든 라우터 주소)
- FF05::2(로컬 사이트 범위의 모든 라우터 주소)
그룹 ID에서 112비트를 사용하면 2112개의 그룹 ID를 가질 수 있다. 그러나 IPv6 멀티캐스트 주소가 이더넷 멀티캐스트 MAC 주소로 매핑 되는 방식으로 인해 RFC 2373에서는 IPv6 멀티캐스트 주소의 하위 32비트에서 그룹 ID를 할당하고 나머지 원본 그룹 ID 비트를 0으로 설정하도록 권장한다. 그룹 ID에서 하위 32비트만 사용하면 각 그룹 ID는 고유한 이더넷 멀티캐스트 MAC 주소로 매핑된다.
2. IPv6 Address 자동 구성
호스트 IP 주소의 자동생성은 DHCP와 같은 서버를 이용하여 주소를 획득하는 상태 보존형 주소 자동 설정 방법과 호스트 측에서 스스로 주소를 생성하는 비상태형 주소 자동 설정 방법으로 분류된다. 서버를 사용하는 방법은 호스트 측에서 DHCP 서버에 주소를 요청하면 서버에서 할당 가능한 주소 중 하나를 호스트측에 할다하는 것이다. 따라서 서버는 대규모 데이터베이스를 갖추어야 하며, 엄격한 관리가 요구된다. 그에 반해 비상태형 주소 자동 설정은 호스트측에서 스스로 주소를 생성하는 방법으로 자신의 인터페이스 ID 정보와 라우터로부터 획득한 프리픽스 정보 또는 Well-Known 프리픽스 정보를 이용하여 생성하는 방법이다. 따라서 , 호스트가 자신의 주소에 대한 생성 및 할당을 책임진다.
2.1 IPv6 링크-로컬 기반의 주소 설정 기법
링크-로컬 주소는 단일 링크 내에서만 사용가능하다. 물론 라우터가 존재하지 않거나 DHCP 서버가 존재한다고 할지라도 사용가능하다. 이와 같은 환경에서 생성된 링크-로컬 주소는 시간적인 사용제약을 받지 않으며, 단일 링크 내에서 언제든지 사용가능하다. 이러한 링크-로컬 주소는 라우터의 도움 없이 주소 자동 설정 방식에 의해 획득될 수 있다. 그리고 Neighbor Discovery Protocol등에서 송수신 노드 주소 값으로 이용된다. 이와 같은 링크-로컬 주소의 형식은 도 10과 같다.
IPv6 주소의 앞 부분에 위치하는 비트의 집합을 프리픽스라고 한다. 이 프리픽스는 각 패킷이 전달 가능한 범위를 단일 링크로 보내기 위해 사용한다. 패킷이 속한 네트워크를 식별하기 위해서도 사용된다. 이 프리픽스를 이용하면 라우터부터 프리픽스에 대한 정보를 획득하지 않고서도 호스트만이 자신의 링크 로컬 주소를 생성할 수 있는 것이다. 이와 같은 링크-로컬 주소는 시스템의 초기 단계에서 모든 설정이 이루어진다. 인터페이스 ID는 와 같이 프리픽스 정보 뒤에서 64bit로 구성되어 있다. 이 부분은 well-known 프리픽스 정보에 자신의 인터페이스 ID 정보를 붙여서 생성한다. 일반적으로 인터페이스 ID는 64비트를 사용하도록 하고 있다.
(1) IEEE 802 주소(Mac address)
네트워크 어댑터의 일반적인 인터페이스 식별자는 IEEE 802 주소라고 하는 48비트 주소를 사용한다. 이 주소는 제조업체 ID라고도 하는 24비트 회사 ID와 보드 ID라고도 하는 24비트 확장 ID로 구성된다. 네트워크 어댑터의 각 제조업체에 고유하게 할당된 회사 ID와 조립 시 각 네트워크 어댑터에 고유하게 할당되는 보드 ID를 조합하여 전역적으로 고유한 48비트 주소를 생성한다. 이 48비트 주소는 실제 주소, 하드웨어 주소 또는 MAC(미디어 액세스 제어) 주소라고도 한다.
(2) IEEE EUI-64 주소
IEEE EUI-64 주소는 네트워크 인터페이스 주소를 지정하는 데 사용하는 새로운 표준이다. 회사 ID의 길이는 여전히 24비트이지만 확장 ID는 40비트로 늘어나 네트워크 어댑터 제조업체를 위해 훨씬 큰 주소 공간이 만들어진다.
도 12에서 보듯이 EUI-64는 인터페이스 ID를 만들기 위한 방법이다. 인터페이스 ID가 생성되는 방식은 인터페이스의 종류에 따라 다르다. 일반적인 Ethernet 인터페이스의 경우 IEEE EUI-64(Extended Unique Identifier-64) 주소가 생성된다. 모든 Ethernet 인터페이스는 IEEE 표준에 의해 할당받은 유일한 주소(MAC 어드레스)를 가지고 있다. 현재 MAC 어드레스는 48bit(6byte)의 물리적 주소를 가지고 있으며, 그 생성 절차는 아래와 같다.
인터페이스 ID 생성 절차
(1) MAC 어드레스가 두 부분으로 분리된다. )일반적으로 24비트와 25비트 사이, 혹은 3번째 바이트와 4번째 바이트 사이)
(2) "ff fe"가 3번째 바이트 사이에 삽입된다.
(3) MAC 어드레스의 나머지 3바이트가 뒤에 붙는다.
(4) 처음 8비트중 7번째 비트에 "Universal/Local" 비트임을 나타내는 수치가 더해진다. (1이면 Universal 관리 주소, 0이면 Locally 관리 주소)
(5) 처음 8비트중 8번째 비트에 "Individual/Group" 비트임을 나타내는 수치가 더해진다. (0이면 unicast 주소, 1이면 멀티캐스트 주소)
Interface ID는 IPv6 주소의 절반 밖에 되지 않는다. 즉 64bit prefix가 필요하다. Link-Local Unicast Address을 보면 link-local prefix가 예약되어 있고 0xFE80의 값을 가진다. 이것을 64bit prefix로 사용하여 Interface ID에 붙히면 host는 같은 link상에서 다른 장비와 통신할 수 있는 완전한 IPv6 주소가 된다.
2.2 주소 자동 구성 절차
IPv6의 매우 유용한 측면은 DHCPv6(Dynamic Host Configuration Protocol for IPv6) 같은 상태 저장 구성 프로토콜을 사용하지 않고 자동으로 IPv6 주소를 구성할 수 있다. 기본적으로 IPv6 호스트는 각 인터페이스에 대해 로컬 링크 주소를 구성할 수 있다. 또한 호스트에서 라우터 검색을 사용하여 라우터 주소, 추가 주소 및 기타 구성 매개 변수를 결정할 수도 있고 상태 저장 주소 구성 프로토콜을 사용해야 하는지 여부를 나타내는 표시는 라우터 알림 메시지에 포함된다. 또한 주소 자동 구성은 멀티캐스트 가능한 인터페이스에서만 수행할 수 있다. IPv6 주소 설정 종류는 아래와 같다.
IPv6 주소 설정 방법
(가) Manual Configuration
관리자 또는 사용자가 직접 자신이 사용할 IPv6 주소를 수동으로 입력하는 방식으로, 외부 서비스를 위한 서버를 이용할 때, 시스템이 변경되더라도 항상 동일한 주소를 가져야 하기 때문에 수동 설정을 많이 이용한다.
(나) Stateful Address Autoconfiguration
IPv6 주소를 할당하는 별도의 서버(예: DHCPv6 서버)이 존재하고 시스템이 주소할당 시스템으로부터 적절한 주소를 할당받는 방식이다. 기존 IPv4의 DHCP(Dynamic Host Configuration Protocol)와 유사한 개념이다
(다) Stateless Address Autoconfiguration
별도의 주소 관리 시스템 없이, 단말이 스스로 자신이 이용할 IPv6 주소를 생성하는 방식으로, 각 단말간 중복되지 않는 고유의 구분자(예: Mac 어드레스)를 이용하여 주소를 생성한다.
위의 3가지 과정중 현재는 Stateless Address Autoconfiguration를 주로 사용하고 연구망과 같은 특수한 환경에서는 Manual Configuration도 쓰기도 한다. 본 보고서에는 Stateless Address Autoconfiguration만 기술한다.
IPv6의 Stateless Autoconfiguration은 네트워크에 할당된 64bit Prefix와 인터페이스의 Interface ID의 조합으로 이루어진다. 즉 라우터에 할당된 64bir Prefix와 인터페이스(랜카드)에 부여되어 있는 MAC 어드레스의 조합을 통해 총 128bit의 IPv6 주소가 자동으로 생성되는 것이다.
사이트-로컬 또는 global 주소를 획득하기 위해서는 프리픽스가 이미 정해져 있는 링크-로컬 주소의 경우와는 달리 라우터로부터 프리픽스와 같은 주소설정에 필요한 정보를 획득하여야 한다. 라우터가 주기적으로 보내는 RA 패킷에서 획득할 수 있다. RA 패킷에 포함되는 정보는 프리픽스 정보, 유효 생존기간과 각 호스트의 NA 메시지들의 재전송 간격이다. 호스트는 이렇게 얻어진 프리픽스 정보와 자신의 인터페이스 ID를 이용하여 사이트-로컬 또는 global 주소를 자동 설정한다.
도 15는 주소 생성 과정을 나타내고 있다. 호스트에서 RS 패킷을 모든 라우터의 목적지로 보내면 라우터에서 주소 설정 정보를 포함한 RA 패킷을 전송하게 된다. RA 패킷의 목적지 주소는 모든 노드 대상의 멀티캐스트 주소인 FE02::1이다. 이는 RS 패킷을 보낸 호스트는 아직 정식 주소를 할당 되지 못했기 때문에 호스트가 RA 패킷을 받을 수 있도록 모든 노드로 전송한다. 그리고 나서 자신의 인터페이스 ID와 수신한 프리픽스 정보를 이용하여 global 주소를 생성하게 된다. 주소가 생성 후에도 호스트는 계속해서 RA 메시지를 수신하여 자신의 프리픽스 정보를 갱신한다.
2.3 Temporary IPv6 Address(RFC 3041)
현재 IPv4 기반 인터넷을 사용하는 일반 인터넷 사용자는 ISP(인터넷 서비스 공급자)에 연결한 다음 PPP(지점간 프로토콜)와 IPCP(Internet Protocol Control Protocol)를 사용하여 IPv4 주소를 가져온다. 사용자가 연결할 때마다 다른 IPv4 주소를 가져올 수 있으므로 IP 주소를 기반으로 하는 인터넷에서는 사용자 트래픽을 추적하기 어렵다. IPv6 기반 전화 접속 연결의 경우 라우터 검색과 상태 비저장 주소 자동 구성을 통해 연결된 후에 사용자에게 64비트 접두사가 할당된다. 인터페이스 식별자가 정적 IEEE 802 주소에서 파생된 것과 같이 항상 EUI-64 주소를 기반으로 하는 경우 접두사에 관계없이 특정 노드의 트래픽을 식별할 수 있으므로 특정 사용자와 그 사용자의 인터넷 사용을 추적하기 쉽다. 이 문제를 해결하고 익명 수준을 제공하기 위해 임의로 생성되며 시간에 따라 변하는 대체 IPv6 인터페이스 식별자는 RFC 3041에 설명되어 있다.
첫 번째 인터페이스 식별자는 임의의 숫자를 사용하여 생성됩니다. 나중에 인터페이스 식별자 값을 생성하기 위해 기록 정보를 저장할 수 없는 IPv6 시스템의 경우에는 IPv6 프로토콜을 초기화할 때마다 새 임의 인터페이스 식별자가 생성된다. 저장 기능이 있는 IPv6 시스템의 경우 기록 값이 저장되고 IPv6 프로토콜이 초기화되면 다음 과정을 통해 새 인터페이스 식별자가 만들어진다.
1. 저장소에서 기록 값을 검색하여 어댑터의 EUI-64 주소를 기반으로 하는 인터페이스 식별자를 추가한다.
2. 1단계에서 검색한 값으로 MD5(Message Digest-5) 단방향 암호화 해시를 계산한다.
3. 다음 인터페이스 식별자를 계산하기 위해 2단계에서 계산한 MD5 해시의 마지막 64비트를 기록 값으로 저장한다.
4. 2단계에서 계산한 MD5 해시의 처음 64비트를 사용하고 일곱 번째 비트를 0으로 설정합니다. 일곱 번째 비트는 U/L 비트에 해당하며 0으로 설정하면 로컬에서 관리되는 인터페이스 식별자를 나타냅니다. 이렇게 하면 인터페이스 식별자가 만들어진다.
이러한 임시 인터페이스 식별자를 기반으로 만들어진 IPv6 주소를 임시 주소라고 합니다. 임시 주소는 상태 비저장 주소 자동 구성 방식을 사용하는 공개 주소 접두사에 대해 생성됩니다. 임시 주소는 유효 수명과 기본 수명의 다음 값 중 더 작은 값에 사용된다.
수신한 라우터 알림 메시지의 접두사 정보 옵션에 포함된 수명
유효 수명은 일주일, 기본 수명은 하루인 로컬 기본값
임시 주소의 유효 수명이 만료되면 새 인터페이스 식별자와 임시 주소가 생성된다.
3. ICMPv6
IPv6의 Internet Control Message Protocol(ICMP)은 IPv4(RFC 792)의 ICMP와 같은 기능을 가지고 있습니다. ICMPv6은 ICMP 목적지 도달 불가 메시지와 같은 오류 메시지와 ICMP 에코 요청 및 응답 메시지 같은 정보 메시지를 생성한다. 추가적으로 IPv6의 ICMP 패킷은 IPv6 네이버 탐색(Neighbor Discovery) 프로세스, 경로 MTU 탐색 그리고 IPv6을 위한 Multicast Listener Discovery(MLD) 프로토콜에서 사용된다.
IPv6 라우터들은 MLD를 이용하여 직접 부착된 링크 상의 멀티캐스트 청취자(특정 멀티캐스트 주소로 가는 멀티캐스트 패킷을 수신하고자 하는 노드)를 탐색한다. MLDv1은 IPv4를 위한 Internet Group Management Protocol(IGMP) 버전 2를 기반으로 하는 RFC 2710, Multicast Listener Discovery(MLD) for IPv6에서 설명되어 있다. MLDv2(draft)는 IGMPv3과 비슷하다. 기본 IPv6 패킷 헤더의 Next Header 필드 값이 58이면 IPv6 ICMP 패킷을 의미한다. IPv6의 ICMP 패킷은 그것이 모든 확장자 헤더 뒤에 위치하며 IPv6 패킷의 마지막 정보라는 점에서 전송 레이어 패킷과 비슷하다. IPv6 ICMP 패킷 내에서는 ICMPv6 Type과 ICMPv6 Code 필드가 ICMP 메시지 종류 등과 같은 IPv6 ICMP 패킷의 세부 정보를 나타낸다. Checksum 필드 값은 IPv6 ICMP 패킷과 IPv6 헤더의 필드에서 얻어집니다. ICMPv6 Data 필드는 IP 패킷 프로세싱과 관련된 오류 또는 진단 정보를 포함한다.
3.1 ND(Neighbor Discovery)
IPv6 ND(인접 탐색)는 인접한 노드 사이의 관계를 확인하는 일련의 메시지와 과정이다. ND는 IPv4에서 사용되는 ARP(Address Resolution Protocol), ICMP(Internet Control Message Protocol) 라우터 검색 및 ICMP Redirect 등을 대체하고 다른 기능을 추가로 제공한다.
Router Discovery : 연결된 호스트가 라우터의 위치를 찾는 방법
Prefix Discovery : 호스타가 연결된 링크에서 주소의 생성을 위해서 프리픽스의 집합을 찾는 방법이며, 송신 노드는 프리픽스를 이용하여 목적 노드가 자신과 동일 링크상에 있는 지를 구별하기 위해 사용하는 방법.
Address Autoconfiguration : 호스트는 IPv6 네트워크 안에서 주소를 자동 설정 방법.
Address Resolution : IPv4의 ARP, RARP 기능.
Next-hop-Determination : IP 목적 주소를 라우팅 경로상의 인접한 IP 주소로 대응시키는 알고리즘
Duplicate address Detection : 노드가 사용하려고 하는 주소를 다른 노드에서 이미 사용 중인지 판단하는 방법.
Redirect : 라우터가 호스트에게 특정 목적지로 가는데 더 좋은 경로를 알려주는 방법.
3.1.1 RS(Router Solicitation) 메시지
호스트는 라우터가 RA를 신속하게 발송할 수 있도록 요청하는 도 16과 같은 RS메세지를 전송한다. 각 호스트의 인터페이스를 이용 가능한 상태로 설정하면, 호스트는 라우터에게 즉시 RA 메시지를 보내줄 것을 요청하게 된다.
ICMPv6 type은 133이고 code는 0이다. RS로 encapsuate되는 IPv6 packet의 소스 주소는 packet 생성지 interface에 할당된 IPv6 주소이거나 할당된 주소가 없는 비지정 주소인 :: 이다.(후자의 경우는 생성지 host가 자동 주소설정을 시작할때 이다.) 목적지 주소는 all-node multicast 주소인 FF02::2 이다. Option field는 자신이 시작점 interface의 link-layer 주소를 알고 있다면 이 field에 포함 할 수 있다. 하지만 생성지가 자동 주소 설정을 요구하는 중일 경우와 같이 encapsulate 될 packet의 소스 주소가 비지정 주소인 경우에는 소스 link-layer 주소는 포함할 수 없다.
3.1.2 RA(Router Advertisement) 메시지
호스트는 자신의 존재를 아래와 같은 메시지를 통해 광고한다. 만약 멀티캐스트가 가능한 링크라면, 각 라우터는 주기적으로 RA 패킷을 멀티캐스트하여 자신이 이용 가능한 상태임을 알려주게 된다. RA 메시지의 전송 주기는 호스트에 의해 라우터의 세팅에 따라 수 초 혹은 수 분 안에 라우터의 존재를 알 수 있도록 충분히 짧아야한다. 이와 같은 RA 메시지들을 수신한 호스트는 기본 라우터 목록을 갱 신하게 되며, ON-LINK 결정 또는 주소 자동 설정에 사용하는 프리픽스 정보, hop-limit 값 등을 획득할 수 있다.
3.1.3 NS(Neighbor Solicitation)
NS 메시지는 크게 3가지 기능을 수행하기 위해 사용되는데, 인접 호스트의 링크계층 주소를 결정하는 기능, 인접 호스트가 저장해 둔 링크 계층 주소를 통해 계속 도달 가능한 지 확인하는 기능 및 DAD 과정을 위해 사용된다. 먼저 링크계층 주소를 결정하는 방법을 살펴보면, 호스트는 제시된 NS 메시지를 보내서 목표 호스트에 자신의 링크 계층 주소를 제공하면서 동시에 목표 호스트의 링크 계층 주소를 요청한다. 송신 호스트는 타켓 호스트에게 링크계층 주소를 회신하도록 요청하는 NS 메시지를 멀티캐스트해서 Address Resolution을 수행한다.
ICMPv6 type은 135이고 code는 0이다. NS로 encapsulate되는 IPv6 packet의 소스 주소는 생성될 interface에 할당된 IPv6 주소이거나 NS가 Duplicate Address Detection을 위해 보내졌다면 비지정 주소인 :: 이다. 목적지 주소는 target 주소에 일치하는 solicited-node multicast이거나 target 주소이다.
3.1.3 NS(Neighbor advertisement)
IPv6 Neighbor advertisement 메시지는 IPv6 Neighbor solicitation 메시지에 대한 응답이다. Neighbor solicitation 메시지를 수신한 다음, 목적지 노드는 ICMP 패킷 헤더의 Type 필드값을 136으로 하여 IPv6 Neighbor advertisement 메시지를 로컬 링크에 전송한다. IPv6 Neighbor advertisement 메시지을 수신한 다음, 소스 노드와 목적지 노드는 통신을 할 수 있게 된다. IPv6 Neighbor advertisement 메시지는 로컬 링크에 있는 노드의 링크-레이어 주소가 변경되었을 때도 전송된다.
3.2 MLD(Multicast Listener discovery) version 1
인터넷으로 다수인에게 멀티캐스트를 행할 때 특정 그룹을 관리하기 위해 사용하는 프로토콜이다. 멀티캐스트는 특정 1인에게 송신하는 unicast나 불특정 다수인에게 송신하는 방송과 달리, 특정 다수인에게 정보를 송신하므로 차별화된다. IPv6에 표준 기능으로 탑재된 멀티캐스트를 활용함으로써 효율적인 멀티캐스트를 행할 수 있다. 라우팅 프로토콜 메시지 형식 및 부호화 방식 등에 대한 상세한 사항은 RFC 2710에 규정되어 있다.
MLD 프로토콜은 ICMPv6의 서브 프로토콜이라 할 수 있다. 즉, MLD 메시지 형식은 ICMPv6 메시지 형식에 따라서 MLD 메시지는 ICMPv6를 의미하는 Next 헤더에 58이 입력된다. MLD 프로토콜에서 사용된 메시지 형식은 도 21과 같다.
MLD는 멀티캐스팅을 지원하는 IPv6 라우터와 네트워크 세그먼트의 멀티캐스트 그룹 구성원 간의 구성원 자격 상태 정보를 교환하는 데 사용된다. 멀티캐스트 그룹의 호스트 구성원 자격은 개별 구성원 호스트에 의해 보고되며 구성원 자격 상태는 멀티캐스트 라우터에 의해 주기적으로 폴링 된다. 다음 표에서는 MLD 메시지 유형에 대해 설명한다.
3.2 MLD(Multicast Listener discovery) version 2
MLD(Multicast Listener Discovery) 프로토콜은 IPv6 라우터가 자신에게 직접 연결된 링크상에 멀티캐스트 수신자가 있는가를 탐색하기 위해 사용되는 프로토콜이다. MLD를 이용하여 라우터는 특정 멀티캐스트 그룹 주소에 어떤 호스트들이 가입되어 있는가를 알 수 있다. MLD는 IPv4 멀티캐스트를 위한 IGMPv2를 IPv6 환경에 맞도록 수정한 것으로, 현재 IGMPv3를 기반으로 한 MLDv2의 표준화가 되었다. MLDv2는 MLDv1의 기능에 소스 필터링(source filtering) 기능이 추가된 것으로 MLDv1과 호환되도록 설계되었다.
MLDv2 프로토콜은 ICMPv6 프로토콜의 서브 프로토콜로서 MLDv2 메시지는 IPv6 패킷 내에서 Next Header 58의 값으로 식별된다. 모든 MLDv2 메시지는 링크 로컬 IPv6 주소를 발신 주소로 표시해서 전송되어야 하며, 송신 노드가 IPv6 주소를 할 당받지 못한 경우에는 IPv6 unspecified 주소를 발신 주소로 표시해서 전송해야 한다. 또한, IPv6 패킷 헤더 내의 Hop Limit 필드를 1로 설정을 하고, Hop-by-Hop 옵션 헤더 내의 IPv6 라우터 alert 옵션도 설정되어 있어야 한다. MLDv2 프로토콜에는 현재 다음의 두 가지의 메시지가 정의되어 있다.
- Multicast Listener Query: 멀티캐스트 라우터가 자신의 이웃 노드들의 멀티캐스트 수신 상태를 수집하기 위해서 사용하는 메시지
- Version 2 Multicast Listener Report: IP 노드가 이웃한 라우터들에게 자신의 현재 멀티캐스트 수신 상태 및 멀티캐스트 수신 상태의 변화를 보고하기 위해서 사용
위에서 정의된 메시지 이외의 메시지들은 라우터에서 차단된다. 도 23은 멀티캐스트 청취자 질의 메시지의 형식을 나타낸 것이다. 멀티캐스트 메시지는 ICMPv6 패킷 내에 포함되며 각 필드에 대한 설명은 다음과 같다.
- Type: 메시지 종류를 나타내며 130으로 설정
- Code: 송신측에서 0으로 설정하며, 수신측에서는 무시됨
- Checksum: ICMPv6 의사헤더를 포함해서 전체 MLDv2 메시지에 대해서 계산함
- Maximum Response Code: 질의 메시지를 받은 수신자가 리포트메시지를 전송하기 전에 일정 시간 동안 전송을 지연시키는 최대 허용 값
- Reserved: 송신측에서 0으로 설정하며, 수신측에서는 무시됨
- Multicast Address: 질의하고자 하는 멀티캐스트 그룹 주소
- Resv: 송신측에서 0으로 설정하며, 수신측에서는 무시함
- S Flag(Suppress Router-side Processing): 1로 설정된 MLDv2 메시지를 수신하는 멀티캐스트 라우터들은 질의의 응답을 기다리면서 수행하는 타이머 업데이트를 억제함
- QRV(Querier's Robustness Variable): 질의자에 의해서 설정되며, 0이 아닌 값의 경우에는 질의에 대한 응답을 전송할 때, 최대 QRV의 값만큼의 재전송을 함으로써 메시지의 손실을 방지함
- QQIC(Querier's Query Interval Code): 질의자가 멀티캐스트 청취자들에게 질의 메시지를 보내는 시간 간격을 초 단위로 표시
- Number of Source(N): 질의 메시지 내에 포함된 멀티캐스트 송신자 주소의 수를 나타냄(Multicast Address and Source Specific Query에서만 사용)
- Source Address[i]: n개의 멀티캐스트 송신자의 unicast 주소를 벡터로 표시
MLDv2의 Qurey는 아래와 같다.
- General Query: 어떤 멀티캐스트 주소를 사용하는 링크상에 멀티캐스트 청취자가 있는가를 조사하기 위해서 사용하며, 멀티캐스트 주소 필드와 Number of Sources 필드는 0으로 설정함
- Multicast Address Specific Query: 특정 멀티캐스트 그룹 주소에 대한 청취자가 있는가를 알아보기 위해 사용하며 질의를 하려는 멀티캐스트 그룹 주소를 멀티캐스트 주소 필드에 설정함
- Multicast Address and Source Specific Query: 특정 멀티캐스트 그룹의 소스 리스트들 중 특정 송신자에 대한 멀티캐스트 청취자가 있는가를 알아보기 위해 사용함
MLDv2에서 General Query는 IPv6 링크 scope 멀티캐스트 주소(FF02::1)를 목적지로 전송되어야 하며, Multicast Address Specific과 Multicast Address and Source Specific Query는 질의하려는 멀티캐스트 그룹 주소가 목적지 주소가 된다. 도 23은 멀티캐스트 청취자 리포트 메시지의 형식을 나타낸 것이다. 각 메시지 필드에 대한 설명은 다음과 같다.
- Type: 130
- Reserved: 송신측에서 0으로 설정하며, 수신측에서는 무시됨
- Checksum: ICMPv6 의사헤더를 포함해서 전체 MLDv2 메시지에 대해서 계산함
- Number of Multicast Address Records(M): 청취자 리포트 메시지에 포함된 멀티캐스트 그룹주소 레코드의 수를 나타냄
- Multicast Address Record: 청취자 리포트의 송신자가 현재 자신이 가입하고 있는 멀티캐스트 그룹의 주소들을 나타냄 멀티캐스트 그룹 주소 레코드는 다음의 세 종류로 구분되며, 청취자 리포트의 송신자의 현재 멀티캐스트 청취 상태를 나타낸다.
- Current State Record: 가입한 멀티캐스트 그룹 주소에 대해서 현재 인터페이스의 멀티캐스트 청취 상태를 표시
- Filter Mode Change Record: 응용의 API 호출로 인하여 인터페이스의 필터모드가 변할때 마다 전송됨
- Source List Change Record: 응용의 API 호출로 인해서 인터페이스의 필터모드의 변화는 동반하지 않고, 소스 리스트만 변했을 경우 전송됨
MLDv2 프로토콜은 INCLUDE 모드와 EX-CLUDE 모드 두 가지의 인터페이스 필터모드를 지원한다. INCLUDE 모드인 경우에는 멀티캐스트 청취자가 가입한 그룹 G에 대해서 멀티캐스트 송신자 그룹 S에 표시된 송신자들이 보내는 멀티캐스트 패킷만을 수신하는 상태를 나타낸다. EXCLUDE 모드인 경우에는 멀티캐스트 그룹 G에 대해서 송신자 그룹 S에 표시된 송신자들을 제외한 다른 멀티캐스트 송신자들이 보내는 멀티캐스트 패킷만을 수신하는 상태를 나타낸다.
멀티캐스트 라우터는 자신에게 부착된 링크 상에서 어떤 멀티캐스트 그룹 주소가 청취자를 가지는가를 알기 위하여 MLDv2 프로토콜을 사용한다. 각각의 라우터는 각 링크에 대해서 멀티캐스트 그룹 주소와 해당 그룹 주소에 대한 송신자 목록 및 인터페이스의 필터코드 정보를 다음과 같은 형식으로 유지하고 있다(IPv6 multicast address, multicast ad-dress timer, filer mode, {source records list}). 인터페이스의 설정이 완료되면 라우터는 자신에 게 연결된 각각의 링크에 대해서 Querier 또는 Non-Querier를 수행하게 된다. 하나의 링크에 두개 이상의 멀티캐스트 라우터가 존재하는 경우에는 IP 주소의 값이 작은 라우터가 Querier를 담당한다. 라우터는 자신에게 연결된 링크의 멀티캐스트 주소 에 대해서 주기적으로 General Query를 전송함으로써, 현재 링크상에 멀티캐스트 청취자가 존재하는가를 발견한다.
MLDv2 라우터의 동작 과정은 도 24와 같다. 라우터가 멀티캐스트 청취자로부터 청취자 리포트를 수신하게 되면 리포트 내에 포함된 청취자의 가입한 멀티캐스트 그룹 주소, 필터모드, 소스 주소 리스트를 이용해서 라우터의 인터페이스 상태를 갱신하게 된다.
4. OS별 IPv6 구현
1) Windows(PC)
현재 PC에서 많이 사용되고 있는 Microsoft사의 Windows 운영체제는 각 버전별로 IPv6 지원 여부가 다르다. 다음의 표와 같이 Microsoft사는 2006년 이후부터 출시되는 운영체제에는 기본적으로 IPv6가 탑재되어 있다. 이들 운영체제에서는 기본적으로 IPv6가 사용되며, 이용자는 IPv4 기능을 제거하고 IPv6만 사용하도록 운영체제를 설정할 수 있는 기능이 포함되어 있다. 특히 Windows Vista™은 초기에 IPv6 주소를 취득하게 되면, 듀얼스택 모드로 IPv6를 우선적으로 사용하게 된다. 또한 IPv6 터널 설정 시 ISATAP, Teredo, 6to4 터널 등 IPv6 전환기법으로 접속이 가능하다.
2) Windows 이외의 운영체제(PC)
Windows를 제외한 많은 운영체제 개발 회사들은 향후 IPv6의 확대보급에 대비하기 위해 IPv6가 내장된 운영체제를 지원하고 있다. 다음의 표는 Windows 이외의 운영체제에서 IPv6지원 현황을 나타내고 있다.
5. 테스트 베드 구축 및 IPv6 패킷 제어 기법 제안
본 연구의 테스트 베드는 IPv6 전용망인 KOREN을 가지고 시험을 하였다. 먼저 라우터는 1G를 지원한는 IPv6 라우터로 현재 한국정보사회진흥원으로부터 자동 주소 설정 방식으로 IPv6 주소를 받고 있다. 설치된 운영체제의 종류는 위의 도 24와 같다. 모든 운영체제는 IPv6 주소만 가지고 있고 테스트의 원활한 진행을 위하여 IPv4의 기능을 모두 삭제하고 진행하였다. 그리고 윈도우즈 XP에 패킷에 대한 정보를 확인하기 위하여 패킷 캡쳐를 할 수 있는 Wireshark을 설치하였다.
5.1 RA 메시지를 이용한 호스트 IPv6 주소 자동 구성 제어 방법
제한된 IPv6 네트워크의 호스트는 접속을 하기 위해서 자신의 주소 구성을 위해 먼저 RS 메시지로 자신의 접속 정보를 보낸다. 그리고 나서 기존의 global IPv6 주소 구성과 다르게 라우터에서 그 RS 메시지를 받지 않고 보안 서버가 대신 수신하여 그 호스트의 접속 권한을 확인하여 접속 정보를 갱신하고 라우터에게 RA 메시지를 접속된 호스트에게 보내둘것을 요청한다. 그러면 라우터는 자신의 라우팅 테이블을 업데이트하고 호스트에게 IPv6 주소를 부여하게 된다.
5.2 RR 메시지를 이용한 호스트 IPv6 주소 자동 구성 제어 방법
제한된 IPv6 네트워크의 호스트는 접속을 하기 위해서 자신의 주소 구성을 위해 먼저 RS 메시지로 접속한 네트워크에 자신의 접속 정보를 보낸다. 그 즉시 보안 서버는 호스트가 접속 권한을 가지고 있는지 확인한다. 접속 권한이 있는 호스트이면 라우터 대신 RA 메시지를 보내고 RR(Router Redirect) 메시지를 보낸다. Router Redirect 메시지는 라우터가 호스트에게 목적 노드에 도달하기 위한 여러 경로 중에서 최적의 경로상의 첫 번째 홉을 알려 주기 위해서 사용된다.
보안서버는 Redirect 패킷을 호스트에게 목적지로로의 경로에서 더 좋은 첫 번째 홉 노드를 알려주는 것이다. 여기서 첫 번째 홉 노드는 IPv6 라우터를 말한다. 도 28은 본 제안 방법에서 사용된 Redirect 메시지 포맷을 나타내고 있다.
그리고 나면 호스트는 RR 메시지를 기반으로 자신의 IPv6 네트워크에서 기본 라우터를 지정하게 된다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
도 1은 128비트로 구성된 IPv6 unicast 주소의 일반 유형을 도시한 도면이다.
도 2는 서브넷 프리픽스와 인터페이스 ID로 구성된 IPv6 unicast 주소의 일반 유형을 도시한 도면이다.
도 3은 일반적인 IPv6 global unicast 주소 포맷을 도시한 도면이다.
도 4는 통합 global unicast 주소 형식을 도시한 도면이다.
도 5는 NLA(Next-Level Aggregation) 식별자(ID)를 도시한 도면이다.
도 6은 SLA(Site-Level Aggregation Identifier) 식별자 ID를 도시한 도면이다.
도 7은 Link Local Address를 도시한 도면이다.
도 8은 멀티캐스트 주소 포맷을 도시한 도면이다.
도 9는 IPv6 Well-known multicast addresses를 도시한 도면이다.
도 10은 링크-로컬 주소의 구조를 도시한 도면이다.
도 11은 IEEE 802 주소를 도시한 도면이다.
도 12는 Converting IEEE 802 MAC Addresses To IPv6 Modified EUI-64 Identifiers를 도시한 도면이다.
도 13은 IPv6 EUI-64 변환 주소 예제를 도시한 도면이다.
도 14는 Stateless Autoconfiguration를 도시한 도면이다.
도 15는 자동 주소 설정 순서를 도시한 도면이다.
도 16은 Router solicitation (RS) 포맷을 도시한 도면이다.
도 17은 Router advertisement (RA) 포맷을 도시한 도면이다.
도 18은 Neighbor solicitation (NS) 포맷을 도시한 도면이다.
도 19는 Neighbor advertisement (NA) 포맷을 도시한 도면이다.
도 20은 MLD 동작 과정을 도시한 도면이다.
도 21은 MLD(Multicast Listener discovery) 포맷을 도시한 도면이다.
도 22는 MLDv2 Listener query massage 포맷을 도시한 도면이다.
도 23은 MLDv2 Listner Report Massage 포맷을 도시한 도면이다.
도 24는 MLDv2 동작과정을 도시한 도면이다.
도 25는 IPv6 제어 패킷에 관한 연구 Testbed를 도시한 도면이다.
도 26은 RA 메시지를 이용한 호스트 IPv6 주소 자동 구성 제어 방법을 도시한 도면이다.
도 27은 RR 메시지를 이용한 호스트 IPv6 주소 자동 구성 제어 방법을 도시한 도면이다.
도 28은 RR 메시지를 이용한 호스트 IPv6 주소 자동 구성 제어 방법에서의 메시지 format 을 도시한 도면이다.
Claims (1)
- RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090122690A KR20110065976A (ko) | 2009-12-10 | 2009-12-10 | RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090122690A KR20110065976A (ko) | 2009-12-10 | 2009-12-10 | RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110065976A true KR20110065976A (ko) | 2011-06-16 |
Family
ID=44398995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090122690A KR20110065976A (ko) | 2009-12-10 | 2009-12-10 | RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110065976A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101296376B1 (ko) * | 2012-03-02 | 2013-08-14 | 건국대학교 산학협력단 | IPv6 네트워크에서 호스트 장치 차단 방법, 그리고 이를 구현한 네트워크 관리장치 |
-
2009
- 2009-12-10 KR KR1020090122690A patent/KR20110065976A/ko not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101296376B1 (ko) * | 2012-03-02 | 2013-08-14 | 건국대학교 산학협력단 | IPv6 네트워크에서 호스트 장치 차단 방법, 그리고 이를 구현한 네트워크 관리장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100477653B1 (ko) | 외부망에서의 dns 서버 검색 장치 및 방법 | |
JP4938834B2 (ja) | アドレス取得 | |
CN1897589B (zh) | IPv6无状态地址配置中的接入装置、路由设备及方法 | |
US6532217B1 (en) | System for automatically determining a network address | |
CN100499674C (zh) | 一种路由器下终端设备ip地址的分配方法 | |
US7710967B2 (en) | Controlling advertisement of management prefixes | |
US7483962B2 (en) | Apparatus and method for automatically allocating virtual addresses to nodes having same address | |
US8867542B2 (en) | Method and apparatus for connecting subscriber devices to an IPv6-capable aggregation network | |
KR20110065975A (ko) | 로컬 링크 ipv6 환경에서 mac 정보를 이용한 ipv6 주소 수집 방안 | |
Kashyap | IP over InfiniBand (IPoIB) architecture | |
KR100369326B1 (ko) | 정보가전의 네트워크 구성을 위해 정보가전을 도메인 이름서비스에 등록하는 방법과 그를 이용한 원격 제어 방법 | |
KR20110065976A (ko) | RA 메시지와 RR 메시지를 이용한 IPv6 호스트 주소 자동 구성 제어방법 | |
Isizoh et al. | ANALYSES OF THE MIGRATION TO INTERNET PROTOCOL VERSION SIX (IPv6) | |
Garg et al. | MAC and logical addressing (A Review Study) | |
KR20040056392A (ko) | 홈네트워크 환경에서의 정보가전 기기의 IPv6 주소 및이름 자동설정 방법 | |
Marlow | Host Group Extensions for CLNP Multicasting | |
Davies | TCP/IP Fundamentals for Microsoft Windows | |
Huawei Technologies Co., Ltd. | IPv6 | |
Hughes | IPv6 Core Protocols | |
Hinden et al. | RFC1884: IP Version 6 Addressing Architecture | |
Kaur et al. | Study of various issues of Internet Protocol Version 6 | |
Dhanapal et al. | AN OVERVIEW OF THE IPV6 ADDRESSING SCHEME | |
Balchunas | Cisco CCNP Routing Study Guide | |
Goswami | IP Version 6 | |
Rooney | IPv6 addressing and management challenges |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |