자고일어나니코딩왕
자일코의 CODING
자고일어나니코딩왕
전체 방문자
오늘
어제
  • 분류 전체보기 (64)
    • [Linux]리눅스 (1)
    • [NETWORK]네트워크 (17)
    • [PS] 알고리즘문제풀이 (16)
    • [SQL] (13)
    • [ALGORITHM]알고리즘개념 (9)
    • [DATA_STRUCTURE]자료구조 (1)
    • [PYTHON]파이썬 (0)
    • [정보처리기사] (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 리눅스 #파일시스템 #디렉토리
  • 원격접속
  • BIOS #MBR #LILO #Kernel #init
  • ssh
  • 리눅스
  • virtualbox

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
자고일어나니코딩왕

자일코의 CODING

[NETWORK] #1.IP
[NETWORK]네트워크

[NETWORK] #1.IP

2020. 5. 16. 17:57

IP주소

  • IPv4 주소는 호스트나 라우터 장비의 인터페이스에 할당된 32비트 주소다.

    • 하나의 ip주소는 같은 시간에 다른 인터페이스에 할당 될 수 없다.(전역유일성)

  • 특정 인터페이스가 항상 같은 주소를 가지지 않는다.

    • Dynamic assignment - 특정 IP주소가 일정기간 동안 특정 인터페이스에 할당 되었다가 다른 인터페이스에 할당되기도 한다.

  • 주소공간 ? = 프로토콜이 사용할 수 있는 주소의 총 개수

    • Ex) N bit 를 사용할 경우 2^n개의 주소공간이 존재한다.

    • IPv4의 경우 32bit를 사용하기 때문에 최대 2^32개의 주소공간을 사용할 수 있으나 실질적으로는 그보다 작은 숫자를 사용한다.

Dot - decimal notation

IP CLASS

  • IP주소 2진 표기법의 첫 네 개의 bit를 이용해서 전체 주소 공간을 나눈다.

    • A : 0 dot-decimal notation :0-127

    • B : 10 dot-decimal notation :128-191

    • C :110. dot-decimal :192-233

    • E : 1111. dot-decimal notation :240 - 255

  • 어떤 기관이나 회사가 IP주소 여러개가 필요한 경우 하나의 주소 블록을 요구한다.

    • A,B,C에서 하나를 할당해준다. 그이유는 A,B는 블록의 크기가 너무 크기 때문에 기관이나 회사는 주로 이 주소를 활용하지 못한다. C클래스는 불록의 크기가 너무 작기때문에 일정 수준 이상의 사용하는 기간에서는 부족하다. D클래스의 각 주소는 인터넷에서 하나의 멀티캐스트 그룹을 나타낸다.E클래스는 미래를 위해 남아져 있다.

HOST/Net ID

  • Nest id와 Host id를 쉽게 구분하기 위해서는 Mask(마스크)라는 표현 방법을 사용한다.

    • mask - 연속되는 1뒤에나오는 연속된 0으로 32bit의 숫자로 구성한다.

    • A클래스 : 처음 8비트가 netid이고 나머지 24비트는 hostid이다.

    • B클래스 : 처음 16비트 가 netid이다.

    • C클래스 : 처음 24비트가 netid이다.

  • /8 /16 /24와 같이 슬래시 표기법을 사용하는 것이 가장 보편적이며 이를 1의 개수라고 생각하고 Prefix라고 한다.

Subnet

  • 기관이 A,B와 같이 큰 클래스를 지정 받으면 주소를 더작은 네트워크(subnet)으로 분할하기도 한다.

  • 드물게 이웃과 주소의 한 부분을 공유하기도 한다.

  • 기존 주소 블록을 나누는것을 subneting(서브네팅)이라고 한다. ->즉 mask에서 1의 개수를 늘려주는 것이다.

    • ex) netid가 2개 늘어난다면 mask가 적용된 subnet이 4개가 만들어진다.

  • 작은 주소 블록들을 큰 블록으로 사용하는것 -> Supernetting(수퍼네팅)이라고 한다.

    • 따라서 A,B의 주소가 거의다 고갈되어서 C를 사용해야 하는데 기관이 256보다 큰 주소를 요구할 경우 인접한 여러 C클래스의 주소블록을 묶어서 사용할 수 잇다.(단 이 블록들이 인접해있어야 한다.)

