따봉도치야 고마워

[네트워크 공부] 후니의 쉽게 쓴 네트워킹 16일차 - Part12 본문

프로그래밍/공부

[네트워크 공부] 후니의 쉽게 쓴 네트워킹 16일차 - Part12

따봉도치 2020. 4. 27. 19:27

IPv6

IPv4의 문제

- 1981년부터 IPv4가 사용되었고, 점차 주소가 부족하게 됨

- IPv4는 2^32 만큼의 주소 사용 가능한데 (43억개) 실질 적으로 쓸 수 있는건 약 2억 5천만개 정도

- 또한 복잡한 헤더, 보안 기능 등등 여러가지 단점들이 있었음

 

-> 주소 부족을 해결하기 위해 NAT, 서브네팅, DHCP, CIDR(Classless Inter Domain Routing) 등 다양한 솔루션을 내놓았지만,

점점 더 복잡해지는 구성과, End to End 지원이라는 문제에 부딪혔음

 

 

IPv6의 탄생

- 1990년에 IETF에선 94년도쯤 클래스 B주소가 고갈될 것이라고 예상

- 1991년 11월 IETF는 산타페에서 열린 미팅에서 이 문제를 해결하기 위해 ROAD(Routing and Address) 그룹 창설

- 1995년 IPNG(IP Next Generation) 그룹이 'RFC 1883'이라는 첫 번째 세부안 제안 -> IPv6의 근간이 됨

- 1996년 IPv6의 테스트베드인 6Bone(IPv6를 운용 테스트하기 위한 망)이 시작되고 2006년 6월 6일에 철거 약속

- 1999년 IPv6 포럼이 발족

 

IPv5는 없는가?

- QoS(Quality of Service)제공을 위한 실험적인 Resource Reservation Protocol로 Internet Stream Protocol로 정의

= 인터넷에서 디지털 사운드/멀티 미디어 데이터 같은 리얼 타임 데이터를 효과적으로 전송하기 위해 만들어진 프로토콜

- IPv4와 공존하면서 상호작용하도록 설계된 프로토콜임.  //IPv4와 패킷의 첫 4비트인 IP Version Number만 다름(4,5)

- RSVP (Resource Reservation Protocol) 같은 비슷한 프로토콜이 나오면서 쓰임새가 줄음

 

 


 

IPv6의 특징

1. Global Address

- 128비트 주소 체계 -> 약 320간 개 (천만억조경해자양구간 순), 주소의 겹침없이 유일한 주소를 사용 가능

- Global Reachability : 전세계 어디서나 주소를 변경하지 않고 접속이 가능.

- End to End Reachability : 출발지부터 목적지까지의 주소변환 없이 연결

 

2. 주소의 계층화 (Hierarchical Addressing)

- 처음 16비트 : 상용주소 구분

- 17~23비트 : 대륙 구분

- 23~32비트 : ISP 구분

- 32~48비트 : 하나의 사이트, 회사/기관, 학교 등을 구분

- 48~64비트 : 각 LAN을 구분

 

- 알아보기 쉽고, 여러 개의 트래픽을 하나로 묶어주는 것도 가능 (Aggregation)

 

3. Prefix Aggregation 

- 계층적인 주소 배정이 가능해져 여러개의 네트워크 주소를 하나로 묶을 수 있음

- IPv6는 16진수로 표시하고 4자리마다 : 으로 구분하고 / 뒤에 숫자는 네트워크 주소 길이

- /64인 두 네트워크는 /48로 하나로 묶을 수 있음

 

- 라우팅 테이블을 줄여주어 라우터 메모리 절약 및 라우팅 효과적으로

 

4. Stateless Auto Configuration (Plug and Play 가능)

- Stateful Auto Configuration : 상태를 유지하면서 자동 구성 지원 = DHCP

- 즉 특정 서버 없이 연결만 된다면 Prefix 64비트를 전달 받고, 자신의 MAC 주소 48비트를 64비트로 바꿔 붙여 사용

 

- IPv6에서도 좀 더 자세히 구성하고자 한다면 Stateful A.C를 통해 받을 수 있음

- Stateless가 이뤄질때 따라온 플래그를 보고 추가정보를 다시 Stateful을 통해 받아야하는지 아닌지 알게 됨.

ex)DHCPv6

 

5. 브로드캐스트x -> 강력해진 멀티 캐스트

- 브로드 캐스트가 사라지고, 멀티캐스트의 기능이 향상됨.

- Scope ID 4비트로 전송 영역을 지정 가능

 

6. IP Header 구조 개선

- 많은 헤더 필더를 없애 패킷 처리가 훨씬 간단해지고, 라우팅 성능 향상

