CSE/Network

[혼공네트] Ch03. 네트워크 계층

Opal1031 2026. 4. 14. 11:43
※ 본 포스트는 [강민철, 『혼자 공부하는 네트워크』, 한빛미디어] 복습을 위해 작성된 글입니다.

※ 비영리적인 순수한 학습 기록용이며, 원저작물의 권리는 저자 및 출판사에 있습니다.

※ 저작권 문제가 있을 경우, 즉시 수정 또는 삭제하겠습니다.

1️⃣ LAN을 넘어서는 네트워크 계층

01. 데이터 링크 계층의 한계

  • L1, L2 만으로는 다른 네트워크 까지의 도달 경로 파악이 어려움
    • 라우팅(Routing)
      패킷이 이동할 최적의 경로를 결정하는 것
      • 라우터가 라우팅을 수행하는 대표적인 장비
  • MAC 주소 만으로는 모든 네트워크에 속한 호스트의 위치를 특정하기 어려움
    • IP 주소
      컴퓨터 네트워크에 연결된 장치에 할당된 숫자 식별자

02. 인터넷 프로토콜

  • IP 주소 지정(IP Addressing)
    IP 주소를 바탕으로 송수신 대상을 지정하는 것
  • IP 단편화(IP Fragmentation)
    전송하고자 하는 패킷의 크기가 MTU보다 클 경우, 복수의 패킷으로 나누는 것
    • MTU(Maximum Transmission Unit)
      한 번에 전송 가능한 IP 패킷의 최대 크기
      • 나누어진 패킷은 수신지에 도착하면 재조합됨

