운영체제(OS) & Network

IP Address의 구성, 주소 체계

jih0ssang 2023. 9. 18. 16:57

학습목표

1. IP Address의 구성, 진수와 subnet-mask를 알아보자.

2. IPv4의 주소체계에 대해 배워보자.


저번에는 MAC Address의 구성을 봤었죠?

MAC Address는 제조사 코드(3byte) + 일련번호(3byte) = 6byte로 이루어져 있다고 했습니다.

 

이번에는 IP Address의 구성을 살펴보도록 합시다.

IPv4:  10진수로 표기

길이:  4byte(32bit)

구분자:  .

표현할 수 있는 범위= 43억개(2^32)

 

8bit    .   8bit    .    8bit    .    8bit

0~255 . 0 ~ 255 . 0 ~ 255 . 0 ~ 255

 

IP Address ‘network id + host id’ 로 구성되어있습니다.

첫번째 옥텝의 숫자에 따라서 class(주소 체계)가 결정됩니다.

class에 따라 default subnet-mask가 다르기 때문에 알아두는 것이 좋습니다.

 

옥텝이란, 구분자 . 로 구분되어있는 8bit 덩어리 하나를 의미하는 것입니다.

subnet-mask란, 내 network id가 어디까지인지 구분하기 위해 사용하는 것입니다.

host id에 따라 네트워크 크기가 결정되기 때문에 subnet-mask는 중요합니다.

 

prefix란, 내 network id 비트 수를 표기하는 것이며, 표현은 ‘/비트수’로 합니다.

예를 들어 127.0.0.0/8이면,

prefix는 /8이고, IP 할당가능한 범위가 127.0.0.0~127.255.255.255까지 라는 뜻입니다.

 

IPv4 주소 체계(Class)

A class    0xxx xxxx. ~ 128(0 ~ 127)

          = 0NNNNNNN . HHHHHHHH . HHHHHHH . HHHHHHH

 

          0 ~ 127.X.X.X

          default sm 255.0.0.0 

          prefix /8

 

B class    10xx xxxx. ~ 64(128 ~ 191)

         = 10NNNNNN . NNNNNNNN . HHHHHHHH . HHHHHHHH

 

           128 ~ 191.x.x.x

           default sm 255.255.0.0

           prefix /16

 

C class     110x xxxx. ~ 32(192 ~ 223) 

        = 110NNNNN . NNNNNNNN . NNNNNNNN . HHHHHHHH

 

           192 ~ 223.x.x.x

           default sm 255.255.255.0

           prefix /24

 

D class     1110 xxxx. ~ 16(224 ~ 239)

                224 ~ 239.x.x.x

               특수목적용(멀티캐스트용)

 

E class      1111 xxxx. ~ 16(240 ~ 255)

                 240 ~ 255.x.x.x

                연구용

 

=> D, E class subnet-mask가 없습니다. (예약된 주소임.)

 

 

<예약된 주소>

0.0.0.0/8         "This network"                        [RFC791]

 현재네트워크

 

0.0.0.0/32       "This host on this network"

→모든 주소를 지칭하기도 합니다.

라우팅테이블에서는 default route를 의미합니다. (현재 자신이 알고있는 주소 외에 나머지 0.0.0.0/0) 

L3 장비인 경우, 인터넷을 연결할 때 default route가 반드시 있어야만 인터넷이 가능합니다.

 

127.0.0.0/8           Loopback                         [RFC1122] 

localhost 서비스를 동작하고 해당 서비스를 확인할 때 http://127.0.0.1 또는 http://localhost

→자가테스트할 때 사용

 

169.254.0.0/16      Link Local                         [RFC3927]

→DHCP(자동으로 IP할당) 받도록 설정하였으나, DHCP서버로 IP주소를 못 받아올 때

운영체제가 임의의 주소를 할당해줌

 

240.0.0.0/4           Reserved                         [RFC1112]

 

255.255.255.255/32      Limited Broadcast        [RFC8190] [RFC919]

라우터 밖을 벗어나지 못함. 해당 네트워크 내에서만 작용

 

D class

E class

 할당 불가능한 class

 

Host ID가 모두 0인 주소

ex) 192.168.1.0 network에서 192.168.1.0(first ip) 대표역할 network address

 

Host ID가 모두 1인 주소

ex) 192.168.1.255 broadcast address

 미리 약속이 되어서(예약되어) 장비나 PC에 할당할 수 없는 주소.

 

 

<사설 IP주소 대역>

 

10.0.0.0/8 Private-Use [RFC1918] -A class

 

172.16.0.0/12 Private-Use [RFC1918] -B class

 

192.168.0.0/16 Private-Use [RFC1918] -C class

 

위와 나와있는 예약된 주소들은 예약되어있어서 장비나 시스템에 할당할 수 없는 주소들입니다.

아래에 더 자세하게 설명하도록 하겠습니다.

 

IP는 공인 IP와 사설 IP가 있습니다.

공인 IP는 외부에서 우리를 식별할 수 있는 주소입니다.

사설 IP는 외부에서 사용할 수 없으며, 내부에서만(우리끼리만) 사용하는 주소입니다.

이해하기 쉽게 말하자면

우리가 학교로에 전화하면 대표 번호로 전화를 하죠?

여기서 대표 번호는 공인 IP와 같습니다.

 

학교 안에서는 내선 번호를 사용해서 내부 간 간편하게 통신을 하죠?

하지만 외부에서는 이를 모릅니다.

여기서 내선 번호가 사설 IP와 같습니다.

 

주소 체계 안에 속해있는 사설 IP주소 대역은 다음과 같습니다.

사설 IP주소 대역

 A class 10.x.x.x

10.0.0.0/8            IP주소 대역      10.0.0.0 ~ 10.255.255.255 (Network 1)

 

B class 172.16~172.31.x.x

172.16.0.0/12       IP주소대역       172.16.0.0 ~ 172.31.255.255 (N 16)

 

C class 192.168.x.x

192.168.0.0/16     IP주소대역      192.168.0.0 ~ 192.168.255.255 (N 256)

 

 

B class prefix가 왜 16이 아니라, 12일까요?

 

172.16.0.0/16          172.16.0.0 ~ 172.16.255.255

172.17.0.0/16          172.17.0.0 ~ 172.17.255.255

172.18.0.0/16          172.18.0.0 ~ 172.18.255.255

172.19.0.0/16          172.19.0.0 ~ 172.19.255.255

        ...

172.30.0.0/16          172.30.0.0 ~ 172.30.255.255

172.31.0.0/16          172.31.0.0 ~ 172.31.255.255

 

여기서 맨 첫 번째 172.16.0.0/16을 가져와보겠습니다.

 

172.16  .0001 0000.

172.17  .0001 0001.

...

172.18  .0001 0100.

...

172.25  .0001 1001.

...

172.30  .0001 1110.

172.31  .0001 1111.

 

앞에 8비트는 일정하고, 두 번째 옥탭에서 4bit만 일정하기 때문에

8+4=12 , network-id의 비트 수는 12이므로, prefix 12입니다.

 

 

사설 IP주소는 인터넷이 안됩니다.

사설망에서 인터넷을 하기 위해서는 공인 IP주소로 변환을 해야합니다.

여기서 변환을 해주는 것이 NAT 입니다.

NAT=Network Address Translation)