[혼공네트]3주차_Chap03 정리

임지·2025년 7월 19일
0

혼공네트

목록 보기
3/7

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

1-1. 다른 네트워크까지의 경로 파악 문제

  • 물리 계층과 데이터 링크 계층만으로는 다른 네트워크와의 통신을 할 수 없다.

  • 물리 계층의 허브, 데이터 링크 계층의 스위치는 LAN 내에서 (동일 네트워크 내에서) 통신을 가능하게 한다.

  • 이를 위해 네트워크 계층의 라우터를 사용한다. 다른 네트워크에 속한 특정 목적지로 가기 위한 최적의 경로를 구하는 과정라우팅이라고 한다.

1-2. MAC 주소의 한계

  • 현실적으로, 모든 호스트가 모든 네트워크의 MAC 주소를 파악하고 있는 건 불가능하다.

  • 보통 네트워크에서 통신을 할 때, MAC 주소와 IP 주소를 함께 사용하되, IP 주소를 우선해서 확인한다.

  • MAC 주소 : 물리주소, IP 주소 : 논리주소

  • MAC 주소는 일반적으로 NIC에 할당되는 고정된 주소이나, IP 주소는 사용자가 직접 할당할 수도 있고, 하나의 호스트가 여러 개의 IP 주소를 가질 수도 있다.

⭐ 2. 인터넷 프로토콜 (IP)

2-1. IP란?

  • 네트워크 계층의 가장 핵심적인 프로토콜

  • IP의 두 가지 버전 : IPv4, IPv6
    ( 우선 흔히 쓰이는 IPv4를 기준으로 IP에 대해 설명하고, IPv6을 설명하려한다.)

⭐ 2-2. IP의 기능 - IP 주소 지정

  • 송/수신지를 IP의 형태로서 표기한다.

    사진 출처 : https://ko.wikipedia.org/wiki/IP_%EC%A3%BC%EC%86%8C

  • 4바이트(32비트)로 표현

  • 숫자 당 8비트로 표현되고, 이를 구분하기 위해 '.'을 찍는다.

  • '.'으로 구분된 8비트을 옥텟이라고 한다.

⭐ 2-3. IP의 기능 - IP 단편화

  • 패킷의 크기가 MTU보다 크다면, 이를 여러 개의 패킷으로 나누어 전송한다.

  • MTU (Maximum Transimission Unit)
    : 한 번에 전송 가능한 IP 패킷의 최대 크기
    : IP 패킷에서 헤더도 포함한 크기
    : 일반적으로 1500바이트이다. (이더넷 프레임의 페이로드 최대 크기가 1500바이트이고, 이더넷 프레임의 페이로드는 IP 패킷이다.)
    : 수신지에 도착하면 다시 재조합됨.

  • 경로 MTU
    : 패킷이 목적지까지 도달하기까지 거치는 모든 노드의 MTU 이하 크기의 MTU
    : 경로 MTU 발견을 통해 알아낼 수 있다.

2-4. IPv4 패킷의 구조

(전부다 설명하지는 않았고, 헤더에서 주요 정보들만을 뽑아서 설명하였다.)

  • 식별자
    : 패킷을 구분하기 위해 할당된 번호
    : 수신지에서 재조합 시 사용된다. (어떤 메세지로부터 쪼개어진 패킷인지를 판단하기 위함)

  • 플래그
    : 3비트로 구성

위치플래그 이름설명
1번째0으로 예약된 비트사용하지 않는다.
2번째DF (Don't Fragment)1 : 단편화 X / 0 : 단편화 O
3번째MF (More Fragment)1 : 아직 도착하지 않은 패킷 O / 0 : 마지막 패킷
  • 단편화 오프셋
    : 메세지가 여러 패킷으로 단편화 되었을 경우, 초기 데이터에서 얼마나 떨어져 있는가를 나타내는 필드
    : 수신지에서 재조합 시, 패킷을 순서에 맞게 재조합하기 위해 사용

  • TTL
    : Time To Live의 약자
    : 패킷의 수명을 의미
    : 홉마다 1씩 감소
    : 네트워크 상에서 무의미한 패킷이 남아있지 않도록 하기 위함

  • 프로토콜
    : 상위 프로토콜을 나타내는 필드
    : 이더넷 프레임의 타입/길이 필드와 유사

  • 송/수신지 IP 주소
    : 이름 그대로, 송/수신지의 IP 주소를 나타내는 필드

2-5. IPv6

  • IPv4 주소 체계로는 더 많은 주소를 표현할 수 없어서 등장

사진 출처 : https://en.wikipedia.org/wiki/IPv6_address

  • 16바이트 (128비트)로 주소를 표현

  • 콜론(:)으로 구분된 8개의 그룹, 16진수로 표현.

  • 이론적으로 2^128개, 사실상 무한에 가까운 개수를 할당할 수 있다.

2-6. IPv6 패킷의 구조

  • IPv6 패킷의 경우, IPv4보다는 간소화된 헤더 구조를 가지고 있다.


사진 출처 : https://ko.wikipedia.org/wiki/IPv6

  • 다음 헤더
    : 상위 계층의 프로토콜을 가리키거나,
    : 확장 헤더를 가리킨다.

  • 홉 제한
    : IPv4의 TTL 필드와 유사
    : 패킷의 수명을 나타냄

  • 송/수신지 IP 주소
    : 이름 그대로 송/수신지의 IP 주소를 나타냄

참고) 확장 헤더란?

  • 확장 헤더
    : 기본 헤더와 페이로드 사이에 위치
    : 추가 정보가 필요한 경우 사용 (부가 정보 표현)
    : IPv6 패킷 단편화는 단편화 확장 헤더를 통해 이루어진다.

