IPv6 출현 배경 현재 사용중인 IPv4는 20년 전에 표준화가 됨. 약 43억개 주소 사용 가능. IPv4는 약 43억개(32bit : 232) 1990년 대 초 인터넷이 급속하게 보급/확산 되면서 ip 주소가 고갈이 문제 1998년 12월에 IPv6라는 국제 표준화 탄생하게 됨. IPv6(128bit : 2128) 340,282,366,920,938,463,463,374,706,431,768,211,456개 무한대 IPv4는 약 43억개 주소를 사용 가능한데, 현재 전세계 인구가 약 60억 컴퓨터 뿐만 아니라 가전제품이나 휴대폰/PDA등의 인터넷 이용 도로와 자동차, 빌딩과 아파트, 냉장고와 TV등 유비쿼터스 네트워크 IPv6에서 현실화가 가능 # IPv5는 왜 없을까? - 물론 있습니다. 하지만 이는 1990년 10월에 실험용으로 이미 사용. - 현재 IPv7/8/9도 실험용으로 사용중에 있어 만약 앞으로 IPv6의 차기 버전이 나온다면 IPv10이 될 것입니다
IPv4 문제점 # IPv4의 가장 큰 두 가지 문제 주소부족 문제 - 주소부족해결을 위한 NAT가 있으나 이 또한 제한적이다. - 내부에서 외부로의 통신이므로 단방향 통신이다. 2. 라우티 table 급증문제 - 라우팅 table 증가는 장비 메모리나 cpu증가, 경로검색에 delay 유발 - 라우팅 TABLE의 급증의 임시 해결책으로 CIDR라는 게 있지만 IPv4는 주소를 무작위로 할당하여 라우팅 aggregation에도 문제가 있음 예, - 192.168.0.0/24 ~ 192.168.7.0/24 ==> 192.168.0.0/29로 summary가능 - 192.168.8.0/24 ~ 192.168.15.0/24 ==> 192.168.0.8/29로 summary가능 하지만 이렇게 일정하게 각 사이트에 ip를 할당하지 않아 summary에 문제가 있음 # NAT 주소 10.0.0.0/8(10.0.0.0 ~ 10.255.255.255) 172.16.0.0/12(172.16.0.0 ~ 172.16.255.255 192.168.0.0/16(192.168.0.0 ~ 192.168.255.255) # CIDR - 예, 192.168.0.0/24 ~ 192.168.7.0/24 ==> 192.168.0.0/29로 summary가능 - 예, 192.168.8.0/24 ~ 192.168.15.0/24 ==> 192.168.0.8/29로 summary가능 하지만 이렇게 일정하게 각 사이트에 ip를 할당하지 않아 summary에 문제가 있음
IPv4 수명 예측
IPv6 기본 기능
IPv6의 특징 Multiple Level의 계층화된 주소 체계 사용 가능 보다 효과적이고 확장성이 보장된 Aggregation이 가능하다. • Multiple Address 사용 가능 호스트와 네트워크에서 동시에 다수의 Address Block을 활용 할 수 있다. • Auto configuration 호스트들은 IPv6 주소의 일부분(prefix)만을 알고 있으면 IPv6 주소 공간 내에 자신의 L2 주소를 표현 하므로 Plug and Play가 가능하다. • Renumbering IP 주소를 변경하는 작업이 쉽다 auto configuration의 기능 활용 • IPv6의 Communication Type Unicast, Multicast, Anycast만을 지원 (Broadcast는 지원하지 않으며 Multicast에서 지원)
IPv6의 특징(계속) 간결하고 효율적인 Header 구조 • IP Header에서 Checksum Field을 제거 하였다. 기존 IPv4의 불필요한 Field를 상당 수 줄임. • IP Header에서 Checksum Field을 제거 하였다. IP Layer에서 성능 증가를 목적으로 L3에서 Checksum 계산을 하지 않고 L2 또는 L4기반에서 Error Detection 기능을 수행해 줄 것이다. • 24bit의 Flow Label field 추가 IPv6에 새로 추가된 Field이며, 이는 IP Layer에서 IP Traffic들의 Class를 정의 한다. • extension Header Next-Header라는 field를 이용하여 다양한 확장 Header를 적용 할 수 있다. ( Routing, Destination, TCP, UDP…..) • Mobility IPv6는 Mobility를 위한 필요한 기능들이 내장 되어 있다. • Security IPv6는 end-to-end network 보안을 위해 기본적으로 IPsec을 지원한다.
IPv6의 특징 요약
IPv4와 IPv6의 비교 IPv4 IPv6 주소 체계 주소 개수 Packet 헤더 헤더 필드 수 주소 할당 방법 주소 유형 32bit 128bit 주소 개수 약 43 억 개 약 (43 X 43 X 43 X 43) 억 개 Packet 헤더 다양한 길이 헤더 40 byte 고정된 길이 헤더 헤더 필드 수 복잡 단순 주소 할당 방법 Class 단위로 비 순차적으로 할당 CIDR 기반으로 계층적으로 할당 주소 유형 Unicast / Multicast / Broadcast Unicast / Multicast / Anycast 품질 제어(QoS) Best Effect 방식으로 품질 보장이 곤란 ( ToS에 의해 일부 지원 ) 등급별, 서비스별로 Packet 구분이 가능하여 품질 보장이 용이 ( Traffic Class, Flow Label ) 보안(Security) 제한적 사용 IPSec Build-in Mobile IP 기능 상당히 곤란 ( 비효율적 ) 용이 ( 효율적 ) 구성 방법 Manual Configuration Auto Configuration
IPv4 헤더
IPv6 헤더
IPv4와 IPv6 헤더의 비교
IPv6 주소 할당
IPv6 주소 형식 # IPv4 주소와의 비교 # IP Address의 표기 Ipv4 210.232.128.10 4개 그룹 Ipv6 2001:200:ffff:1234:5678:9abc:def0:9999 8개 그룹 # IP Address의 표기 IPv4 : 하나의 그룹이 0~255의 10진수(8bit 단위로 구분) IPv6 : 하나의 그룹이 16진수(0000 ~ fffff) IPv4는 “.”을 로 구분하지만, IPv6는 “:”으로 구분 규칙 1 : 각 블록의 첫번째 위치의 “0”은 생략 가능하다 21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A 21DA:D3:0:2F3B:2AA:FF:FE28:9C5A 규칙 2 : 연속하는 “0”은 “::”로 표시 할수 있다. 단, “0”의 연속이 2곳 이상이면 그 중 1곳만 가능하다. 예, 2001: 2000: 0: 0: 0: 77: 88 2001: 2000::77: 88 2001:0DB8:0000:0000:FFFF:0000:0000:0D0C 2001:0DB8::FFFF:0000:0000:0D0C 또는 2001:0DB8:0000:0000:FFFF::0D0C(둘 중 하나만 사용 가능)
IPv6 주소 형식 # IPv6 Prefix • IPv6의 Prefix 표현= IPv6 주소/Prefix의 길이 예) 21DA:D3:0:2F3B:2AA:FF:FE28:9C5A/64 Prefix는 21DA:D3:0:2F3B::/64 • IPv6는 Address 표현에서 Prefix의 길이만을 표시한다. • 예, IPv6가 2100:F3:A1:4F3B:2AAC:FF:FE28:9C5A/59인 경우 Prefix? 2100:F3:A1:4F3B:2AAC:FF:FE28:9C5A/59 2100:F3:A1:01001111 00111011 = 2100:F3:A1:4F3B 2100:F3:A1:01001111 00100000 = 2100:F3:A1:4F20 Prefix = 2100:F3:A1:4F20::/59
IPv6 주소의 종류 # 주소의 종류 UNICAST : IPv4와 동일 MULTICAST : 최초 8bit가 모두 1인 경우이며, 인접한 노드의 정보를 수집하는 경우 사용 ANYCAST : multicast와 같은 형태이지만, 기본적으로 UNICAST 동작을 한다.동일한 UNICAST가 복수개 존재할 경우 가장 가까운 노드에만 패킷이 전송되어 진다. 예, 복수개의 프린터 서버나 DNS서버가 있을 대 가장 응답이 빠른 서버가 자동적으로 선택되어 통신이 가능 BROADCAST : IPv6에서는 사용하지 않으며, 대신 MULTICAST의 일부로 정의 되어 져 있음
Neighbor Discovery # solicited-node multicast 란? - Pre-Define 된 Multicast Address 중의 하나 - 특정 정보들을 Neighbor 정보에게 요구할 때 사용하는 주소(주소에 해당하는 노드를 찾기위해 사용) - 예약된 Prefix(FFO2:0:0:0:0:1:FF00::/104)와 Aggregatable address의 오른쪽 24bit를 사용한다.
IPv6 주소의 구조
IPv6 Subnet 3ffe:b00:c18::/48 = 3ffe:b00:c18:xxxx:xxxx:xxxx:xxxx:xxxx Prefix Subnet Host bit 0000 0000 0000 00 00 = 0000 0000 0000 0000 00 01 = 0001 0000 0000 0000 00 10 = 0002 0000 0000 0000 00 11 = 0003 3ffe:b00:c18:0::/50 3ffe:b00:c18:1::/50 3ffe:b00:c18:2::/50 3ffe:b00:c18:3::/50 .
IPv6 주소 설정 # 순서 ipv6 unicast routing enable # 모드에서 ipv6 enable 해당 interface 모드에서 ipv6 address 설정 해당 interface 모드에서 Router(config)#ipv6 unicast-routing Router(config)#interface e0/0 Router(config-if)#ipv6 enable Router(config-if)#ipv6 address ? X:X:X:X::X IPv6 link-local address X:X:X:X::X/<0-128> IPv6 prefix autoconfig Obtain address using autoconfiguration
IPv6 주소 확인 Router#config t Router(config)#interface fa0/0 Router(config-if)#ipv6 enable Router(config-if)#ipv6 address 3ffe:b00:c18:1::/64 eui-64 Router#show ipv6 interface fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::201:96FF:FE24:B20 --- Link-Local Global unicast address(es): 3FFE:B00:C18:1:201:96FF:FE24:B20, subnet is 3FFE:B00:C18:1::/64 --- Global Address Joined group address(es): FF02::1 ------------------------ Link-Local all Node FF02::1:FF24:B20 ------------ Solicited Node MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds
IPv6 이행
IPv6 전환기술 Dual Stack Tunneling Translator IPv4 / IPv6 Packet를 하나의 장비에서 동시에 처리할 수 있는 기술 DRIVER APPLICATION TCP/UDP IPv4 IPv6 IPv4 IPv6 Tunneling IPv6 Packet들은 IPv4 Packet안에 포함시켜 전송하는 기술 IPv6 Network IPv4 IPv6 Network Tunnel Translator IPv6 Packet를 IPv4 Packet으로 전환(Translation)하여 전송하는 기술 IPv6 Network IPv4 Network Translator
Dual-Stack 기술 이란?
터널링 기술 이란? # Configured Tunneling # Automatic Tunneling 터널의 입구와 출구를 수동으로 설정해 주어야 하는 방식 IPv6 Packet을 IPv4 Network 상에서 전송되는 IPv4로 encapsulation IPv6 over IPv4 Tunnel, IPv4 over IPv6 Tunnel 등이 있다. # Automatic Tunneling 터널의 입구와 출구를 Dynamic하게 설정해 주어야 하는 방식 IPv6 Packet을 IPv4 Compatible IPv6 address 등을 사용하여 IPv4 Network을 경유하여 패킷을 전송한다. 6 to 4, ISATAP Tunnel 등이 있다
터널링 동작원리 IPv4 over IPv6는 이와 반대 이다. 즉. 중간의 IPv6 망을 양 단의 IPv4 네트워크이 통신하는 것이다.(capsule화 하여)
Translator 동작원리
IPv6 적용계획 전환기술 필요 Phase 1 Phase 2 Phase 3 Phase 4 (~2001) (2002~2005) IPv4 Only (2002~2005) IPv4 Ocean IPv6 Island (2006~2010) IPv4 Island IPv6 Ocean (2011 ~) IPv6 Only 전환기술 필요 IPv6 TestBed
참 조 - 벤더별 IPv6 전환기술 현황 구분 Dual Stack Tunneling Translation Configured Tunneling 6to4 ISATAP Tunnel Broker Teredo DSTM NAT-PT 표준화현황 완료 진행 시스코 히다찌 주니퍼 6Wind OS 벤더 MS, Solaris,, FreeBSD, Linux MS, FreeBSD, Linux MS,FreeBSD,Linux FreeBSD(Client,Server,Relay) MS(client) 각종 전환 기법 분류 및 지원 현황