2oneweek.dev

IPV4 vs IPV6

    Tags

  • Network

IPv4

IPv4는 Internet protocol version 4의 약자이며 전 세계적으로 사용된 첫번째 인터넷 프로토콜이자 유일한 프로토콜로 IETF(인터넷 표준화 기구) RFC 791(1981년 9월)에 문서화 되어 있습니다.

IPv4는 32비트 방식입니다. 따라서 4개로 나눠진 최대 12자리의 번호로 이루어져 있습니다. 예를들면 '192.168.111.224'입니다. 비트 수에 따라 개수가 정해지므로 2의 32승인 43억 개의 주소가 만들어 질 수 있습니다.

인터넷 상의 각 컴퓨터들은 호스트라고 부릅니다. 호스트들은 다른 컴퓨터와 구별될 수 있도록 적어도 한 개 이상의 고유한 주소를 갖습니다. 하지만 현재 많은 IP 주소가 있으므로 3~5년 내에 주소 고갈의 문제가 발생할 것으로 예상됩니다. (예전부터 나오던 말인데 현재 아직도 IPv6은 상용화되지 않았습니다.)

이 문제를 해결하기 위해 나온 것이 바로 IPv6 입니다. 128비트 주소 체제를 채택하여 2의 128승 개의 주소가 만들어 질 수 있습니다. 따라서 사실상 무한대의 주소 생성이 가능합니다.

IP 주소체계와 클래스 구별법(IPv4)

  • 모든 컴퓨터나 네트워크 장비, 통신기기들은 인터넷을 사용하기 위해 IP주소를 할당받아 이용함
  • 네트워크에서 IP라는 것은 가장 중요한 핵심 중 하나로서 클래스로 구분을 하거나 서브넷팅을 하는 등의 방식을 이용하여 활용하는게 많음.

IPv6(참고)

  • IPv6은 인터넷 프로토콜 버전 6(Internet protocol version 6)의 줄임말
  • 인터넷 엔지니어링 태스크 포스(IETF)의 공식 규격으로 차세대 인터넷 통신 규약이라는 뜻에서 IPng(IP next generation)라고도 함.
  • 현재 사용되고 있는 IP 주소 체계인 IPv4의 단점인 IP 주소의 개수를 늘리기 위해 개발된 새로운 IP 주소 체계

IPv4 vs IPv6

  • IPv4는 32비트 주소 체계에 42억 개의 주소 수를 가지고 있고, A, B, C, D 클래스로 주소를 할당
  • 반면 IPv6은 128비트의 주소 체계로 3.4*10 38 개의 주소 수를 가지고 있고 주소도 CIDR을 기반으로 계층적으로 할당. 주소 유형은 유니캐스트, 멀티캐스트, 애니캐스트 3가지.

IPv6의 장점

  • 가장 큰 장점은 IP 주소의 길이가 128비트로 늘어났다는 점. 이는 폭발적으로 늘어나는 인터넷 사용에 대비하기 위한 것인데 아직 IPv6은 상용화되지 않았음. 일부에서는 사용할 수도 있지만 주소 체계가 바뀌면 불편해지는 것이 많아서 그런지 완전히 IPv6으로 바뀌지는 않았음.
  • 네트워크 속도의 증가
  • 특정한 패킷 인식을 통한 높은 품질의 서비스 제공
  • 헤더 확장을 통한 패킬 출처 인증과 데이터 무결성 및 비밀의 보장

IPv6 구분법

  • 주소 구문은 IPv4의 123.123.123.123과 같은 12자리 숫자가 아니라, 이진수 형식으로 표시. 즉, 00100001110110101001000...11010 등 128비트로 표시되고 주소는 다시 16비트(0010000111011010) 단위로 나눠짐.
  • 16개씩 쪼개면 8파트가 나오게 됨. 그 8 파트가 IPv6의 주소가 되며 16비트 블록은 16진수로 변환되고, 21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A와 같이 콜론으로 구분됨. 여기서 21DA:D3:0:2F3B:2AA:FF:FE28:9C5A 처럼 0을 없애고 더 단순하게 주소를 만들 수 있음.
  • 이 경우 각 블록마다 하나의 숫자는 있어야 하기 때문에 한 블록에 0만 있을 때는 0 하나를 남겨 두어야 함.
  • IPv6은 주소 공간을 늘려 망 확장성이 더욱 향상된 IP 주소 체계로, 휴대폰이나 전자제품에도 적용할 수 있음.

