ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Network] IP Address, Class&Subnet mask, CIDR, Reserved IP Address 정리
    Computer Science/Network 2022. 3. 24. 01:28
    728x90

    내가 보기위해 만든 요약정리 본


    IP 주소

    IP란 Internet Protocol의 약자로  인터넷 상에서 데이터를 주고 받기 위한 통신 규약이다. 이 통신을 하기 위해서 컴퓨터 네트워크 장치들이 사용하는 특수한 번호를 ip 주소라고 한다. 현재 인터넷에서 사용하는 표준 프로토콜은 IPv4이다. 하지만 이는 주소 공간 고갈 문제가 있어 나중엔 IPv6가 이를 대체할 것이라고 한다.

     

    • IPv4

    168.188.123.123과 같이 점을 기준으로 4마디로 구분되는 형식을 가진다. 점으로 구분되는 4개의 영역은 옥텟이라고 불린다.  각 옥텟은 0-255까지의 범위를 가져 IPv4는 0.0.0.0 부터 255.255.255.255까지의 주소를 사용한다. 옥텟은 8bit로 표현되어 32bit 주소가 된다. 이는 2^32개의 주소를 나타낼 수 있다는 뜻이다.

     

    168.188.123.123

    10101000 10111100 01111011 01111011

     

    • IPv6

    IPv4의 주소 고갈 문제로 인해 32bit 주소 대신 128bit의 주소를 고안했다. 2^128개의 주소를 나타낼 수 있기 때문에 이를 사용할 경우 주소 고갈 문제는 발생하지 않을 것으로 보인다. 하지만 아직 상용화 단계라 IPv4체계를 대체하기에는 시간이 필요하다.

     

     

    • 사용 범위에 따른 구분

    - 공인 ip : 공인기관에서 인증한 공개형 ip주소이다. 공인 IP주소는 외부에 공개되어 있기 때문에 이 주소를 통하여 호스트 간의 직접적인 통신이 가능하다. 따라서 이를 사용하기 위해선 보안장비가 꼭 필요하다.

     

    - 사설 ip : 외부에 공개되지 않은 폐쇄형 IP주소이다. 이 주소만 가지고 외부에서 직접적으로 통신할 수 없다.  사설 ip를 사용하여 하나의 공인 ip주소를 공유함으로써 여러 대의 컴퓨터가 인터넷에 접속할 수 있게 하여 공인 ip주소 부족을 해결한다. 또한 사설 ip주소가 할당된 컴퓨터는 외부에서 접근할 수 없어 공유기가 보안 장비의 역할을 해주어 보안문제를 해결할 수 있다. 사설 ip주소는 대역이 고정되어 있어  A클래스의 10.xxx.xxx.xxx, B클래스의 172.10.xxx.xxx, C클래스의 192.168.xxx.xxx를 사용한다. 

     

    • 할당 방식에 따른 구분

    - 고정 ip : 컴퓨터에 명시적으로 ip주소를 설정하여 사용하는 것이다. 공인 ip라면 인터넷 서비스 업체가 할당하고 가상 ip주소면 인터넷 공유기가 할당한다.

     

    - 유동 ip : IP주소를 할당하는 특정 서버가 보내주는 IP주소 그대로 컴퓨터에 자동 설정되는 방식이다. 이 방식을 DHCP 서비스라고 한다. 컴퓨터가 부팅되면 DHCP서버에 IP주소 할당을 요청하고 이를 수신한 DHCP 서버가 해당 컴퓨터에 IP 주소 등의 네트워크 정보를 전달하면, 컴퓨터에서는 이를 자동으로 등록, 설정한다. 인터넷 공유기는 DHCP의 역할도 하고 있다.

     

    *DHCP(Dynamic Host Configuration Protocol) : 호스트의 IP주소와 각종 TCP/IP 프로토콜의 기본 설정을 클라이언트에게 자동적으로 제공해주는 프로토콜

     

     

    Class

    IPv4는 인터넷 주소 자원 관리 기관에서 부여한 네트워크 주소와 네트워크 상의 개별 호스트를 식별하기 위하여 네트워크 관리자가 부여한 호스트 주소로 구성된다. IPv4 주소는 대역에 따라 A, B, C, D, E 클래스로 나누어진다. 해당 클래스들은 네트워크 크기와 호스트 수에 따라 나누어지게 된다.  클래스 구분을 위해 첫째 옥텟의 맨 왼쪽 bit에 A클래스는 0, B클래스는 10, C클래스는 110, D클래스는 1110, E클래스는 1111을 지정한다.

    • A클래스 : 대규모 네트워크 환경에 쓰이며, IP 주소 4마디 중 첫 번째 마디의 숫자가 0~127까지 사용할 수 있다.
    • B클래스 : 중규모 네트워크 환경용으로 128~191까지 사용할 수 있다.
    • C클래스 : 소규모 네트워크 환경에 적용되는 것으로 192-223까지 사용할 수 있다.
    • D, E 클래스 : 멀티캐스트용, 연구/개발용 ip주소 또는 미래에 사용하기 위해 남겨놓은 것으로 일반적인 용도로 사용되지 않는다.  

     

     

    Subnet mask

    먼저 Subnetting이란 네트워크 관리자가 네트워크 성능을 향상시키기 위해, 자원을 효율적으로 분배하는 것이다. 여기서 자원을 효율적으로 분배한다는 것은 네트워크 영역과 호스트 영역을 분할 하는 것이라고 생각하면 된다. 

    서브넷 마스크는 하위 네트워크를 구분하는 표기법이다. 같은 IP 주소 대역이라도 네트워크를 A, B, C 클래스 등으로 나눌 수 있는데 이를 구분하는 기준이다. 이는 사용자가 임의로 설정하는 것이 아니라 인터넷 서비스 업체에서 제공하는 값을 써야한다. 서브넷 마스크는 일반적으로 A클래스 255.0.0.0, B클래스 255.255.0.0, C클래스 255.255.255.0 으로 표시된다. 이는 기본 서브넷 마스크이고 이로인해 쪼개진 네트워크 주소를 서브넷 네트워크라고 한다.

     

    하지만 해당 클래스의 서브넷 마스크를 사용하지 않는 경우도 있다. 다음을 봐보자.

     

    1001 0110. 1001 0110. 0110 0100. 0000 0001 = 150.150.100.1 (IP주소)

    1111 1111. 1111 1111. 1111 1111. 0000 0000 = 255.255.255.0 (C클래스 기본서브넷마스크)

    1001 0110. 1001 0110. 0110 0100. 0000 0000 = 150.150.100.0 (서브넷네트워크)

     

    150.150.100.1은 B클래스이지만 서브넷 마스크의 경우 C클래스의 서브넷 마스크를 사용하고 있다. 이는 B클래스의 주소를 마치 C클래스의 주소처럼 사용하겠다는 것이다.  C클래스의 기본 서브넷 마스크를 사용함으로써 150.150.100까지 네트워크 영역으로 만들고 4번째 옥탯만을 호스트 IP를 배정할 수 있게 만든 것이다.  즉 네트워크 영역을 늘리고 호스트 영역을 줄인것 이다. 이처럼 서브넷 마스크를 씌워서 자신에게 맞는 네트워크를 만드는 것을 서브네팅이라고 한다.

     

    11001001 11011110 00000101 00000000 = 201.222.5.0 (IP 주소)

    11111111 11111111 11111111 11111000 = 255.255.255.248 (서브넷마스크)

     

    11111111 11111111 11111111 (기본 C클래스가 가질 수 있는 네트워크 영역)

    11111 (사용자 지정한 네트워크영역)

    000 (사용자가 지정한 호스트영역)

     

    32개의 서브넷 네트워크

    8개의 호스트 IP -> 브로드캐스트 주소와 네트워크 주소를 제외하여 실질적으로 6개의 호스트

     

     

     

    CIDR(사이더)

    Classless Inter-Domain Routing으로 클래스 없는 도메인 간의 라우팅 기법이다. 클래스가 없다는 것은 위에 언급했던 class로 네트워크 구분을 하지 않는 다는 것이다.  사이더를 통해 class 체계보다 더 유연하게 IP주소를 여러 네트워크 영역으로 나눌 수 있게 되었다. 

     

    192.168.10.0/24

    위와 같은 IP주소에서 뒤에 붙는 /24가 바로 사이더 표기법이다. 이 숫자는 비트단위이며 ip주소가 총 32비트이기 때문에 0-32까지 표현이 가능하다. 

     

    사이더 값이 /8, /16, /24, /32일 경우 각 자리 옥텟의 전체를 포함하기 때문에 계산하기 쉽다. 

    ex> 143.7.65.203/16 => 143.7.0.0 ~ 143.7.255.255

     

    만약 사이더 값이 두개의 옥텟을 걸치게 될 경우 계산이 어려워진다.

     

    ex> 143.7.65.203/23 

    출처 https://kim-dragon.tistory.com/9

    3번째 옥텟의 네트워크 부분 0100000을 고정된 부분이라고 생각했을 때 맨 오른쪽 비트에  0 또는 1이 올 수 있다. 즉 최소 64, 최대 65의 네트워크를 가지게 된다. 

    호스트 부분의 경우 4번째 옥텟을 전부 사용할 수 있기 때문에 최소값 0, 최대값 255가 된다.

    따라서 143.7.64.0 - 143.7.65.255 대역을 사용할 수 있다.

     

    ex> 143.7.65.203/22

    출처 https://kim-dragon.tistory.com/9

    3번째 옥텟을 살펴보면 맨 오른쪽 2비트의 조합 4가지를 통해 촤소 64, 65, 66, 최대 67인 것을 알 수 있다.

    호스트의 경우 이전 예제와 같이 최소 0, 최대 255가 된다.

    따라서 143.7.64.0 ~ 143.7.67.255 대역이다.

     

    ex> 143.7.65.203/25

    출처 https://kim-dragon.tistory.com/9

    4번째 옥텟을 살펴보면 맨 오른쪽 1비트를 고정으로 최소, 최대값을 찾아야한다. 최소값은 10000000 128이고, 최대값은 11111111 255이다.

    따라서 143.7.65.128 ~ 143.7.65.255 대역이다. 

     

     

    Reserved IP Address

    0.0.0.0 : 현재 네트워크

     

    127.0.0.0/8 : Loopback주소로 소프트웨어 테스트 목적

    127.0.0.1/8 : localhost

     

    169.254.0.0/16

    • Link-Local, Zero Configuration Networking을 위하여 예약된 sunet
    • DHCP에서 IP를 받아오지 못할 경우 설정 못한 호스트끼리 통신 가능하도록 세팅된 주소범위

     

    사설 IP 범위

    • 10.0.0.0/8
    • 172.16.0.0/12
    • 192.168.0.0/16

     

    224.0.0.0/4 : 멀티캐스트 주소로 그룹으로 지정된 장치들에게 동시 통신 시 사용

     

    255.255.255.255/32 : 브로드캐스트

     

     


    참고자료

    : https://xn--3e0bx5euxnjje69i70af08bea817g.xn--3e0b707e/jsp/resources/ipv4Info.jsp 
    : 
    https://jwprogramming.tistory.com/35 

    https://c0mp.tistory.com/927 

    : https://engkimbs.tistory.com/621

    : https://limkydev.tistory.com/166?category=954021 

    : https://kim-dragon.tistory.com/9

    : https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=p_rain&logNo=220878796660 

    728x90

    'Computer Science > Network' 카테고리의 다른 글

    [Network] HTTP 상태 코드  (0) 2022.07.06
    [Network] NAT(Network Address Translation)이란?  (0) 2022.03.29

    댓글

Designed by Tistory.