[네트워크 기초] IP 주소와 서브넷, 그리고 클래스와 CIDR

2025. 6. 13. 18:16·네트워크
728x90
반응형

1. IP 주소란 무엇인가?

IP 주소는 네트워크 상에서 각 장치를 구분하기 위한 주소 체계이다.
IPv4 기준 32비트로 구성되며, 0~255 범위의 숫자 4개로 표현된다. 예: 192.168.0.1

지구상에서 할당 가능한 IPv4 주소의 총 갯수는 2^32 = 약 43억 개이다.


2. 특수한 IP 주소: 0과 127

다음과 같은 IP 대역은 일반 통신에 사용할 수 없다.

주소 설명
0.0.0.0 자신을 아직 식별하지 못한 상태 (로컬 주소 없음)
127.0.0.0/8 루프백(Loopback) 주소, 자기 자신 테스트 용도 (127.0.0.1)

따라서 0과 127로 시작하는 IP는 실제 네트워크 통신용으로 사용할 수 없다.


3. IP 클래스(Class) 체계

초기의 IPv4 주소는 아래와 같이 5개의 클래스로 나뉘었다.

클래스 시작 범위 주소 수 설명
A 0.0.0.0 ~ 127.255.255.255 약 22억 개 대규모 네트워크용. 0, 127 예약
B 128.0.0.0 ~ 191.255.255.255 약 11억 개 중간 규모 네트워크
C 192.0.0.0 ~ 223.255.255.255 약 5.5억 개 소규모 네트워크
D 224.0.0.0 ~ 239.255.255.255 - Multicast 용도 (예약)
E 240.0.0.0 ~ 255.255.255.255 - 연구/실험 용도 (예약)

A클래스의 0, 127과 마찬가지로 D,E클래스는 예약되어있어 사용할 수 없다.

255.255.255.255 는 전체 네트워크에 브로드캐스트를 보내는 broadcast 주소이다.


4. 각 클래스의 서브넷 마스크

서브넷 마스크는 IP 주소에서 어느 부분이 네트워크(Network)이고 어느 부분이 호스트(Host)인지 구분한다.

클래스 서브넷 마스크
A 255.0.0.0 (/8)
B 255.255.0.0 (/16)
C 255.255.255.0 (/24)
D, E 사용하지 않음

서브넷 마스크가 같다고 같은 네트워크가 되는 것은 아니다.
예를 들어:

  • 1.1.0.0, 마스크 /8 → Class A, 유효함
  • 1.0.0.0, 마스크 /8 → 예약 주소, 유효하지 않음

5. 브로드캐스트, 대표 주소 (예약 주소)

각 서브넷에서는 아래 주소들은 예약되어 있어 호스트로 할당할 수 없다.

주소 의미
네트워크 시작 주소 (host part = 0) 대표 주소
네트워크 마지막 주소 (host part = 255) 브로드캐스트 주소

예: 192.168.1.0/24 대역에서는

  • 192.168.1.0 → 네트워크 주소 (예약)
  • 192.168.1.255 → 브로드캐스트 주소 (예약)

6. 유니캐스트 / 멀티캐스트 / 브로드캐스트

타입 설명
Unicast 1:1 통신. 일반적인 IP 통신 방식
Multicast 1:N 그룹 통신. 영상 스트리밍 등에 사용 (Class D)
Broadcast 1:모두 통신. 같은 서브넷 전체에 전송 (255로 끝나는 주소)

7. CIDR: 유연한 주소 설계 방식

CIDR (Classless Inter-Domain Routing)
고정된 클래스 개념 대신, 슬래시 표기(/)로 네트워크/호스트 영역을 구분한다.
/뒤에오는 숫자는 1인 비트의 갯수를 나타낸다.

예: 172.31.0.0/21 → 서브넷 마스크: 255.255.248.0

#subnet mask
11111111.11111111.11111000.00000000
  • ➖ 21비트까지는 네트워크, 나머지 11비트는 호스트

예제 1: Class B 182.64.32.0/17

IP 주소 포함 여부
182.64.2.0 ❌
182.64.33.255 ✅
182.64.96.0 ❌
182.64.96.255 ❌

→ /17 → 128 단위 서브넷 → 182.64.0.0 ~ 182.64.127.255 가 유효 범위

