450 likes | 1.23k Views
IPv4 / IPv6 Tunneling 기술 현황. 조원 오세빈 (20042964), 문수환 (20042959) 강세훈 (990611) , 김영진 (20040267). IPv6 의 등장 배경 (IPv4 의 문제점 ). 1. 최근 급속한 인터넷 성장과 IPv4 주소공간의 고갈 임박 2. 2- 계위 조소공간 구조의 비효율성 3. 인터넷 백본 라우터의 능력 4. 단순함 주고할당에 대한 요구 5. IP 수준에서의 보안 요구 6. 실시간 테이터 전송에 대한 요구. IPv4 와 IPv6 차이점 비교.
E N D
IPv4 / IPv6 Tunneling 기술 현황 • 조원 • 오세빈(20042964),문수환(20042959) • 강세훈(990611), 김영진(20040267)
IPv6의 등장 배경 (IPv4의 문제점) 1. 최근 급속한 인터넷 성장과 IPv4 주소공간의 고갈 임박 2. 2-계위 조소공간 구조의 비효율성 3. 인터넷 백본 라우터의 능력 4. 단순함 주고할당에 대한 요구 5. IP 수준에서의 보안 요구 6. 실시간 테이터 전송에 대한 요구
IPv6의 특징 • Address 확장 • 계층적 Address의 구조 • IP Header의 간소화 • Routing 처리의 부하경감 • Qos기능(통신 및 서비스 품질) • Address자동설정 • Security 기능
IPv6의 주소체계 • 주소의 유형 및 서브넷을 식별하기위한 64비트의 Prefix부분 • 링크(서브넷)에서의 인터페이스(노드)를 식별하기위한 • 64비트의 인터페이스 ID부분 • IPv6 주소는 8개의 16진수 4자리를 콜론(:)으로 구분하여 표시 • Ex) ”3ffe:2e01:1:0:0:60:9791:b839” • 또는 ”3ffe:2e01:1::60:9791:b839” • (‘0’이 연속된 구간에 한하여 두개의 콜론으로 (::) 표시)
IPv6의 주소체계 IPv6 프리픽스(prefix) 프리픽스(prefix)는 고정 값을 가진 비트를 표시하는 주소의 일부분이거나 네트워크 IP의 비트 수입니다. IPv6의 프리픽스(prefix)는 IPv4의 CIDR표기와 같은 방법으로 표시됩니다. IPv6의 프리픽스(prefix)는 다음과 같은 형식으로 표시됩니다. IPv6 주소 / 프리픽스(prefix) 길이 예를 들면, 다음과 같은 표기는 21DA:D3:02F3B:2AA:FF:FE28:9C5A/64 위 주소의 서브넷 ID는 21DA:D3:02F3B::/64
주소의 분류 ·기존의 IPv4 에서 유니캐스트(unicast) 및 멀티캐스트(multicast) 주소에 애니캐스트(anycast)주소가 추가. · IPv6에서는 브로트캐스트(broadcast)주소를 별도로 분류하지 않고 멀티캐스트 주소에 포함.
주소의 분류 • 유니캐스트 주소 • ·단일 인터페이스를 지정 • ·유니캐스트로 보내진 패킷은 해당 인터페이스에로만 전달 • Ex)집약가능 글로벌 유니캐스트(aggregatable global unicast)주소, NSAP 주소, • IPX 주소, 사이트로컬(site-local)주소, 링크로컬(link-local)주소, • IPv4-호환(IPv4 compatible)주소, IPv4 매핑된(IPv4 mapped)주소
주소의 분류 • 유니캐스트 주소 -Link Local Address: 동일 Segment(라우터)내에서만 유효 10 bit 54 bit 64 bit 1111 1110 10 00 0000 … 0000 Interface ID Fe80 …. -Site Local Address: 동일 조직(Site)내에서만 유효 10 bit 16 bit 38 bit 64 bit Site ID 1111 1110 11 00 0000 .. 00 Interface ID Fec0 …. -Global Address: 전 세계에서 유일한 Address 64 bit 3 bit 13 bit 13 bit 16 bit 13 bit 6 bit SLA 001 TLA sTLA 예약 NLA Interface ID FP
주소의 분류 2. 애니캐스트(Anycast) 주소 ·복수개의 인터페이스를 지정 · IPv6 라우터를 대상으로(호스트는 대상이 아님)하여 목적지주소로만 사용 128bit n bit 128-n bit Subnet prefix All zero
주소의 분류 3. 멀티캐스트 주소 ·인터페이스의 집합을 지정 ·멀티캐스트 패킷은 해당되는 모든 인터페이스들에 전달
SLA 001 TLA sTLA 예약 NLA Interface ID 3 13 13 16 13 6 64 Public Topology Site Topology Interface ID 계층화 I S P 기업 Network 기업 Network의 PC 할당 주소의 할당 • IP Address의 계층적 할당 • 큰 Address Block를 ISP에 할당하고 ISP는 할당받은 일부를 유저에 할당하기 때문에 Address Block 마다 경로 정보를 묶을 수 있다. • →Next Hop이 동일하게 되어 복수의 경로 정보를 1개로 정리, 경로를 효율적으로 집약 • →Entry(경로) 수의 대폭적인 축소
IPv6 구조 및 기능 1. IPv6 패킷구조 각 패킷은 필수적인 기본헤더(Base Header)와 페이로드(payload)로 구성. 페이로드는 다시 선택적인 확장헤더(Extention Header)와 상위 계층에서 내려 온 data로 되어있다. IPv6 데이터그램 페이로드(payload) 40 byte 65,535 byte
IPv6 구조 및 기능 IPv4 / IPv6 헤더필드 대응관계
확장 헤더 및 기능 1) 확장헤더의 형태 홉바이홉(Hop by Hop)옵션, 라우팅, 분할, 인증, 암호화된 보안 페이로드, 목적지옵션 2) 확장헤더의 기능 전송을 신속하게 처리하기 위해 IPv4의 기본 헤더에 필드들의 기능과 좀더 많은 기능을 부여하기 위한 새로운 헤더들이 포함됨 Extension Header 형식
(1) 홉바이홉 옵션(hop-by-hop Option) 헤더 확장 헤더 및 기능 1. 데이터그램의 전달경로상에 있는 모든 라우터에게 발신호스트가 알려 줄 정보가 있을 때 사용된다. 2. TVL 포맷으로 인코딩 3. 라우터경고 옵션과 점보페이로드옵션 Router alert옵션 Jumbo payload 옵션
( c ) ( b ) ( a ) 발신지 목적지 6 6 6 43 43 43 발신지 주소 발신지 주소 발신지 주소 목적지 주소 R2 R1 6 4 0 0 6 4 0 2 6 4 0 1 Reserved Reserved Reserved R1 R1 R2 R2 목적지 주소 목적지 주소 상위 계층 헤더 상위 계층 헤더 상위 계층 헤더 데이터 데이터 데이터 (a) (c) (b) (2) 라우팅(Routing)헤더 확장 헤더 및 기능
(3) 분할(Fragment)헤더 확장 헤더 및 기능 1.IPv4에서 발신지는 물론 중간 라우터에서도 데이터그램의 크기가 거쳐야 하는 네트워크의 MTU보다 클 경우에 분할을 수행 2. 발신지는 경로상에서 지원 가능한 가장 작은 MTU를 찾기 위해 PMTU발견기법을 사용, 이에 따라 데이터그램을 분할함 발신지가 이 기법을 사용하지 않는다면 데이터그램 크기를 576 바이트 이하로 분할 시켜야 함
-분할의 예- 첫번째 분할 데이터그램 두번째 분할 데이터그램 세번째 분할 데이터그램 원 데이터그램
(4) 인증(Authentication)헤더 확장 헤더 및 기능 인증헤더는 기본헤더와 같이 전송경로상에서 변경될 수 없는 확장헤더로서 송신자를 인증하고 전송 중에 전달내용이 변경되지 않았음을 확인하는 용도이다. IPv6의 인증알고리즘으로는 기본적으로 MD5(Message Digest 5)가 지정되어 있고, 송수신 양쪽의 합의 하에 다른 알고리즘을 사용할 수 있다. - Transport Mode - - Tunnel Mode -
(5)암호화된 보안 페이로드(Encrypted Security Payload, ESP) 헤더 확장 헤더 및 기능 도청을 방지하기 위한 확장헤더로서 암호화/암호해독의 알고리즘을 정의하는 보안 매개변수 색인필드와 암호화된 데이터로 구성된다. 구현에는 전송모드와 터널모드 두가지 방법이 있다. - Transport Mode - - Tunnel Mode -
확장 헤더 및 기능 (6) 목적지 옵션(Destination Option) 헤더 홉바이홉 옵션 헤더와 모양이 같지만, 발신지가 특정정보를 목적지에게로만 보낼 때 사용된다. 따라서 중간의 라우터들은 이 헤더에 접근할 수 없다.
Application Application TCP/UDP TCP/UDP IPv4 ICMP IGMP ICMPv6 IPv6 Ethernet ARP RARP Ethernet ICMPv6 • IPv6 노드에서 패킷 처리 시 발생하는 에러를 보고하거나 진단 등과 같은 기타 인터넷 계층의 기능을 수행하기 위해 사용
자동 주소설정 (1)Address Auto configuration 1.state-less : Server node에서 host등의 정보관리를 수행하지 않는 방식 -라우터 Notice Message에 의해 Address를 생성 -설정이 거의 필요없다. -security상 약하다(누구든지 연결 가능) -RA(Router Advertisement)방식이라고 한다. 2.State-full : Server node에서 host가 네트워크에 접속하기 위해 필요한 IP Address등의 정보를 제공,지정,관리하는 방식 -DHCP방식이라고 함 -Server로부터 Address및 필요정보를 받음 -전용server가 필요함 -Security상 강함
IEEE에서 관리하는 회사ID IEEE에서 관리하는 회사ID IEEE에서 관리하는 회사ID 제조업체가 선택한 확장ID cccccc00 cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx IEEE 802 주소 : 24 bit 24 bit cccccc00 cccccccc cccccccc 11111111 11111110 xxxxxxxx xxxxxxxx xxxxxxxx EUI-64 주소 : FF FE IPv6 인터페이스ID cccccc10 cccccccc cccccccc 11111111 11111110 xxxxxxxx xxxxxxxx xxxxxxxx 64 bit 자동 주소설정 (2)Interface ID의 생성 기존의 MAC Address의 48bit를 64bit화 확장 규칙 -”fffe”의 삽입 -최초의 8bit의 하위 2bit를 반전
IPv6 Only 노드 IPv6/IPv4 노드 IPv4 Only 노드 Process/Application Process/Application Process/Application Host-to-Host Layer Host-to-Host Layer Host-to-Host Layer IPv6 IPv4 IPv6 IPv4 Network Interface Layer Network Interface Layer Network Interface Layer 이중 IP 스택(Dual IP Stack)
Tunneling • Configured Tunneling • IPv6 Packet을 IPv4 Network상에 전송되는 IPv4 Packet으로 Encapsulation • Manually설정해 주어야만 하는 Point-to-Point Tunnel • Global Address가 필요 • IPv6 over IPv4 Tunnel이 해당 • Automatic Tunneling • IPv4 Compatible IPv6 Address 등을 사용하여 IPv4 Network 상을 경유 • Dynamically Tunnel 생성 • 6to4나 ISATAP Tunnel이 해당
Tunneling • Configured Tunnel
Tunneling • Automatic Tunnel
Tunneling • IPv6 over IPv4 Tunnel(RFC 2766) • IPv4 Network의 인프라를 이용하여 IPv6 Packet을 캡슐화하여 전송하는 기술 • IPv6 도입 초기 단계에서 적용할 수 있는 Tunnel 방식
Tunneling • IPv4 over IPv6 Tunnel • IPv6 Network 인프라를 이용하여 IPv4 Packet을 캡슐화하여 전송하는 기술 • IPv6가 보급되어 활성화 단계에서 적용할 수 있는 Tunnel 방식
Tunneling • GRE Tunnel( RFC 2473 ) • Multi-Protocol Tunneling • Recursive Encapsulation을 방지
Tunneling • IPv6 6PE over MPLS( Draft단계, draft-ooms-v6ops-bgp-tunnel-03.txt ) • IPv4 Traffic 처리를 위하여 설정된 LSP를 이용하여 IPv6 Traffic을 처리하기 위한 기술
Tunneling • 6to4( RFC 3056 ) • 6to4 전용의 IPv6 Prefix인 [2002::/16]에 IPv4의 글로벌 주소를 이용하여 Tunnel을 자동 생성하는 방식
Tunneling • 6to4 Relay • 6to4 Address를 사용하고 있지 않은 Native IPv6 Host와 통신하는 경우에 이용
Tunneling • TEREDO(draft-huitema-v6ops-teredo-02.txt) • NAT 환경의 IPv4 Infra에서 IPv6에 접속 가능하도록 해주는 자동 Tunnel 기술 • TEREDO 전용의 IPv6 Prefix인 [3FFE:831F::/32]를 사용 • IPv4 Header와 UDP Header를 이용하여 캡슐화를 함.
Tunneling • DSTM( Dual Stack Transition Mechanism ) • 6to4와는 반대로 IPv6 Network에 IPv4 Packet을 통하여 IPv4 In IPv6 Tunnel을 만드는 기술(draft-bound-dstm-exp-01) • DHCPv6 Server가 필요
Tunneling • Tunnel Broker( RFC 3053 ) • 현재의 Tunnel 방식은 설정과 관리하기 어려운 점을 보완하기 위함 • IPv4 Network의 Host가 IPv6 Network의 Host와 통신하고자 하는 경우 이용 • Web Browser 기반의 GUI 제공 • http:://carmen.cselt.it/ipv6/download
Tunneling • ISATAP( Intra-Site Automatic Tunnel Addressing Protocol ) • IPv4 Site내에 IPv6 in IPv4 Tunnel을 이용하여 IPv6 Host/Router를 상호 접속하기 위한 기술 (Draft 단계, draft-ieft-ngtrans-isatap-22)