# IPv4 CIDR·서브넷 계산기: IP 범위 확인과 클래스 A·B·C 이해하기

date: 2026-10-15

> IPv4 주소와 CIDR 프리픽스로 네트워크 시작·끝, 서브넷 마스크, 브로드캐스트와 호스트 수를 계산합니다. IP 클래스 A·B·C의 의미와 방화벽·공유기 설정 예시도 설명합니다.


{{< cidr-calculator >}}

## 계산기 사용법과 결과 읽기

**IPv4 주소와 `/24` 같은 프리픽스를 입력하면, 그 주소가 속한 네트워크의 시작과 끝을 확인할 수 있습니다.** 주소에 `192.168.1.130/26`처럼 프리픽스를 붙여도 됩니다. 이 경우 드롭다운보다 주소에 쓴 `/26`이 우선합니다.

1. IP 주소를 입력하고 프리픽스를 선택한 뒤 **계산하기**를 누릅니다.
2. **클래스 A·B·C 예시**를 누르면 해당 클래스의 역사적 기본 프리픽스와 사설 IP 예제가 채워집니다. 이후 값을 바꿔 원하는 범위를 계산할 수 있습니다.
3. 방화벽에 넣을 범위는 **정규화된 네트워크 CIDR**과 **전체 주소 범위**를 확인합니다.
4. 공유기에서 기기에 할당할 주소는 **호스트 주소 범위**를 참고하되, 게이트웨이와 예약 주소를 추가로 제외합니다.
5. **CIDR 복사**로 정규화된 결과를 복사합니다. 자동 복사가 안 되는 브라우저에서는 결과를 직접 선택해 복사합니다.

예를 들어 `192.168.1.130/26`의 계산 결과는 다음과 같습니다. 입력한 IP가 네트워크의 시작 주소일 필요는 없습니다.

| 항목 | 결과 |
| :--- | :--- |
| 정규화된 CIDR | `192.168.1.128/26` |
| 전체 주소 범위 | `192.168.1.128` ~ `192.168.1.191` |
| 서브넷 마스크 | `255.255.255.192` |
| 와일드카드 마스크 | `0.0.0.63` |
| 네트워크 주소 | `192.168.1.128` |
| 브로드캐스트 주소 | `192.168.1.191` |
| 일반 LAN 호스트 범위 | `192.168.1.129` ~ `192.168.1.190` |
| 전체 주소 / 이론상 호스트 수 | 64개 / 62개 |

이 도구는 IPv4만 지원합니다. 계산은 브라우저의 JavaScript로 실행하며 입력값을 계산용 서버나 외부 API로 전송하지 않습니다. IP의 실제 할당 상태나 접속 가능 여부를 조회하는 도구는 아닙니다.

## CIDR이란? /24는 무엇을 뜻할까?