참고 사이트: IPv4, IPv6이란 무엇인가?

서브넷이란?

  • 서브넷이라는 개념은 IP 주소가 부족하기 때문에 나오게 됨.
  • 서브넷 마스크는 서브넷을 나누기 위해 사용하는 개념
  • 외부 IP와 내부 IP를 구분할 수 있는데 내부 IP에서 서브넷의 개념을 사용

서브넷 대규모 네트워크

  • 서브넷대규모 네트워크를 구성하는 개별 네트워크라는 뜻
  • IP 주소를 잘게 쪼개서 사용하는 것.
  • 각각의 서브넷들이 모여 하나의 논리적인 네트워크를 이루어 망간 상호 접속을 위한 완전한 동작을 수행한다는 의미.
  • 일반 인터넷과 같은 기능을 수행하는 것은 맞지만 IP 주소를 나눠서 쓴다고 생각하면 됨.
  • 또한 여러 서브넷들이 하나의 상호 접속된 네트워크나 인터넷을 구성한다고 말할 수 있음.
  • 중요한 점은 라우터로 구분된 범위에서 서브넷의 외부로는 브로드캐스트 데이터가 전달되지 않습니다.

서브넷을 나누는 이유

  • 서브넷을 나누는 이유는 브로드캐스트 영역을 나누는 것.
  • 브로드캐스트 도메인이 커지면 트래픽이 올라가서 부하가 걸릴 수 있기 때문에 적절하게 나눠주는 것이 필요.
  • 서브넷을 사용하는 이유는 브로드캐스트 도메인을 나누기 위해서 IP 주소가 부족하기 때문이다.

참고 사이트: 서브넷과 서브넷 마스크

수동 호스트 설정의 문제

  • 네트워크 안의 장비가 많이지면서 관리자가 호스트를 수동으로 설정해주는 것이 힘들어졌음.

  • 또한 수동 설정이 불가능한 상황들이 존재함

    • 도시 또는 국가 전역에 걸쳐있는 네트워크
    • 이동 장비(휴대폰)의 설정

    이러한 이유로 호스트 설정 프로토콜이 등장했다.

호스트 설정 프로토콜

  • 호스트 설치 시 자동 설정할 수 있고, 필요할 때 마다 추가적인 매개변수도 할당 가능함.
  • 원격 설정, 유효한 주소를 이동장비에 즉시 할당, 단순 호스트를 부팅시키고 작동에 필요한 정보를 얻을 수 있음. 여러 호스트가 공유하는 주소 영역 유지 가능.
  • 누군가가 내부 저장 장치가 없는 장비들에게 주소와 전원을 켤 때 어떻게 동작할지에 대해 알려줘야 함.이러한 문제를 해결하기 위해 가장 먼저 도입한 프로토콜: RARP(Reverse Address Resolution Protocol)
  • RARP는 링크 계층의 낮은 수준의 주소를 결정해주는 프로토콜이기 때문에 제약 사항이 많다.물리적으로 연결되 있는 네트워크 내에서만 가능, 호스트에게 IP 주소만을 제공

DHCP

  • BOOTP가 RARP보다 개선된 프로토콜이지만 장비에 할당할 IP주소를 결정하는 데 정적인 방법임.
  • 이를 보완할 수 있는 DHCP(Dynamic Host Configuration Protocol) 개발
  • DHCP는 동적 주소할당이 가능.
    • IP 주소의 공동구역(Pool) 사용
    • BOOTP의 벤터 정보 확장 -> DHCP 선택사항으로 이름을 바꿔서 사용