예제 2: 172.31.0.0/21

  • ➖ 유효 IP 범위: 172.31.0.1 ~ 172.31.7.254
  • ➖ /21 = 2,048개 호스트 가능

다음 IP는 포함되지 않는다:

  • ➖ 172.31.8.2 ❌
  • ➖ 172.31.16.1 ❌

8. 실무에서의 ping 점검 순서

장비 연결 시 ping을 통해 네트워크 문제를 점검할 수 있다. 아래 순서대로 확인한다.

  1. 자기 자신 IP로 ping (127.0.0.1 또는 본인 IP) → 네트워크 스택 정상 여부
  2. 같은 서브넷 내 다른 장비로 ping → 스위치/케이블 이상 여부 확인
  3. 다른 네트워크의 IP로 ping → 라우터 경유 경로 확인
  4. Gateway IP로 ping → ARP 브로드캐스트가 발생하며 연결 여부 판단

실제로 ping이 안 될 경우, 다음을 체크한다:

  • ➖ IP 설정 오류 (ipconfig 또는 ifconfig)
  • ➖ 서브넷 마스크 오류 (같은 네트워크로 인식 못함)
  • ➖ 기본 게이트웨이 오류
  • ➖ 물리적 연결 문제 (링크 다운)
  • ➖ 방화벽 차단

9. 라우터의 역할

라우터는 서브넷 간의 데이터 전송을 담당한다. 즉, 다른 네트워크로 나가야 할 때 경로를 찾아주는 역할을 한다.

예를 들어 172.31.8.2/21 과 172.31.16.2/21 은 서로 다른 네트워크에 속하므로, 라우터를 통해야 통신할 수 있다.


10. 마무리

IPv4 주소는 한정되어 있고, 특수한 예약 영역이 많다.
따라서 실제 사용 가능한 IP는 전체의 일부에 불과하다.

  • ➖ CIDR과 서브넷 마스크를 정확히 이해하고
  • ➖ 클래스 기반 주소 체계는 이해는 하되, 실무에서는 거의 CIDR 기준으로 설계된다.
  • ➖ ping, ARP, ipconfig 등의 기본 명령어로 통신 문제를 단계별로 분석할 수 있어야 한다.

IP는 단순한 숫자 4개가 아니라, 주소 체계 + 계층적 설계 + 통신의 기반이다.
기초를 정확히 이해하면 네트워크 문제 해결 속도도 확실히 빨라진다.

728x90
반응형

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

[네트워크 기초] OSI 7계층과 TCP/IP 모델 정리  (1) 2025.06.13
[DNS 개념과 실습] 내부망 구성부터 레코드 이해까지  (0) 2025.06.09
[네트워크 기초] DHCP 동작 원리와 Broadcast 통신 흐름 정리  (0) 2025.06.05
[리눅스 NFS] NFS? 우분투 서버/클라이언트 설정까지  (0) 2025.06.04
[가상화와 네트워크 구조] NAT, bridges, 호스트 전용 네트워크 개념 정리  (0) 2025.05.30
'네트워크' 카테고리의 다른 글
  • [네트워크 기초] OSI 7계층과 TCP/IP 모델 정리
  • [DNS 개념과 실습] 내부망 구성부터 레코드 이해까지
  • [네트워크 기초] DHCP 동작 원리와 Broadcast 통신 흐름 정리
  • [리눅스 NFS] NFS? 우분투 서버/클라이언트 설정까지
highgarden
highgarden
커밋 하나하나가 쌓여 커다란 정원이 되는 중입니다. 하루하루 정성껏 심어가는 중 https://github.com/highgarden7
  • highgarden
    커밋심는 정원
    highgarden
  • 전체
    오늘
    어제
    • 분류 전체보기 (37)
      • ai (1)
      • devops (2)
      • Nest.js (14)
      • linux (14)
      • 네트워크 (6)
      • git (0)
      • aws (0)
      • docker (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    Java
    nestjs
    githib action
    E2E
    네트워크
    vercel
    springboot
    Chat GPT
    Linux
    IP
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
highgarden
[네트워크 기초] IP 주소와 서브넷, 그리고 클래스와 CIDR
상단으로

티스토리툴바