**CIDR(Classless Inter-Domain Routing)은 고정된 IP 클래스 대신 프리픽스로 주소 블록을 표현하고 라우팅에 사용하는 방식입니다.** `192.168.1.0/24`의 `/24`는 IPv4의 32비트 중 앞의 24비트가 네트워크 부분이라는 뜻입니다. 나머지 8비트가 달라질 수 있으므로 이 블록에는 `2^8 = 256`개의 주소가 들어갑니다. [RFC 4632의 프리픽스 표기 설명](https://www.rfc-editor.org/rfc/rfc4632.html#section-3.1)

프리픽스 숫자가 커질수록 주소 범위는 작아집니다. `/24`에서 `/26`으로 바꾸면 고정되는 비트가 2개 늘어나고, 블록 크기는 256개에서 64개로 줄어듭니다.

| 프리픽스 | 서브넷 마스크 | 블록의 전체 주소 수 | 일반 LAN의 이론상 호스트 수 |
| :--- | :--- | ---: | ---: |
| `/8` | `255.0.0.0` | 16,777,216 | 16,777,214 |
| `/16` | `255.255.0.0` | 65,536 | 65,534 |
| `/24` | `255.255.255.0` | 256 | 254 |
| `/25` | `255.255.255.128` | 128 | 126 |
| `/26` | `255.255.255.192` | 64 | 62 |
| `/30` | `255.255.255.252` | 4 | 2 |
| `/31` | `255.255.255.254` | 2 | 2 — 지원되는 P2P 링크 기준 |
| `/32` | `255.255.255.255` | 1 | 1 — 단일 주소 |

주소 수는 비트 수로 계산한 값입니다. 큰 블록이 특수 용도 대역을 포함할 수 있으므로, 위 수치를 실제 배정 가능한 장비 수로 해석하면 안 됩니다.

### /0·/31·/32는 별도로 이해하기

- **`0.0.0.0/0`**: IPv4 전체인 `0.0.0.0` ~ `255.255.255.255`를 나타냅니다. 라우팅에서는 기본 경로를 표현하며, 방화벽의 출발지 조건으로 사용하면 IPv4 전체에 매칭됩니다. IPv6 전체는 별도의 `::/0`입니다.
- **`/31`**: 두 주소를 포함합니다. RFC 3021 방식의 점대점(Point-to-Point, P2P) 링크에서는 두 주소 모두를 종단 주소로 사용하므로 일반적인 ‘네트워크·브로드캐스트 2개 제외’를 적용하지 않습니다. 장비 지원이 필요합니다. [RFC 3021](https://www.rfc-editor.org/rfc/rfc3021.html)
- **`/32`**: IPv4 주소 하나를 나타냅니다. 특정 호스트만 지정하는 경로나 방화벽 조건에 사용합니다. [RFC 4632의 주소 블록 크기 표](https://www.rfc-editor.org/rfc/rfc4632.html#section-3.1)

## 서브넷이란? 서브넷 마스크와 무엇이 다를까?

**서브넷(subnet)은 IP 네트워크를 논리적으로 나눈 하위 네트워크입니다.** 서브넷 마스크는 IP 주소에서 네트워크 부분과 호스트 부분을 구분하는 값입니다. CIDR의 `/24`와 마스크 `255.255.255.0`은 같은 네트워크 비트 길이를 표현합니다. 서브넷을 나누는 개념과 주소 마스크의 배경은 [RFC 950](https://www.rfc-editor.org/rfc/rfc950.html)에 설명되어 있습니다.

예를 들어 `192.168.1.0/24`를 `/26`으로 나누면 아래 네 블록이 됩니다. 각 블록은 64개 주소를 포함하고 경계가 64 단위로 맞춰집니다.

| 서브넷 | 전체 범위 | 일반 LAN 호스트 범위 |
| :--- | :--- | :--- |
| `192.168.1.0/26` | `.0` ~ `.63` | `.1` ~ `.62` |
| `192.168.1.64/26` | `.64` ~ `.127` | `.65` ~ `.126` |
| `192.168.1.128/26` | `.128` ~ `.191` | `.129` ~ `.190` |
| `192.168.1.192/26` | `.192` ~ `.255` | `.193` ~ `.254` |

표의 `.128` 등은 앞의 `192.168.1`을 생략한 표기입니다. 서브넷을 실제로 분리하려면 주소 계획뿐 아니라 공유기·라우터 인터페이스, VLAN과 라우팅, 방화벽 정책도 환경에 맞게 설정해야 합니다. 계산기에서 범위를 나누는 것만으로 네트워크가 분리되지는 않습니다.

## IP 클래스 A·B·C·D·E는 무엇일까?

**IP 클래스는 IPv4 주소의 앞쪽 비트로 용도와 기본 네트워크 크기를 구분하던 역사적 분류입니다.** 오늘날 CIDR 계산에서는 클래스보다 명시한 프리픽스가 우선합니다. `10.1.2.3/24`도 유효하며, 앞자리가 클래스 A 영역이라고 해서 반드시 `/8`로 계산하지 않습니다. [RFC 791의 주소 형식](https://www.rfc-editor.org/rfc/rfc791.html#section-3.2), [RFC 4632의 클래스 없는 주소 체계](https://www.rfc-editor.org/rfc/rfc4632.html#section-3)

| 클래스 | 첫 옥텟 / 전체 분류 범위 | 역사적 기본 마스크 | 의미 |
| :--- | :--- | :--- | :--- |
| A | 0~127 / `0.0.0.0` ~ `127.255.255.255` | `/8` · `255.0.0.0` | 과거 큰 유니캐스트 네트워크 분류. `0/8`, `127/8`은 특수 용도 |
| B | 128~191 / `128.0.0.0` ~ `191.255.255.255` | `/16` · `255.255.0.0` | 과거 중간 크기 유니캐스트 네트워크 분류 |
| C | 192~223 / `192.0.0.0` ~ `223.255.255.255` | `/24` · `255.255.255.0` | 과거 작은 유니캐스트 네트워크 분류 |
| D | 224~239 / `224.0.0.0` ~ `239.255.255.255` | 일반 호스트용 기본 마스크 없음 | 멀티캐스트 주소 영역 |
| E | 240~255 / `240.0.0.0` ~ `255.255.255.255` | 일반 호스트용 기본 마스크 없음 | 예약 영역. `255.255.255.255`는 제한 브로드캐스트 |

옥텟(octet)은 8비트 단위입니다. IPv4의 점으로 구분한 숫자 하나가 한 옥텟이고 값은 0~255입니다. 위 범위는 **분류 범위**이지 전부 일반 장비에 배정할 수 있다는 뜻은 아닙니다. A 클래스의 일반 네트워크 첫 숫자를 1~126으로 설명하는 자료는 특수한 `0/8`과 루프백 `127/8`을 제외한 것입니다. D·E 영역과 예외는 [IANA IPv4 주소 공간](https://www.iana.org/assignments/ipv4-address-space/)과 [특수 용도 주소 등록부](https://www.iana.org/assignments/iana-ipv4-special-registry/)에서 확인할 수 있습니다.

### 클래스와 사설 IP는 다른 기준이다

**사설 IP는 A·B·C 클래스 전체가 아니라 RFC 1918에서 정한 세 주소 블록입니다.** 따라서 “클래스 B니까 사설 IP” 또는 “192로 시작하니까 사설 IP”라고 판단하면 안 됩니다. [RFC 1918](https://www.rfc-editor.org/rfc/rfc1918.html#section-3)

| 사설 대역 | 전체 범위 | 주의할 점 |
| :--- | :--- | :--- |
| `10.0.0.0/8` | `10.0.0.0` ~ `10.255.255.255` | 내부에서 `/16`, `/24` 등으로 나누어 사용할 수 있음 |
| `172.16.0.0/12` | `172.16.0.0` ~ `172.31.255.255` | `172`로 시작하는 모든 주소가 사설은 아님 |
| `192.168.0.0/16` | `192.168.0.0` ~ `192.168.255.255` | `192` 전체가 아니라 `192.168` 대역 |

계산기의 ‘IP 용도’는 입력 주소 하나의 주요 대역만 분류합니다. 입력 IP가 사설이어도 선택한 CIDR 전체가 사설인 것은 아닙니다. 예를 들어 `192.168.1.10/8`의 결과인 `192.0.0.0/8`은 사설 대역 밖까지 포함합니다. 사설이 아닌 주소에도 문서 예제용·예약 주소 등이 있어, ‘사설 IP 아님’이 곧 실제 공인 IP 할당을 뜻하지는 않습니다.

## CIDR 계산은 언제 사용할까?

### 방화벽에서 허용·차단 범위를 입력할 때

**CIDR을 요구하는 입력란에서는 허용하려는 IP가 몇 개나 포함되는지 확인하는 데 사용합니다.** 다음은 주소 조건을 설명하기 위한 예시이며 실제 장비에 적용한 설정은 아닙니다.

| 목적 | CIDR 입력 예시 | 매칭되는 주소 |
| :--- | :--- | :--- |
| 특정 내부 PC 한 대 | `192.168.1.10/32` | `192.168.1.10` 하나 |
| 내부망 한 블록 | `192.168.1.0/24` | `192.168.1.0` ~ `192.168.1.255` |
| 더 작은 내부망 | `192.168.1.128/26` | `192.168.1.128` ~ `192.168.1.191` |
| IPv4 전체 | `0.0.0.0/0` | 모든 IPv4 주소 |

방화벽의 CIDR 매칭은 호스트 할당 수와 다릅니다. `/24` 조건은 주소 블록 전체에 매칭되며, 일반 LAN의 호스트 주소 수인 254개로 범위가 줄어들지 않습니다. 클라우드의 구체적인 예로 AWS 보안 그룹은 출발지·목적지에 IPv4 CIDR을 지정하고, 단일 IPv4는 `/32`로 표현합니다. [AWS 보안 그룹 규칙 공식 문서](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html)

규칙을 적용하기 전에는 출발지·목적지 방향, 포트와 프로토콜, 허용·차단 동작 및 규칙 순서를 확인합니다. 특히 관리 화면의 접근 규칙을 수정한다면 기존 설정을 기록하고 복구 가능한 접속 경로를 확보합니다. `0.0.0.0/0` 허용은 의도한 서비스만 대상으로 사용해야 합니다.

인터넷에서 집의 NAS에 접속하도록 허용할 때는 외부에서 보이는 출발지 공인 IP와 내부 PC의 사설 IP를 혼동하지 않아야 합니다. 현재 연결의 외부 주소는 [내 IP 주소 확인 도구](/lab-log/check-my-ip/)로 확인할 수 있습니다. 지역별 정책을 설정하는 상황은 [시놀로지 NAS 방화벽 설정 글](/lab-log/synology-region-firewall/)도 참고할 수 있습니다.

### 공유기의 LAN·DHCP 범위를 정할 때

**서브넷은 LAN의 주소 경계를 정하고, DHCP 범위는 그 안에서 자동 배정할 일부 주소를 정합니다.** 두 범위가 항상 같은 것은 아닙니다.

예를 들어 공유기 LAN을 `192.168.10.1/24`로 설정한다고 가정하면 네트워크는 `192.168.10.0/24`, 일반 호스트 범위는 `192.168.10.1` ~ `192.168.10.254`입니다. 공유기가 `.1`을 사용하므로 다른 기기에 같은 주소를 배정하면 안 됩니다. DHCP 풀을 `.100` ~ `.199`로 정하면 양 끝을 포함해 100개 주소를 자동 배정 대상으로 잡는 예가 됩니다. 실제 입력 형식과 예약 처리 방식은 공유기 문서를 확인하세요.

### VPN·VPC·정적 경로의 대역을 정할 때

CIDR 계산은 서로 다른 네트워크의 범위가 겹치는지 검토할 때도 도움이 됩니다. 예를 들어 집과 VPN 반대편에서 모두 `192.168.1.0/24`를 사용한다면, 같은 목적지 주소가 어느 쪽인지 라우팅 충돌을 검토해야 합니다. 먼저 양쪽 대역의 시작·끝을 확인하고 주소 계획과 경로를 결정합니다. 이 계산기는 입력한 블록 하나를 계산하며, 여러 블록의 중복 검사나 라우팅 설정을 자동 수행하지는 않습니다.

## 자주 헷갈리는 점

### 192.168.1.10/24를 입력했는데 왜 192.168.1.0/24로 바뀌나요?

네트워크 CIDR은 블록의 시작 주소로 정규화하기 때문입니다. `.10`은 이 블록 안의 호스트 주소이며, 해당 `/24` 블록의 시작은 `.0`입니다. 방화벽이나 API에 따라 호스트 비트가 있는 CIDR을 정규화하거나 거절할 수 있으므로 계산 결과의 네트워크 CIDR을 확인하세요.

### /24의 254개 호스트는 모두 DHCP로 배정할 수 있나요?

반드시 그렇지는 않습니다. 254개는 일반 LAN에서 네트워크·브로드캐스트 주소를 뺀 수입니다. 공유기 주소, 수동 고정 IP와 예약 주소 등을 제외하면 실제 DHCP 풀은 더 작아질 수 있습니다.

### 192.168.1.10부터 192.168.1.20까지를 CIDR 하나로 쓸 수 있나요?

정확히 그 범위만 CIDR 하나로 표현할 수는 없습니다. 하나의 CIDR은 2의 거듭제곱 크기이며 시작 경계도 맞아야 합니다. 이 예는 11개 주소이므로 여러 CIDR로 분할하거나 장비가 지원하는 시작·끝 범위 입력을 사용해야 합니다. 이 도구는 임의 범위를 여러 CIDR로 변환하는 기능은 제공하지 않습니다.

