내일 IP 주소 나누는 작업을 할 예정이라면, 서브넷팅(Subnetting)과 이진수 변환을 이해하고 있어야 할 거야. 특히, IPv4 주소, 서브넷 마스크, CIDR 표기법, 이진수 변환 등이 중요해.


사전 지식 (IP 주소 나누기 전에 알아야 할 개념)

1️⃣ IP 주소와 바이트 (IPv4 기준)

  • IPv4 주소는 32비트(4바이트)로 구성됨.
  • 각 바이트(옥텟)는 0~255 사이의 10진수로 표현됨.
  • 예) 192.168.1.10
    → 4개의 옥텟(8비트씩)으로 구성됨
    2진수 표현: 11000000.10101000.00000001.00001010

10진수 2진수

192 11000000
168 10101000
1 00000001
10 00001010

2️⃣ 이진수 변환 (10진수 ↔ 2진수)

서브넷을 계산할 때 IP 주소를 이진수로 변환하는 과정이 필수적이야.

10진수 → 2진수 변환 (예: 192 → 11000000)

192을 2로 계속 나누면서 나머지를 기록하면 됨.

나눗셈 몫 나머지

192 ÷ 2 96 0
96 ÷ 2 48 0
48 ÷ 2 24 0
24 ÷ 2 12 0
12 ÷ 2 6 0
6 ÷ 2 3 0
3 ÷ 2 1 1
1 ÷ 2 0 1

위에서 아래로 읽으면 11000000 (192의 2진수 표현)

2진수 → 10진수 변환 (예: 11000000 → 192)

각 자리수에 2의 거듭제곱을 곱해서 더하면 됨.

1×2^7 + 1×2^6 + 0×2^5 + 0×2^4 + 0×2^3 + 0×2^2 + 0×2^1 + 0×2^0
= 128 + 64 + 0 + 0 + 0 + 0 + 0 + 0 = 192

3️⃣ 서브넷 마스크 (Subnet Mask)

  • IP 주소를 네트워크와 호스트 부분으로 나누는 역할
  • 일반적인 서브넷 마스크 예제:
    • 255.255.255.0 → /24 (CIDR 표기법)
    • 255.255.0.0 → /16
    • 255.0.0.0 → /8

서브넷 마스크를 2진수로 변환

서브넷 마스크 2진수 표현 CIDR

255.255.255.0 11111111.11111111.11111111.00000000 /24
255.255.0.0 11111111.11111111.00000000.00000000 /16
255.0.0.0 11111111.00000000.00000000.00000000 /8
  • 1이 있는 부분이 네트워크 영역, 0이 있는 부분이 호스트 영역
  • /24이면 앞 24비트(네트워크) + 뒤 8비트(호스트)
  • **서브넷을 나눌 때 "네트워크 부분을 늘리고, 호스트 부분을 줄이는 방식"**으로 계산함.

4️⃣ IP 주소를 서브넷으로 나누기

예를 들어, 192.168.1.0/24 네트워크를 두 개의 서브넷으로 나누려면?

  • 기본 네트워크: 192.168.1.0/24
  • 2개의 서브넷으로 나누려면 1비트 추가 사용 → /25
  • 192.168.1.0/25 (255.255.255.128)
  • 192.168.1.128/25 (255.255.255.128)

서브넷 네트워크 주소 첫 번째 IP 마지막 IP 브로드캐스트 주소

서브넷 1 192.168.1.0/25 192.168.1.1 192.168.1.126 192.168.1.127
서브넷 2 192.168.1.128/25 192.168.1.129 192.168.1.254 192.168.1.255

🔥 결론 (내일 준비해야 할 것)

  1. IP 주소의 기본 개념 (IPv4 = 32비트, 4바이트)
  2. 이진수 변환 (10진수 ↔ 2진수)
  3. 서브넷 마스크와 CIDR 표기법 이해 (/24, /16, /8 등)
  4. IP 주소를 서브넷으로 나누는 방법 (비트 확장 개념 이해)

+ Recent posts