- 모든 필드가 64비트 단위로 정렬되어 메모리 읽고 쓰기가 빨라짐

- But, 주소 길이가 128로 늘어나 주소 확인에 시간 소요

 

7. Mobility

- 네트워크의 이동성 : 장비가 현재 네트워크 접속이 끊기지 않고서도 이동 가능하도록 해주는 기능

- IPv6에선 이동성이 좀 더 편리해지고 효과적으로 수행 될 수 있게 됨

- IPv4에서도 지원이 되던 IETF 표준이었지만, 옵션이였고, IPv6에선 Built-in

 

8. 보안

- IPv4는 보안에 관한 IPSec이 있지만 옵션, End to End 보안 적용이 쉽지 않았음

- IPv6는 IPSec이 디폴드라서 어디서나 적용 가능

 

9.다양한 IPv4와의 호환 옵션

 


IPv6의 생김새

- 16진수 네 자리를 쓰고 :으로 구분

- 앞쪽에 오는 0은 생략 가능

- 0이 연속으로 나올 땐 ::으로 표시 가능 (한 주소에서 2번 이상 사용 x)

ex. 2001:db8:10f:1:0:0:0:d0c -> 2001:db8:10f:1::d0c

 

 

IPv6 주소의 종류

- IPv4 에선 유니캐스트(ABC클래스), 멀티캐스트(D클래스), 브로드캐스트

- IPv6 에선 유니캐스트, 멀티캐스트, 애니캐스트

 

- 애니캐스트 (Anycast) : 애니캐스트 그룹 중 가장 가까이 있는 녀석에게 패킷을 보내는 방식. 가까운 포인트를 찾는 탐색 메커니즘을 위해 사용. (아무나 받아라)


IPv6와 IPv4의 동거

- 하루아침에 IPv4를 IPv6로 바꾸긴 쉽지 않아, 한동안 동시에 쓰여야 함

 

1) 듀얼 스택 (Dual Stack)

- 시스템이 IPv4와 IPv6를 모두 인식해, IPv6를 이해 못하는 애플리케이션에는 4로, 이해하면 6로 이용할 수 있도록 해주는 방식

 

2) 터널

- 한쪽 IPv6망에서 다른 IPv6망과 통신하려고 할 때, 중간 망이 IPv6를 지원하지 않아도 가능하도록 해줌

- But, 중간에 문제가 발생 시 해결이 어려워 적당한 아키텍처가 마련되지 않았을 때 사용하는 과도기적 기법

 

- IPv4 네트워크로 실어 보내기 전에 인캡슐레이션 해주기!

- 터널을 어떻게 만들어주냐에 따라 메뉴얼 방식/반자동 방식/자동 방식으로 구분

 


라우터에서 IPv6 구성하기

  • ipv6 unicast-routing 명령으로 IPv6를 사용하겠다고 정의
  • 각 인터페이스의 구성 모드로 접속
  •   (1) Ipv6 address <ipv6addr> [/prefix-length] [link-local] : 모든 주소를 다 써줘야함
  •   (2) Ipv6 address <ipv6prefix> /<prefix-length> eui-64 : prefix만 써주면 됨.  eui-64 : MAC주소로 뒷부분 만들기
  •   (3) Ipv6 unnumbered <interface> : 주소를 부여하지 않고 이미 IPv6를 가진 다른 인터페이스의 주소를 같이 사용

 

MAC주소를 64비트로 바꾸는 규칙

- 반으로 나워 가운데 'FF:FE' 추가

- 맨 앞 8비트는 MAC 주소의 유일성을 나타내어, 유일한 주소일 땐 02, 아닐땐 00으로 표시 해줌

 


*mGig (multiple Giga bps, '엠긱')

- 1Gbps가 아닌 2.5/5Gbps의 속도를 내기 위한 기술

- 요즘 흔한 10G를 쓰면 될텐데 왜? -> 그러려면 케이블의 변경이 필요함 (Cat6a)

- 기존 케이블을 다 걷어내고 새로 설치하긴 쉽지 않음

 

- mGig은 기존에 1G 속도만 지원하던 오래된 케이블을 그대로 사용하면서 속도를 2.5/5G까지 올려주는 기술

- 스위치와 AP가 해당 기술 지원해야함

 

 

*테라(Tera) > 페타(Peta) > 엑사(Exa) > 제타(Zetta) > 요타(Yotta)

 

*RU(Rack Unit)

- Rack : 장비들을 넣어놓는 캐비닛

- 랙에 장비를 설치할 때 옆에 나사구멍이 있는데 이 나사 구멍을 기준으로 3칸 정도의 높이 (4.445cm) = 1RU

- 보통 쓰는 랙을 '19인치 랙'이라고 부르는데 그건 넓이를 의미.

 

Comments