03. IPv4

  • 식별자
    패킷에 할당된 번호

    • 단편화 시, 재조합을 위해 사용
    • 어떤 메시지에서 쪼개졌는지 확인
  • 플래그
    세 개의 비트(O + DF + MF)로 구성된 필드

    종류 방식
    O 항상 0으로 고정
    DF(Don't Fragment) bit 1 : 단편화 수행 하지 않음
    Mf(More Fragment) bit 1 : 쪼개진 패킷이 아직 더 있음
  • 단편화 오프셋
    패킷이 단편화 되기 전, 패킷의 초기 데이터에서 몇 번째로 떨어진 패킷인지 나타냄

    • Rx가 패킷들을 순서대로 재조합
  • TTL(Time To Live)
    패킷의 수명

    • 무의미한 패킷이 네트워크 상에 지속적으로 남아있는 것을 방지
    • 홉 마다 1씩 감소 -> 0이 되면 폐기
  • 프로토콜
    상위 계층 프로토콜이 무엇인지 나타내는 필드

    • TCP : 6번 / UDP : 17번
  • 송/수신지 IP 주소
    송/수신지의 IPv4 주소

04. IPv6

  • 다음 헤더
    상위 계층의 프로토콜 or 확장 헤더
    • IPv6의 기본 헤더는 IPv4에 비해 간소화 되어있음
    • 추가 정보가 필요할 때 '확장 헤더'를 가질 수 있음
  • 홉 제한
    IPv4의 TTL 필드와 비슷한 역학
  • 송/수신지 IP 주소
    송/수신지의 IPv6 주소

05. ARP

  • ARP(Address Resolution Protocol)
    상대 호스트의 IP 주소는 알지만 MAC 주소는 알지 못할 때 알아내는 프로토콜

    종류 방식
    ARP 요청 브로드 캐스트 메시지
    ARP 응답 Rx가 자신의 MAC 주소를 담아 유니캐스트 메시지
    ARP 테이블 갱신 Tx는 ARP 테이블 생신 및 통신

※ <좀 더 알아보기> - IP 단편화를 피하는 방법

  • IP 단편화는 되도록 하지 않는 것이 좋음

  • 대역폭 낭비 및 성능 저하가 발생함

    종류 역할
    경로 MTU IP 단편화 없이 주고 받을 수 있는 최대 크기
    경로 MTU 발견 경로 MTU를 구하고 해당 크기 만큼만 송수신하여 IP 단편화를 회피하는 기술

2️⃣ IP 주소

01. 네트워크 주소와 호스트 주소

  • IP 주소
    하나의 IP 주소는 네트워크 주소와 호스트 주소로 이루어짐

    종류 방식
    네트워크 주소 네트워크 ID, 네트워크 식별자
    호스트 주소 호스트 ID, 호스트 식별자

02. 클래스풀 주소 체계

  • 클래스풀 주소 체계
    클래스를 기반으로 IP 주소를 관리하는 주소 체계

    • 클래스
      네트워크 크기에 따라 IP 주소를 분류하는 기준
    종류 구조
    A 클래스 네트워크 1옥텟 + 호스트 3옥텟
    B 클래스 네트워크 2옥텟 + 호스트 2옥텟
    C 클래스 네트워크 3옥텟 + 호스트 1옥텟
    • D, E 클래스는 특수한 목적을 위해 예약되어 있음

03. 클래스리스 주소 체계

  • 클래스리스 주소 체계
    클래스에 구애받지 않고 네트워크 영역을 나누어서 호스트에게 IP 주소 공간을 할당하는 방식
    • 서브넷 마스크
      IP 주소 상에서 네트워크 주소는 1, 호스트 주소는 0으로 표기한 비트열
    • 서브네팅
      서브넷 마스크를 이용해 클래스를 원하는 크기로 더 잘개 쪼개어 사용
    • CIDR 표기법
      IP 주소 / 서브넷 마스크 상의 1의 개수로 표기하는 방식

04. 공인 IP 주소와 사설 IP 주소

  • 공인 IP 주소
    전 세계에서 고유한 IP 주소
  • 사설 IP 주소
    사설 네트워크에서 사용하기 위한 IP 주소
    • 라우터에 의해 사설 IP 주소 할당됨
  • NAT(Network Address Translation)
    사설 IP 주소를 사용하는 호스트가 외부 네트워크와 통신하기 위해 IP 주소를 변환하는 기술

05. 정적 IP 주소와 동적 IP 주소

  • 정적 할당
    호스트에 직접 수작업으로 IP 주소를 부여하는 방식
  • 동적 할당
    호스트에 IP 주소가 동적으로 할당되는 방식
    • DHCP(Dynamic Host Configure Protocol)
      IP 주소를 할당받고자 하는 클라이언트와 해당 호스트에게 IP 주소를 제공하는 DHCP 서버 간에 메시지를 주고 받음
      • DHCP로 할당받은 IP 주소는 임대 기간이 정해져있음
      • Discover -> Offer -> Request -> ACK
      • 임대 갱신: IP 주소의 임대 기간이 끝나기 전에 자동으로 연장 시도

※ <좀 더 알아보기> - 예약 주소

  • 루프백 주소(Loopvack Address)
    자기 자신을 가리키는 특별한 주소
    • 로컬호스트(Localhost)라고도 부름

3️⃣ 라우팅

01. 라우터

  • 라우터
    패킷이 이동할 최적의 경로를 설정한 뒤 해당 경로로 패킷을 이동시키는 것

02. 라우팅 테이블

  • 라우팅 테이블
    특정 수신지까지 도달하기 위한 정보를 명시한 표

    종류 역할
    수신지 IP 주소 / 서브넷 마스크 최종적으로 패킷을 전달할 대상
    다음 홉 / 게이트웨이 거쳐야 할 호스트의 IP 주소나 인터페이스
    네트워크 인터페이스 패킷을 내보낼 통로
    메트릭 해당 경로를 이동하는데 드는 비용
  • 디폴트 라우트
    라우팅 테이블에 없는 경로로 패킷을 전송할 경우, 기본 설정된 경로로 전송

03. 정적 라우팅과 동적 라우팅

  • 정적 라우팅
    사용자가 수동으로 직접 채워넣은 라우팅 테이블의 항복을 토대로 라우팅 되는 방식
  • 동적 라우팅
    자동으로 라우팅 테이블 항목을 만들고, 이를 이용하여 라우팅 하는 방식
    • 네트워크 경로 상에 문제가 발생했을 때 우회 가능
    • 모든 라우터는 최적의 경로를 라우팅 테이블에 저장하려함

04. 라우팅 프로토콜

  • IGP(Interior Gateway Protocol)
    라우팅 프로토콜이 AS 내부에서 수행됨

    • RIP(Routing Information Protocol)
      거리 벡터 기반의 라우팅 프로토콜
      • 패킷이 경유한 라우터 / 홉의 수 -> 메트릭 값도 작아짐
    • OSPF(Open Shortest Path First)
      링크 상태의 라우팅 프로토콜
      • 현재 네트워크 상태를 그래프의 형태로 링크 상태 데이터베이스에 저장
      • 네트워크 구성이 변경될 때 라우팅 테이블 갱신
      • AS를 에어리어 단위로 나누어 링크 상태 공유
        • ABR(Area Border Router): 에어리어 간의 연결을 담당
  • EGP(Exterior Gateway Protocol)
    라우팅 프로토콜이 AS 외부에서 수행됨

    • BGP(Border Gateway Protocol)
      AS 간의 통신이 가능한 프로토콜이며, AS 내 라우터 간에도 가능
      • 피어링(Peering)
        BGP 간에 메시지를 주고 받기 위한 피어 관계
    • BGP의 속성
    속성 의미
    AS-PATH 속성 메시지가 수신지에 이르는 과정에서 통과하는 AS들의 목록
    NEXT-HOP 속성 다음 홉 / 라우터의 IP 주소를 나타냄
    LOCAL-PREF 속성 AS 외부 경로에 있어 AS 내부에서 어떤 경로를 선호할지에 대한 척도를 나타내는 속성

📚 회고

이번 3장에서는 네트워크 계층(L3) 을 다뤘다. '데이터 통신' 과목에서 라우터와 관련된 프로토콜을 간단히 살펴본 적은 있었지만, 이번에는 보다 깊이 있는 학습을 진행했다. 사실상 이 부분부터가 새로운 내용의 시작이라고 할 수 있다. 일상생활에서도 자주 접하는 IP 주소, 라우터 등의 개념을 다시 잡으며, 그동안 잘못 이해하고 있던 부분들도 바로잡을 수 있었다. 그만큼 중요한 파트였다.

앞으로 이어질 전송 계층(L4) 학습에서도 L3는 핵심적인 역할을 할 것이다. 이사로 인해 3장을 공부하는 데 시간이 꽤 오래 걸렸으니, 4장으로 넘어가기 전에 3장을 다시 복습하며 놓친 부분과 부족한 이해를 보완해야겠다.