IT 공부 내용 정리/네트워크

IP와 서브넷 마스크

afkajas 2024. 11. 6. 01:57

OSI 7 계층에서 3 계층에 해당하는 네트워크 계층에서 사용하는 프로토콜입니다. ( TCP /IP에서는 인터넷 계층입니다.)

 

네트워크에 연결된 모든 기기에 부여되는 고유한 주소라고 생각하시면 됩니다.

우리는 여기서 ip주소는 왜 사용하고 ip 주소를 이해하기 위한 여러 가지 설정들을 살펴볼 것입니다.


IP 주소란?

ip주소는 인터넷에 연결된 장치들 ( PC , 스마트폰 등등) 에게 부여되는 고유한 주소입니다.

예를 들어 우리가 특정한 장소를 찾아갈 때 지도앱을 켜고 주소를 입력해서 해당 위치를 찾아가는 것처럼 데이터도 클라이언트와 서버에게 찾아가기 위해서 필요한 것이 바로 ip 주소입니다. 

 

IP주소는 종류가 2가지가 있습니다.

 

  • 공인 IP 주소 : 외부망 또는 공용망에 연결하기 위해서 필요한 IP주소입니다.
  • 사설 IP 주소 : 기업 또는 가정에서 내부 네트워크를 구성하는데 필요한 IP주소입니다.

그리고 당연하게도 사설 IP주소로는 인터넷에 접속할 수 없습니다.

 

예를 들어볼까요 사용하시는 OS가 window라고 가정해 보겠습니다. 윈도의 명령 프롬프트 ( cmd )에서 ipcofig라고 입력해 보죠 그럼 결과가 아래처럼 나올 겁니다.

 

여기서 보면 IPv4 주소가 195.168.9.21이라고 나와 있군요 그럼 이제 인터넷을 켜고 네이버 검색창에서 '나의 아이피 주소'라고 입력해 보죠

여기서는 180.80.107.4라고 나옵니다. 여기서 cmd 창에서 나오는 ip는 사설 ip 주소이고 네이버에서 나온 ip는 공인 ip 주소입니다.

 

그럼 여기서 의문의 생겨야 합니다 내 pc의 ip 주소는 사설 ip인데 어떻게 인터넷이 되고 있는가? 에 대해서 말이죠

 

그것에 대한 해답은 NAT라는 것을 알게 되면 아시게 됩니다. 지금은 '사설 ip -> 공용 ip 변경돼서 통신한다'라고 만 생각하시면 됩니다.

 


IP 주소의 구조

이제부터 ip 주소의 구조를 살펴보겠습니다.

  • ipv4 주소는 2진수로 구성된다.
  • PC나 장비는 2진수 값을 10진수로 변경해서 사용자에게 보여준다.
  • ipv4 주소는 xxx.xxx.xxx.xxx로 항상 구성된다.
  • 하나의 xxx는 8비트이며 ipv4는 8bit씩 4개의 옥텟으로 이루어져 있다.
  • 즉  예를 들어서 ipv4 주소 192.168.30.255 = 11000000.10101000.00011110.11111111이다.
  • ipv4의 범위는 0.0.0.0 ~ 255.255.255.255이다 결코 255 이상의 숫자는 나올 수 없다.

2진수는 0과 1로만 구성되며 한 개의 자리가 1bit입니다.

 

예를 들어서

10진수 :  192

 2진수   :  1          1     0       0     0      0      0      0   

bit 단위  : 128    64    32     16    8      4      2     1

 

이렇게 생각하시면 됩니다

 

그래서 2진수 11000000을 10진수로 변환하면 bit 단위에 대입해서 1로 표시된 부분의 숫자만 계산하면

128+64 = 192가 되고 10진수 192로 계산이 되는 겁니다.


Subnetmask

 

 

 

위의 이미지에서 노란색으로 표시된 부분을 보시면 서브넷 마스크라고 적혀있고 255.255.255.0이라고 적혀 있습니다.

 

이 서브넷 마스크의 역할은 파란색으로 표시된 ipv4 주소에 대해서 어떤 식으로 더 세밀하게 나누어졌는지를 알려주는 기능을 합니다.

 

서브넷 마스크의 기능은 ipv4주소에 대해서 Network-id와 Host-id를 구분해 주는 역할입니다.

 

여기서 Network-id와 Host-id는 무엇을 의미할까요?

 

예를 들어서 어떤 아파트의 주소가 '서울시 동대문구 xxx아파트'라고 가정해 봅시다 