3. ARP

3-1. ARP란?

  • Address Resolution Protocol의 약자
  • IP 주소를 통해 MAC 주소를 알아내는 프로토콜
  • 상대 호스트의 IP 주소는 알고 있으나, MAC 주소를 모르는 상황에서 사용한다.

3-2. ARP의 동작 과정

  1. ARP 요청
  2. ARP 응답
  3. ARP 테이블 갱신

의 순서로 이루어진다.

  1. ARP 요청
    : 수신지 IP 주소를 담은 ARP 패킷을 전송
    : 브로드캐스트 메시지의 형태로 전송

  2. ARP 응답
    : 해당 IP 주소를 가진 호스트가 자신의 MAC 주소를 담은 ARP 패킷을 전송
    : 유니캐스트 메세지의 형태로 전송

  3. ARP 테이블 갱신
    : ARP 응답을 받은 호스트는 ARP 테이블을 갱신한다.

참고) ARP 패킷의 구조


사진 출처 : http://www.ktword.co.kr/test/view/view.php?no=2188

  • 오퍼레이션
    : ARP 패킷의 종류를 의미. 1이면 요청, 2면 응답

  • 송/수신지 하드웨어 주소
    : 송/수신지의 MAC 주소 명시
    : ARP 요청시 송신지 주소 00:00:00:00:00:00, 수신지 주소 ff:ff:ff:ff:ff:ff

  • 송/수신지 프로토콜 주소
    : 송/수신지의 IP 주소 명시

참고) ARP 테이블

  • MAC 주소 - IP 주소간 대응관계를 저장한 테이블

  • 각 항목은 시간이 지나면 삭제된다. (임의 삭제도 가능)

4. IP 주소

4-1. 클래스풀 주소 체계

  • 네트워크 크기에 따라 IP 주소를 구분하는 기준


사진 출처 : https://www.networkstraining.com/classful-vs-classless-ip-addressing/

1) 클래스 A

  • 첫 번째 옥텟에서 0으로 시작
  • 나머지 3개의 옥텟을 호스트 주소로 사용

2) 클래스 B

  • 첫 번째 옥텟에서 10으로 시작
  • 나머지 2개의 옥텟을 호스트 주소로 사용

3) 클래스 C

  • 첫 번째 옥텟에서 110으로 시작
  • 나머지 1개의 옥텟을 호스트 주소로 사용

참고) 예약된 호스트 주소

  • 호스트 주소가 모두 0
    : 네트워크 자체를 의미하는 주소

  • 호스트 주소가 모두 1
    : 브로드캐스트 주소

  • 따라서 각 클래스의 호스트 주소 가짓수에서 위 2개를 빼주어야한다.

4-2. ⭐ 클래스리스 주소 체계

  • 클래스 개념 없이 네트워크 영역을 나누어 IP 주소 공간 할당

1) 서브넷 마스크

  • 네트워크 주소는 1, 호스트 주소는 0으로 표기한 비트열
  • AND 비트 연산을 통해 IP 주소에서 네트워크 주소를 구할 수 있다.

2) CIDR 표기법

4-3. 공인 IP 주소, 사설 IP 주소

1) 공인 IP 주소

  • 전 세계에서 고유한 IP 주소
  • 네트워크 간 통신, 인터넷 사용 시 사용하는 IP 주소가 공인 IP 주소

2) 사설 IP 주소

  • 사설 네트워크 내에서 사용하기 위한 IP 주소
  • 다른 사설 네트워크 내 IP 주소와 겹칠 수 있음
  • 특별히 예약된 IP 주소 공간이 있음
  • 사설 IP 주소의 할당 주체 : 라우터