비클래스(Classless)

  • IP주소의 주소공간은 이론적으로 2^32이며 =약 40억

    • 지구상의 인구가 70억 임을 감안하면 상당히 큰 수이다. 하지만 개인당 소유하고 있는 인터넷 기기가 하나 이상이며 사물이 인간의 관여 없이 인터넷에 연결된다(IOT)

      • 이를 해결하기 위해 비클래스 (Classless) 주소 할당 방식이 해법중 하나로 등장하였다.

  • 무작위로 주소를 배정해줄 경우 통제가 힘들기 때문에 IANA는 비클래스형 주소 블록 할당에 3가지 제약 조건을 만들었다.

    • 1.블록 안의 주소들은 연속 되어야 한다.

    • 2.한 블록 안의 주소의 개수는 2의 제곱수여야하낟.

    • 3.블록 안에서 첫번째 주소는 주소들의 개수로 나누어 져야한다.

  • 비클래스형 주소 블록의 첫주소 : (32-prefix길이)개에 0을 채운다.

  • 비클래스형 주소 블록의 마지막 주소 (32-prefix)개에 1을 채운다.

    • 이러한 주소할당방식을 CIDR("싸이더")라고 한다(routing방식이 아니라 주소할당 방식)

  • 클래스형 or 비클래스형 주소블록의 가장 첫 주소는 네트워크 주소로 사용된다.

    • Ex) 127.000.000.00/8로 시작하는 A클래스의 블록의 처음주소 127.000.000.000은 일반 호스트의 인터페이스에 할당되지 않고 해당 블록을 사용하는 네트워크 전체를 나타내는 주소로 사용된다.

      • 이 주소는 기관의 네트워크를 정의하는 주소이며 외부로부터 해당 네트워크에 접속하기 위해 외부의 중계장비에서 사용하는 주소이다.

  • 클래스형 혹은 비클래스형 주소블록의 마지막 주소는 해당 주소블록의 전체에 전달되는 broadcast주소로 사용된다. 즉 suffix , or host id의 모든 bit가 1인 주소는 특정인터페이스에 할당되지 않고 주소 블록의 전체에 전달될때 사용된다.

  • 기관 네트워크는 라우터를 통해서 인터넷과 연결한다.

    • 라우터는 두개의 인터페이스와 두개의 IP를 갖는다.

      • 기관에 승인된 블록에 속한주소

      • 라우터의 반대쪽 외부네트워크에 속한 주소

  • 비클래스형 주소할당 , CIDR의 영향으로 prefix의 길이가 가변적으로 변하며 서브네팅의 큰의미가 많이 사라짐

    • 하지만 CIDR방식으로 할당받은 주소블록을 다시 나누는 서브네팅이 가능하며 많이 이루어 지고 있다.

    • 서브네팅을 사용하는 경우 기존의 mask를 subnet mask라고 부른다.

  • CIDR은 주소블록을 좀 더 효율적으로 나누어 B클래스와 C클래스 사이 규모의 네트워크 운용을 가능하게했다.

    • But 근본적인 해답은 될 수 없다.

'[NETWORK]네트워크' 카테고리의 다른 글

[NETWORK]#6. TCP  (0) 2020.05.18
[NETWORK]#5.전송계층(TRANSPORT LAYER)  (0) 2020.05.18
[NETWORK]#4.네트워크 계층(NETWORK LAYER)  (0) 2020.05.18
[NETWORK]#3.OSI  (0) 2020.05.18
[NETWORK]#2.인터넷(INTERNET)  (0) 2020.05.18
    '[NETWORK]네트워크' 카테고리의 다른 글
    • [NETWORK]#5.전송계층(TRANSPORT LAYER)
    • [NETWORK]#4.네트워크 계층(NETWORK LAYER)
    • [NETWORK]#3.OSI
    • [NETWORK]#2.인터넷(INTERNET)
    자고일어나니코딩왕
    자고일어나니코딩왕
    열코!

    티스토리툴바