새소식

대학생활/컴퓨터네트워크

컴퓨터 네트워크 정리 -10주차- <네트워크 레이어/4.4 IP>

  • -

4.4 Internet Protocol

The Internet network layer

-      Transport layerline layer 사이에 있다.

-      역할

  • Routing protocols
  • Forwarding table
  • IP protocol
  • ICMP protocol

IP datagram(packet) format

-      time to live(ttl) : 라우터를 거칠 때 마다 1씩 감소, def 256으로 세팅, 만약 ttl보다 많은 라우터를 거치면 좀비               패킷이 된다.

-      TCP Header와 같은 것은 payload에 포함 즉, data 안에 들어가 있다.

-      16-bit identifier, flags, fragment offset 라인에서 flags
       1=>다음 패킷 존재, 0=>종료 1=> fragment offset 을 확인하여 다음 패킷의 위치 참조

-      Option, data 제외 20byteheader를 갖는다.

IP fragmentation, reassembly

-      MTU (Maximum Transfer Unit) : 네트워크 링크는 각 종류마다 MTU가 다르다.
따라서 datagram을 잘게 잘라 사이즈에 맞게 전송해야 하는데,
이 작업을 fragmentation이라 한다.
=>
이 잘게 쪼개진 fragments를 도착지에서 합치는 것을 reassembly라고 한다.

자 이제 Fragmentation 하는 작업을 detail하게 보자.

-      Ip header사이즈는 20byte, 3번째 fragment1,2 fragment header를 포함 => 1040

-      Offsetdatagram에서 data의 시작 위치를 알리며, 예시는 1500bytes 20byteheader기에,
       1480/8 = 185
가  data의 시작 위치임을 알린다는 뜻이다.

IP Addressing: introduction

-      인터페이스 : 호스트 IP가 데이터그램을 보낼 때, 물리적 링크 사이에 개입

  • 인터페이스는 각 링크 마다 하나씩, 라우터는 여러 링크를 가짐
    =>
    라우터 : 인퍼페이스 = 1 : N
  • IP는 인터페이스 하나에 할당된다.

 

Network prefix and Host number

-      IP 주소 = 네트워크 주소[network prefix] + 호스트 ID[host number]

-      Network prefixhost number의 길이는 필요에 따라 달라지며 아래 방법으로 나뉨

-      Class-based addressing

-      CIDR (classless)

Classful IP Address (Old Way)

-      Class A,B,C로 묶는 다.

-      IP 주소는 Class 구분용 key를 갖는다.

  • {Class A : “0”, Class B : “10”, Class C : “110”}

-      문제점

  • A,B와 같은 경우 대규모 네트워크에서 사용하기에는, network address가 너무 적다.
  • A,B와 같은 경우, 과하게 IP 주소가 남을 수 있는데, 이때 브로드케스트와 같은 작업을 하면 과소비를 하게 된다. => 서브넷 등장!

Subnets

-      IP aderss : 두 레이어로 이뤄짐

  • Subnet part – high order bits
  • Host part – low order bits

 

 

Subnetting = 서브넷을 구성하는 방법

-      회사와 같은 Organization 안에는 여러 개의 Network가 존재한다.
이 때 각 네트워크를 분리하는 방식은 2가지가 있다.

-      첫 째, 각 네트워크에 주소를 할당하는 것이다.
둘 째, 다른 레벨의 IP 주소 구조를 생성해, 네트워크를 분리한다.


Subnet Masks


B
클레스를 사용하면 서브넷 포함 24bitsubnet mask로 사용되고 8bithost주소로 사용됨

 

-      32비트 중 23개가 subnet 주소로 사용 => 2^9만큼 host 주소를 할당 가능하다.

-      22 = 16 + 4 + 2 = 0001 011[0] []안에 있는 비트를 1 0으로 바꿔 쓸 수 있음 => 22,23이 될 수 있다.

-      솔루션 1 : 200만큼의 공간을 확보하려면 8개의 비트 필요 => 32 - 8 => 24 subnet mask 사이즈

-      솔루션 2,3,4 : 64보다 작은 값, 64 = 2^6 => 32 - 6 => 26 subnet mask 사이즈

CIDR – Classless Interdomain Routing

-      목표 : 효율을 위한 IP 주소 구조의 재할당, 층계형 라우트 접근으로 라우트 테이블 엔트리 최적화

-      메인 컨셉 : prefix되는 network id의 길이가 네트워크 층계구조에 따라 가변 한다.

-      결과 :

  • Routerforwarding을 위해 IP 주소와 prefix의 길이를 사용한다.
  • 모든 Advertised IP 주소는 prefix를 가진다.

CIDR and Address Assignments

IP addresses : how to get one? (DHCPStatic IP)

DHCP: Dynamic Host Configuration Protocol

-      목표 : 같은 IPhost에게 할당/회수 가능하게 함으로써 재활용성 UP!

-    

DHCP client-server scenario

DHCP ACK 이후에야 Clientyiaddr 값을 ip로 사용할 수 있게 된다.

DHCP가 담는 추가 정보

(IP. Router/Gateway, DNS, Network Mask)

DHCP Example 과정은 다시 한 번 PPT와 영상 참고할 것

DHCP Wireshark Output (Home LAN)
Client : request
를 서버에 보냄

-      Transaction ID

-      6 byteMAC 주소

-      DHCP Message Type

-      Option

Server: 클라에게reply를 보냄

-      클라의 transaction id

-      게이트웨이/라우터 주소 (Next server IP Address)

-      Subnet Mask

-      DNS (일반적으로 2개가 담기며, 첫 번째는 primary, 두 번째는 backup)

NAT는 다음 11주차 강의 정리에서 다룸

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.