카테고리 없음

#51. LAN을 넘어서는 네트워크 계층

story0689 2026. 5. 5. 15:28
 

데이터링크 계층의 한계로 등장한 네트워크 계층의 IP, IP 의 두가지 기능과 종류,

IP주소로 MAC 주소 알아내기

 

 

 

 


목차(T.O.C)

1. 데이터 링크 계층의 한계
1-1. 다른 네트워크까지의 도달경로를 파악하기 어려움
1-2. 모든 네트워크 계층에 속한 호스트의 위치를 MAC 주소로 특정하기 어려움

 

2. 네트워크 계층의 핵심, 인터넷 프로토콜(IP)
2-1. IP의 공식적인 두 기능
2-2. IPv4의 핵심필드
2-3. IPv6의 핵심필드

 

3. IP 주소로 MAC 주소 알아내기
3-1. ARP 
3-2. ARP 의 동작

3-3. 만약, 다른 네트워크에 속해 있다면?

 

 

 

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

지금까지 언급한(물리계층, 데이터 링크 계층)의 네트워크 범위는 일반적으로 LAN으로 한정

- LAN을 넘어 다른 네트워크와 통신하기 위한 네트워크 계층

   - IP주소를 통한 송수신지 대상을 지정

   - 라우팅을 통한 다른 네트워크와 통신하는 최적의 경로를 결정

 

물리 계층, 데이터 링크 계층만으로 LAN을 넘어선 통신이 어려운 이유.

1-1. 다른 네트워크까지의 도달 경로를 파악하기 어려움.

- 라우팅: 패킷이 이동할 최적의 경로를 결정하는 것

- 라우터: 라우팅을 수행하는 대표적인 장비

 

 

1-2. 모든 네트워크에 속한 모든 호스트의 위치를 MAC 주소로 특정하기 어려움.

MAC주소는 네트워크 인터페이스마다 부여됨-> 호스트는 시시각각 속한 네트워크가 변할 수 있음.

따라서 MAC주소 하나만으로 모든 네트워크에 속한 호스트 식별이 어려움.

MAC 주소와 IP주소를 함께 이용하고 IP주소를 먼저 이용한다.

 

2. 네트워크 계층의 핵심, 인터넷 프로토콜(IP)

물리계층&데이터 링크 계층의 한계를 극복하는 프로토콜

IP버전 4(IPv4)와 IP버전(IPv6)-> 주로 버전 4를 사용함.

 

2-1. IP의 공식적인 두 기능(RFC=Request for Commens)

1. 주소 지정(IP addressing)

IP 주소를 이용하여 특정 네트워크에 속한 특정 호스트를 지칭함

4바이트(32비트)로 하나의 주소를 표현함. 숫자당 8비트, 0~255범위 내의 4개의 10진수로 표기

각 숫자는 . 으로 구분

 

2. 단편화(IP fragmentation)

전송하고자 하는 패킷의 크기가 너무 클 때 MTU크기보다 작은 패킷으로 쪼개서 보내는 것

MTU(Maximum Transimission Unit)- 한번에 전송가능한 IP 패킷의 최대크기

IP 패킷의 헤더도 MTU크기에 포함.

일반적인 MTU 크기는 1500바이트 , MTU 크기 이하로 나누어진 패킷은 수신지에 도착하면 다시 재조함

 

2-2. IPv4 패킷의 핵심 필드

1. 식별자

패킷에 할당된 번호

단편화되어 쪼개져서 전송되는 패킷들이 기존 어떤 메세지에서 쪼개졌는지 알기 위해 사용

2. 플래그 : 3개의 비트로 구성

첫 번쨰 비트는 0 : 현재 사용되지 않음.

DF비트(Don't Fragment) : 단편화 수행을 금지함

MF비트(More Fragment) : 단편화 패킷이 더 있는지를 나타냄

3. 단편화 오프셋

수신지 입장에서 패킷들은 순서대로 도착하지 않을 수도 있기에 단편화된 패킷들을 재조합하려면, 쪼개진 패킷들이 초기 데이터에서 몇 번째에 해당하는 패킷인지 알아야한다.

4. TTL(Time To Live)

패킷의 수명을 나타냄. 무의미한 패킷이 네트워크 상에 지속적으로 남아있는 것을 방지하기 위해 존재.

패킷이 하나의 라우터를 거칠 떄마다 TTL 이 1씩 감소, TTL 값이 0으로 떨어진 패킷은 폐기

홉 - 패킷이 호스트 또는 라우터에 한 번 전달되는 것 -> 즉, TTL 필드의 값은 홉마다 1씩 감소

 

- 프로토콜(IP 프로토콜의 헤더에 존재)= 이더넷 필드의 타입/ 길이 필드

 

5. 송신지 IP 주소/ 수신지 IP 주소

이론적으로 할당 가능한 IPv4의 주소는 2의 32승 개로 부족한 숫자이다. 따라서 쉽게 고갈된다.

-> 이렇게 빨리 고갈되는 IP 주소를 보완하기 위해 나온게 IPv6이다.

총 16바이트 (128비트)로 주소를 표현할 수 있고, 콜런 : 으로 구분된 8개 그룹의 16진수로 표

 

 

2-3. IPv6 패킷의 핵심 필드

1. 다음 헤더

상위 계층의 프로토콜 또는 확장 헤더를 가리키는 필드

확장헤더?-> IPv6는 기본헤더와 더불어 페이로드와 기본헤더 사이에 확장헤더라는 추가헤더를 가질 수 있음.

확장헤더의 확장헤더도 가능하다.

 

2. 홉 제한

IPv4의 TTL 과 비슷

패킷의 수를 나타내는 필드

 

3. 송 수신지 IP 주소

 

3. IP 주소로 MAC 주소를 알아내기

 

3-1. ARP(Address Resolution Protocol)

IP 주소를 통해 MAC 주소를 알아내는 프로토콜

동일 네트워크 내에 있는 송수신 대상의 IP 주소를 통해 MAC 주소를 알아낼 수 있다.

 

3-2. ARP 의 동작

동일 네트워크에 속한 호스트 A,B

A는 B의 IP주소는 알지만 MAC주소는 모름.

이 상황에서 호스트 B의 MAC주소를 알아내는 과정.

1. ARP 요청

호스트 A: 브로드캐스트 메세지(ARP 요청이라는 ARP 패킷을 전송)

2. ARP 응답

호스트 B는 자신의 MAC주소를 담은 유니캐스트 메세지(1:1로 통신하는 메세지)=ARP 메세지를 A에게 전송

나머지 호스트들은 자신의 IP 주소가 아니므로 무시

3. ARP 테이블 갱신

ARP 요청, 응답을 통해 알게된 IP 주소와 MAC 주소의 연관관계

ARP 테이블 항목은 일정시간이 지나면 삭제,임의 삭제도 가능

ARP 테이블에 등록된 호스트에 대해선 ARP 요청을 보낼 필요 없음

 

 

3-3. 만약 다른 네트워크에 속해 있다면

다른 네트워크에 있는 경우 네트워크별로 ARP 가 수행된다.