택배기사님이 택배를 배달해야 하는데 주소가  '서울시 동대문구 xxx아파트'라고만 적혀 있으면 어떤 세대의 택배인지 알 수가 없겠죠 그래서  '서울시 동대문구 xxx아파트' 뒤에 '101동 501호'라고 적혀 있고 기사님은 101동 105호에 택배를 배달할 겁니다. 

여기서  '서울시 동대문구 xxx아파트'는 공통된 주소이고 '101동 501호'는 변동이 가능한 주소겠죠

 

 '서울시 동대문구 xxx아파트'  = Network-id이고  '101동 501호' = Host-id라고 생각하시면 됩니다.

 

이걸 ipv4에 적용해 보죠

 

ipv4주소 195.168.9.21을 2진수로 변환해 보겠습니다. 11000011.10101000.00001001.00010101 이 됩니다.

 

서브넷 255.255.255.0을 2진수로 변환하면 11111111.11111111.11111111.00000000 이 되겠죠

 

ipv4 =    11000011. 10101000. 00001001. 00010101 

subnet =11111111.   11111111.  11111111.   00000000

 

이렇게 구분할 수 있겠죠 여기서 서브넷이 1로 채워진 부분이 network-id가 되고 0으로 채워진 부분이 host-id가 됩니다.

이걸 10진수로 바라보면

 

ipv4 =     195. 168.   9.  21

서브넷 = 255. 255. 255. 0 이렇게 보일 겁니다. 

 

그럼 network-id가 195.168.9가 되고 host-id가. 21이 됩니다. 이걸 우리는 보통 195.168.9.21 /24 이렇게 표현합니다.

여기서 /24는 서브넷 마스크가 1인 bit가 24개라는 뜻이고 /24 = 255.255.255.0입니다.

 

/25 = 255.255.255.128

/28 = 255.255.255.240 이렇게 생각하시면 됩니다.

 

그럼 서브넷마스크는 왜 사용할까요?

 

네트워크 초기에는 네트워크에 접속하는 장비의 수가 그렇게 많지 않았습니다.

그래서 아래의 표와 같이 network-id와 host-id를 구분했습니다.

과거에는 이러한 형태로 충분히 모든 장비에 ipv4 주소를 할당할 수 있었습니다.

그러나 개인용 PC의 보급 및 스마트 폰 같은 장비들이 추가됨에 따라서 ipv4 주소가 부족하게 되었습니다.

이러한 형태틀 Classfull 형태라고 합니다. 한마디로 클래스 A로 설정하면 해당 주소범위 내에서 ip를 할당해야 해서

네트워크 크기에 따라 ip가 남거나 부족한 경우가 발생하고 라우팅 테이블이 커져서 네트워크 성능이 저하되는 문제가 발생했습니다.

 

그래서 서브넷 마스크를 사용하는 Classless 도입해서 유연하게 network-id와 host-id를 할당하는 모습을 가지게 되었습니다.

 

물론 지금은 ipv4 주소가 고갈되어 ipv6로 넘어가는 형태이긴 합니다만 ipv6는 나중에 뒤에서 이야기하겠습니다.

 


Wildcard Mask

와일드카드 마스크는 서브넷 마스크와 같은 역할을 수행할 수 있습니다.

 

다만 서브넷 마스크와 와일드마스크는 각기 다른 목적을 가지고 있으며 표현방법도 다릅니다.

 

서브넷 마스크

  •  ip 주소에서 network-id와 host-id를 구분하는 역할
  • 네트워크 부분을 중심으로 구분
  • 0과 1로 구성 1은 네트워크 0은 호스트 부분

와일드카드 마스크

  • ip주소에서 호스트 부분을 중심으로 구분
  • 0과 1로 구분되는 것은 같으나 1이 호스트 0이 네트워크 부분

서브넷 마스크는 네트워크를 나누는 기준이 되고 와일드카드 마스크는 트래픽을 필터링하기 위한 목적입니다.

 

서브넷 마스크 : 255.255.255.0 = 와일드카드 마스크 : 0.0.0.255는 같은 네트워크 대역에 존재하며 같은 host 수를 가지고 있는 것이라고 생각하시면 됩니다.

 

와일드카드 마스크는 ACL에서 좀 더 자세하게 다루겠습니다.

'IT 공부 내용 정리 > 네트워크' 카테고리의 다른 글

Vlan  (0) 2024.11.06
허브와 스위치(스위칭)  (0) 2024.11.06
OSI 7계층 과 TCP / IP  (1) 2024.11.06
Ipv4 전송 유형  (0) 2024.11.05
네트워크의 대표적인 구성  (3) 2024.11.04