Skip to content

IP와 라우팅

IPv4 헤더 구조

IP 패킷의 헤더는 네트워크 통신의 핵심 정보를 담고 있다. 특별한 이유가 없으면 IP 헤더의 크기는 20 bytes이다.

필드크기설명
Version4bitIP 버전 (IPv4 = 4)
IHL4bit헤더 길이 (단위: 4bytes, 보통 5 = 20bytes)
Total Length16bit패킷 전체 크기 (최대 65,535 bytes)
TTL8bit생존 시간 (라우터 통과 시마다 1 감소)
Protocol8bit페이로드 해석 기준 (TCP=6, UDP=17, ICMP=1)
Source IP32bit출발지 IP 주소
Destination IP32bit목적지 IP 주소

TTL(Time to Live): 패킷의 수명

TTL은 세포의 **텔로미어(Telomere)**와 같다. 패킷이 라우터를 하나 지날 때마다(1 Hop) TTL 값이 1씩 감소하며, 0이 되면 패킷이 폐기된다.

TTL이 존재하는 이유는 좀비 패킷 방지이다. 목적지를 찾지 못한 패킷이 영원히 네트워크를 돌아다니면 네트워크 전체가 마비된다.

  • Windows: 기본 TTL = 128
  • Linux: 기본 TTL = 64
  • 최대값: 255 (8bit)

서브넷(Subnet)과 CIDR 표기

IP 주소는 Network IDHost ID로 나뉘며, 이를 구분하는 기준이 Subnet Mask이다.

CIDR(Classless Inter-Domain Routing) 표기

과거에는 IP 주소를 A/B/C 클래스로 나누었지만, 현재는 CIDR 표기를 주로 사용한다.

192.168.0.12/24

이것은 "왼쪽부터 24비트가 Network ID"라는 뜻이다. 이 표기가 Subnet Mask 255.255.255.0과 같은 의미이다.

표기 방식예시
전통적IP: 192.168.0.12, Subnet Mask: 255.255.255.0
CIDR192.168.0.12/24

CIDR에서 슬래시 뒤의 숫자가 Network ID의 비트 수이다. /24이면 앞 24비트가 네트워크, 뒤 8비트가 호스트이다.

사용 불가능한 IP 주소

/24 네트워크(8비트 호스트)에서 쓸 수 있는 호스트 IP 주소는 254개 (256 - 2)이다.

주소용도호스트 할당
192.168.0.0네트워크 주소불가
192.168.0.255브로드캐스트 주소불가
192.168.0.1게이트웨이 (관례)장비용

라우팅(Routing)과 라우팅 테이블

인터넷을 고속도로, 라우터를 교차로, 패킷을 자동차에 비유하면 라우팅을 쉽게 이해할 수 있다.

각 라우터는 **라우팅 테이블(Routing Table)**을 가지고 있다. 라우팅 테이블은 "목적지가 어디면 어느 방향으로 보내라"는 이정표 역할을 한다.

bash
# Windows에서 라우팅 테이블 확인
route print

# Linux에서 라우팅 테이블 확인
ip route
# 또는
route -n

메트릭(Metric): 경로의 비용

같은 목적지로 가는 경로가 여러 개 있을 때, 비용이 낮은 경로를 선택한다. 이 비용을 Metric이라 한다.

Metric 값은 낮을수록 좋다. 교차로(라우터)에서 이정표(라우팅 테이블)를 보고 비용(Metric)이 낮은 경로를 선택한다.

게이트웨이(Gateway)의 역할

게이트웨이는 내부 네트워크(LAN)와 다른 네트워크를 연결하는 관문이다. 같은 서브넷 밖으로 나가는 패킷은 대개 기본 게이트웨이(default gateway)로 먼저 전달된다.

PC에서 네이버(3.3.3.3)에 접속할 때, 패킷의 목적지 IP는 3.3.3.3이지만, 목적지 MAC게이트웨이의 MAC 주소이다. 게이트웨이가 패킷의 IP 헤더를 보고 인터넷으로 포워딩해 준다.

단편화(Fragmentation)

MTU가 1500인 패킷이 MTU 1400인 라우터를 만나면, 패킷을 두 개로 쪼개야 한다. 이것이 단편화이다.

단편화는 성능을 떨어뜨린다. 가급적 발생하지 않도록 처음부터 경로의 최소 MTU에 맞추어 전송하는 것이 바람직하다. VPN(IPsec) 터널링이 적용되면 MTU가 줄어들어 단편화가 발생하는 경우가 있다.

핵심 정리

  1. IPv4 헤더의 핵심 필드: Version, TTL, Protocol, Source/Destination IP
  2. TTL은 라우터(Hop)를 지날 때마다 1 감소 -- 0이 되면 패킷 폐기
  3. CIDR 표기: 192.168.0.0/24 = 앞 24비트가 Network ID
  4. 라우터는 **라우팅 테이블(이정표)**을 보고 경로를 선택하며, **Metric(비용)**이 낮은 경로를 우선한다
  5. 게이트웨이는 내부 → 외부 네트워크의 관문이다
  6. 단편화는 MTU 불일치 시 발생하며, 성능 저하의 원인이 된다