⭐ 3) NAT

  • 공인 IP 주소와 사설 IP 주소 간의 변환을 위해 사용하는 기술
  • 대부분의 공유기, 라우터는 NAT 기술을 내장하고 있다.

4-4. 정적 IP 주소, 동적 IP 주소

1) 정적 IP 주소 할당

  • 사용자가 직접 할당하는 방법
  • 일반적으로 IP 주소, 서브넷 마스크, 게이트웨이, DNS 주소를 입력

⭐ 2) 동적 IP 주소 할당

  • 자동적으로 IP 주소를 할당하는 방법
  • DHCP 서버를 통해 IP 주소를 할당받을 수 있다.

⭐ 3) DHCP 서버와 클라이언트

  1. DHCP Discover
  2. DHCP Offer
  3. DHCP Request
  4. DHCP ACK

의 과정으로 IP 주소를 할당받을 수 있다.

  1. DHCP Discover
    : 클라이언트 -> DHCP 서버
    : DHCP 서버를 찾는다.
    : 브로드캐스트 메세지의 형태로 전송
    : 송신지 IP 주소 : 0.0.0.0

  2. DHCP Offer
    : DHCP 서버 -> 클라이언트
    : 할당해줄 IP 주소와 부가정보 등을 전송

  3. DHCP Request
    : 클라이언트 -> DHCP 서버
    : 해당 IP 주소 사용 권한을 요청

  4. DHCP ACK
    : DHCP 서버 -> 클라이언트
    : 해당 메세지를 받으면 클라이언트는 임대 기간동안 IP 주소를 사용

⭐ 5. 라우팅

5-1. 라우팅 테이블

사진 출처 : https://www.techtarget.com/searchnetworking/definition/routing-table

  • 수신지 IP 주소 / 서브넷 마스크

  • 다음 홉 (=게이트웨이)
    : 최종 수신까지 가기 위해 다음으로 거쳐야하는 주소나 인터페이스

  • 네트워크 인터페이스
    : 패킷을 내보낼 통로

  • 메트릭
    : 해당 경로로 이동하는데 드는 비용
    : 작을 수록 최적의 경로

5-2. 정적 라우팅과 동적 라우팅

1) 정적 라우팅

  • 라우팅 테이블을 직접 만드는 방법
  • 라우팅 테이블을 다루는 명령어로 설정

⭐ 2) 동적 라우팅

  • 자동으로 라우팅 테이블 항목을 만들고, 이를 이용해서 라우팅
  • 라우팅 프로토콜을 통해 라우팅 테이블을 갱신

⭐ 5-3. 라우팅 프로토콜

1) RIP (Routing Information Protocol)

  • IGP (AS 내 라우팅) 중 하나
  • 거리 벡터를 사용해서 메트릭 계산
  • 거리 벡터 : 홉의 수를 의미
  • 주기적으로 라우터 간 정보 교환이 이루어진다.

2) OSPF (Open Shortest Path First)

  • IGP (AS 내 라우팅) 중 하나
  • 링크 상태를 통해 최적의 경로를 구한다.
  • 현재 네트워크의 상태를 그래프의 형태로 링크 상태 DB에 저장하고, 이 내용을 바탕으로 최적의 경로를 구한다.
  • 대역폭을 기반으로 메트릭 계산
  • AS 내 정보가 바뀔 때마다 정보 변경이 이루어진다.

3) BGP (Border Gateway Protocol)

  • EGP (AS 간 라우팅) 중 하나
    (AS 내 라우팅도 가능)
  • 피어링을 통해 다른 AS의 BGP 라우터와 피어 상태를 유지해야함.
  • 경로 결정 과정 시 속성과 정책이 고려됨 -> 복잡함

참고) AS란?

  • 라우터들의 집합
  • AS 외부에 있는 라우터에 접근하기 위해서, AS 경계 라우터라는 특별한 라우터를 사용한다.
  • 사진에서는 BGP를 통해 AS 간 통신이 이루어짐

사진 출처 : https://xn--3e0bx5euxnjje69i70af08bea817g.xn--3e0b707e/jsp/resources/asInfo.jsp


연습 문제 풀이

기본 문제 풀이

  • 147p 1번
    IPv4의 대표적인 기능 IP 단편화, IP 주소 변환

  • 187p 2번
    라우팅 프로토콜은 AS 내부에서 수행되는 IGP, AS 외부에서 수행되는 EGP로 나뉜다.
    RIP는 대표적인 거리 벡터 라우팅 프로토콜, OSPF는 대표적인 링크 상태 라우팅 프로토콜

추가 문제 풀이

  • ipconfig /all 명령어 입력

  • Physical Address가 MAC 주소를 의미하고, IPv4 Adrress가 IP 주소를 의미한다.

0개의 댓글