5장. 네트워크 계층: 목적지에 데이터 전달하기
📌 네트워크 계층의 역할
- 네트워크 계층: 네트워크 간의 통신을 가능하게 하는 것
- 네트워크 계층은 다른 네트워크와 통신하기 위한 경로 설정을 위해 라우터를 통한 라우팅을 하며 패킷 전송을 담당
- 서로 다른 네트워크 간에 통신을 하려면 라우터가 필요
- 라우터는 데이터의 목적지가 정해지면 해당 목적지까지 어떤 경로로 가는 것이 좋은지 알려줌
- 랜 안에서는 MAC 주소만으로 통신할 수 있지만 네트워크 간에 통신을 하려면 IP 주소가 필요
- 라우팅: 경로를 선택하고 목적지 IP 주소까지 어떻게 데이터를 전달할 지 결정하는 것
- 라우터의 라우팅 테이블에는 경로 정보가 등록되어 있음
- IP: 네트워크 계층의 대표적인 프로토콜
- IP 주소는 어떤 네트워크의 어떤 컴퓨터인지 구분할 수 있도록 하는 주소
- 네트워크 계층에서는 캡슐화할 때 IP 헤더를 추가
📌 IP 주소의 구조
- 데이터를 다른 네트워크로 전달하려면 IP 주소가 필요
- IP 주소는 인터넷 서비스 공급자(ISP)에게 할당 받음
- IPv4의 IP 주소는 32비트, IPv6의 IP 주소는 128비트로 구성
- IP 주소의 종류: 공인 IP 주소, 사설 IP 주소
- IP 주소는 네트워크 ID와 호스트 ID로 나뉨
📌 IP 주소의 클래스 구조
- IP 주소는 네트워크 규모에 따라 A ~ E 클래스로 나뉨
- IP 주소는 A~E 클래스로 나누어지며 일반적으로는 A~C 클래스를 사용
- IP 주소의 클래스별 호스트 수는 A 클래스가 1677만 7214대, B 클래스가 6만 5334대, C 클래스가 254대
📌 네트워크 주소와 브로드캐스트 주소의 구조
- 컴퓨터에 할당할 수 없는 IP 주소
- 네트워크 주소: 호스트 ID가 10진수로 0이고, 2진수로 00000000인 주소
- 전체 네트워크에서 작은 네트워크를 식별하는 데 사용
- 호스트 ID가 10진수로 0이면 그 네트워크 전체를 대표하는 주소
- 브로드캐스트 주소: 호스트 ID가 10진수로 255고, 2진수로 11111111인 주소
- 네트워크에 있는 컴퓨터나 장비 모두에게 한 번에 데이터를 전송하는 데 사용하는 전용 IP 주소
- 브로드캐스트 주소로 데이터를 전송하면 네트워크 안에 있는 모든 컴퓨터가 데이터를 받게 됨
- 멀티캐스트: 한 컴퓨터(호스트)에서 패킷을 여러 컴퓨터로 동시에 전송하는 것
- 브로드캐스트: IP 네트워크에 있는 모든 컴퓨터(호스트)로 데이터를 전송하는 방식
📌 서브넷의 구조
- 서브넷팅: 네트워크를 분할하는 것
- 서브넷: 분할된 네트워크
- 서브넷팅되면 구성이 ‘네트워크 ID + 호스트 ID’에서 ‘네트워크 ID + 서브넷 ID + 호스트 ID’로 변경
- 서브넷 ID: IP 주소의 네트워크 부분을 늘리기 위해 서브넷 마스크로 사용되는 비트로 서브넷 비트라고도 함.
- 서브넷 마스크는 네트워크 주소와 호스트 주소를 식별하는 값
- 클래스별로 서브넷 마스크는 A 클래스가 255.0.0.0, B 클래스가 255.255.0.0, C 클래스가 255.255.255.0
- 프리픽스 표기법은 서브넷 마스크를 슬래시(/비트)로 나타낸다.
- 예를 들어 255.255.255.0을 프리픽스 표기법으로 나타내면 /24이다.
📌 라우터의 구조
- 서로 다른 네트워크와 통신하려면 라우터가 필요
- 라우터는 네트워크를 분할할 수 있지만 스위치(레이어 2)와 허브는 분리할 수 없다.
- 컴퓨터에서 다른 네트워크로 데이터를 전송하려면 기본 게이트웨이를 설정해야 한다.
- 라우팅은 경로 정보를 기반으로 현재의 네트워크에서 다른 네트워크로 최적의 경로를 통해 데이터를 전송하는 방식
- 라우팅 테이블: 경로 정보가 등록되어 있는 테이블
- 라우팅 프로토콜: 라우터 간에 라우팅 정보를 서로 교환하기 위한 프로토콜