네트워크 계층 2

BinaryHyeok·2023년 11월 24일
0

네트워크 주소 변환(NAT)

홈 네트워크에서 IP 장치들은 각각의 주소를 가진다. 하지만 WAN 환경에서는 이 IP 주소를 사용할 수 없다. 이 네트워크 주소들은 그 네트워크의 내부에 있는 장비들에게만 의미가 있다. 이 주소 블록을 사용하는 네트워크는 글로벌 환경에서 엄청 많기 때문이다.
이는 NAT 라우터를 통하여 글로벌에서 하나의 IP 주소를 갖는 하나의 장비로 동작하도록 한다.

NAT 라우터에서 NAT 변환 테이블을 사용하여, 그 테이블에 IP 주소와 포트 번호를 포함하도록 함으로써 WAN에서 같은 목적지의 IP 주소를 갖는 데이터그램이 도착하더라도 내부 호스트를 알 수 있게 된다.

하지만 NAT 라우터를 사용하게 되면 서버의 역할은 하지 못한다. 외부에서 패킷이 도착할 때 어떤 내부 호스트가 받을 지는 IP 주소를 통하여 결정해야 하지만 NAT 라우터는 포트 번호를 통하여 결정한다. 특정 프로세스를 찾을 때 사용할 때 포트 번호를 사용해야 되지만, NAT는 그렇게 하지 않음으로써 서버로의 운영은 불가능 하게 된다.

동적 호스트 구성 프로토콜(DHCP)

호스트에 IP 주소를 할당하는 것은 수동으로 구성 가능하지만 일반적으로 DHCP(Dynamic Host Configuration Protocol) 를 더 많이 사용한다. DHCP는 호스트가 IP 주소를 자동으로 얻을 수 있게 하며, 네트워크 관리자는 해당 호스트가 네트워크에 접속하고자 할 때마다 동일한 IP 주소를 받도록 하거나, 다른 임시 IP 주소를 할당하도록 DHCP를 설정한다.

DHCP

  • plug-and-play protocol or zero-configuration protocol
  • client-server protocol

새로운 호스트가 도착할 경우의 DHCP 시나리오

  1. DHCP discover
    새롭게 도착한 호스트는 상호작용할 DHCP를 발견한다. 이는 DHCP discover message를 사용하여 수행되며, 클라이언트는 포트 67번으로 UDP 패킷을 보낸다. UDP 패킷은 IP 데이터그램으로 캡슐화된다.
    호스트는 자신이 접속할 네트워크의 IP 주소를 알지 못하고, 해당 네트워크의 DHCP 서버 주소도 모른다. 따라서 DHCP 클라이언트는 DHCP 발견 메시지를 포함하는 IP 데이터그램을 생성하여, 이 데이터그램을 서브넷에 연결된 모든 노드로 브로드캐스트 한다.

    • DHCP 서버 포트번호 : 67
    • DHCP 클라이언트 포트번호 : 68
    • 출발지 IP : 0.0.0.0
    • 목적지 IP : 255.255.255.255
  2. DHCP offer
    DHCP discover message를 받은 DHCP 서버는 DHCP offer message를 클라이언트로 응답한다. 이때에도 다시 IP 브로드캐스트 주소 255.255.255.255를 사용하여 서브넷의 모든 노드로 이 메시지를 브로드캐스트 한다. 서브넷에는 여러 DHCP 서버가 존재하기 때문에 가장 최적의 위치의 DHCP 서버를 선택하기 위하여 모든 노드로 브로드캐스트 한다.

    서버 제공 메시지는 다음의 내용을 포함한다.

    • transaction ID
    • 클라이언트에 제공된 IP 주소
    • 네트워크 마스크
    • IP 주소 임대 기간
  3. DHCP request
    클라이언트는 DHCP offer message를 받아 선택할 것이고, 선택된 서버에게 DHCP request message로 응답한다.

  4. DHCP ACK
    서버는 DHCP request messsage에 대해 요청된 파라미터를 확인하는 DHCP ACK message로 응답한다.

Reference

KOCW - 컴퓨터 네트워크
컴퓨터 네트워킹 하향식 접근

0개의 댓글