DHCP 주소 할당과 배당 방법

  1. 수동배당

    • BOOTP 주소 할당 방법과 동일한 방법

    • DHCP 서버의 내부에 표가 존재하고 표에 따라 서버가 IP 제공

    • 네트워크 안의 서버나 라우터와 같은 안정적이고 영구적인 IP 주소를 필요로 하는 장비에 적합

  2. 동적배당

    • 서버가 선택한 제안 시간 동안 유효하거나 클라이언트가 서버에게 더 이상 주소가 필요하지 않다고 통보할 때 까지 유효한 IP 주소를 공동구역(Pool)으로부터 할당

    • 동적 배당의 장점

      • 자동화: 클라이언트는 관리자의 개입 없이 IP가 필요할 때 자동으로 IP주소를 할당받을 수 있음

      • 중앙 집중적 관리:IP 주소는 모드 DHCP가 관리

      • DHCP 서버는 각 장비가 IP를 유지할 수 있는 기간을 제한함으로써 네트워크를 실제로 사용중인 장비들만 IP 주소의 공동 구역을 사용한다는 것을 보장할 수 있음

      • 이식성과 보편성: BOOTP(or 수동배당)을 사용하려면 DHCP는 자신에게 연결된 클라이언트의 신원을 알아야 하지만 동적 배당을 하면 모든 클라이언트가 IP 주소를 요청할 수 있기 때문에 이동장비(휴대폰 등)에 사용 가능

  3. 자동 배당

    • 동적배당의 특별한 경우로 주소의 공동 구역에서 IP를 선택해 한 장비에게 영구적으로 할당(임대기간이 영구적)

    • 한 장비에게 IP를 영구적으로 배당하는 것은 위험하기 때문에 잘 사용되지 않음

브로드캐스트

  • 1 대 전체
  • 로컬 랜 상에 붙어있는(브로드캐스트 도메인 안에 있는) 모든 네트워크 장비들에게 보내는 통신.
  • 예를 들어 동네 이장이 마이크로 "동네 사람들! 반상회가 있으니 모이세요!"라는 동네에 방송한 방식과 같다.
  • 여기서 동네(방송을 듣는 영역)는 브로드캐스트 도메인과 같다.
  • 브로드케스트의 주소는 FFFF.FFFFF.FFFF(MAC Address일 경우)이다.
  • 이 주소로 패킷을 CPU가 받으면 무조건 읽어들인다. (원래는 자신의 맥 어드레스와 목적지 맥 어드레스가 다르면 버림)
  • 브로드캐스트는 네트워크 사으이 전체 노드로 전송되기 때문에 전체 트래픽이 증가.
  • 이 패킷을 받은 CPU는 이 패킷을 처리하게 되고 PC의 성능도 떨어진다.
  • 즉, 과도한 브로드캐스트는 전체 네트워크 성능 뿐만 아니라 PC의 성능도 떨어지게 한다.

브로드캐스트 사용 예시

  • 처음 두 PC같에 통신을 하는 경우에, 상대 IP는 알 수 있더라도 MAC Address는 알 수 없다.
  • 이때, 상대방의 MAC Address를 알기 위해서 하는 동작이 ARP(Address Resolution Protocol)이다.
  • ARP는 브로드캐스트 방식이다.
  • 만약 네트워크 내의 컴퓨터에게 "이 IP 주소 가진 컴퓨터가 누구니?"라고 브로드캐스트를 보내면, 그 IP 주소를 가진 컴퓨터가 "나다!!!!"라고 답을 보내면서 MAC Address도 같이 보내는 과정을 ARP라고 한다.
  • 이 외에도 라우터끼리 정보를 교환하거나 다른 라우터를 찾을 겨웅에 사용을 하고
  • 서버들이 자신이 어떤 서비스를 제공한다는 것을 모든 클라이언트들에게 알릴 때 등에 브로드캐스트를 사용한다.
  • 브로드캐스트는 한 번 발생하고 끝내는 것이 아닌 30초나 1분에 한번씩 주기적으로 발생시킨다.

그외

  • 외부 IP: 통신사(ISP)에서 할당한 IP로써, 모든 온라인 활동은 이 IP 주소로 표시
    • 외부망에서 사용되는 통신사가 할당해준 IP다. 본인의 모든 온라인 활동은 이 IP 주소로 이루어진다고 보면 된다.
  • 내부 IP: 공유기를 통해 할당된 내부의 IP로써, 공유기에 연결된 내부망에서만 사용가능
Written by@2-one-week
현재 블로그 개발 중

GitHubLinkedIn