[네트워크] 인터넷 계층 - IP와 라우터

인터넷(네트워크) 계층은 IP 주소를 이용해 최종 목적지까지 이동하는 역할을 맡는다. 방대한 인터넷에서 네트워크 간의 이동을 라우터가 처리해주며 그 과정에서 IP를 이용한다. 인터넷 계층의 핵심 프로토콜인 IP와 경로 라우팅을 위한 핵심 장비인 라우터에 대해서 알아보자.

IP

IP(Internet Protocol)은 인터넷에서 데이터 패킷을 송수신할 수 있는 규약이다. IP 주소를 이용하여 목적지까지 경로를 찾아간다. IP는 신뢰성을 보장하지 않아 패킷 전송 중 손실 문제가 발생 할 수 있다. 이러한 문제로 신뢰성을 보장하는 전송계층의 TCP와 함께 사용된다. IP 프로토콜의 헤더에는 IP의 버전과 출발지, 목적지의 IP 주소 등을 가지고 있는데 이 정보를 이용해서 목적지를 찾아간다.


IP 주소

IP 주소(IP Address)는 인터넷에서 고유한 주소로써 인터넷 상의 다른 장치간의 통신을 가능하게 하며 최종 목적지까지 찾을 수 있게 도와준다. IP(v4)는 32비트 주소 체계를 사용하며 . 구분자를 이용하여 8비트씩 끊어 표시한다. 따라서 다음과 같은 범위를 지닌다.

0.0.0.0 ~ 255.255.255.255

(더 깊게 들어가보면 IP 주소는 공공IP와 사설IP로 나눠지며 고갈문제로 IPv6도 등장하였다. 이는 이후 포스트에 자세하게 다뤄보자)


IP 주소 할당방식

과거에는 네트워크 규모에 따라 A~E 클래스로 나누는 클래스 할당 방식을 사용하였다. 하지만 이 방식은 각 클래스마다 네트워크ID, 호스트ID의 수가 정해져 있기 때문에 IP를 효율적으로 할당 하지 못했다. 이는 인터넷이 급격하게 발전하는 시대에 IP고갈문제를 초래하였고 새로운 할당 방식을 사용하게 되었다.

지금은 CIDR(Classless Inter-Domain Routing, 싸이더)로 대체하여 유연하게 네트워크 ID와 호스트 ID 범위를 표시한다. 이 방식은 IP 주소 뒤에 /{네트워크ID 비트수}를 표시한다. 따라서 보다 유연하게 IP를 할당할 수 있게 되었다.

  • 203.255.60.0/24 -> 203.255.60 이 네트워크ID, 나머지가 255개가 호스트
  • 17.0.0.0/8 -> 17. 이 네트워크 ID, 뒤가 17.x.x.x 부분이 전부 호스트

💡 IP 주소 구성방식
IP는 네트워크 ID과 호스트 ID으로 나눠진다.
- 네트워크ID : 어떤 네트워크(소속)인지를 나타냄
- 호스트ID : 해당 네트워크(소속)의 어느 컴퓨터인지를 나타냄

💡 할당불가 주소
호스트ID 중 사용할수 없는 주소가 2개 있다. 해당 대표 네트워크를 가리키는 주소인 x.x.x.0과 브로드캐스트 시 이용하는 x.x.x.255이다.



라우터

라우터는 네트워크 사이를 연결하여 서로다른 네트워크 간의 통신을 가능하게 만들어주는 장치이다. IP를 활용하여 목적지까지 데이터를 전송할 수 있다.


라우터의 역할

라우터는 다른 네트워크 장비로 부터 데이터를 받고 최적의 경로로 데이터를 전송해준다. 이 때 라우터는 크게 2가지 과정을 거친다.

포워딩(Forwarding)

  • 수신한 데이터를 목적지로 향하는 포트로 전달하는 과정
  • 패킷의 물리적인 전달 역할

라우팅(Routing)

  • 수신한 데이터를 전달하기 위한 경로를 결정하는 과정
  • 목적지 주소확인, 어떤 네트워크(포트)로 전달할지 결정한다.
  • 이 과정에서 목적지까지의 최적경로 계산 등 여러 프로토콜 사용(RIP, OSPF, BGP)


라우터의 동작과정

  1. 패킷 수신 및 분석
    • 수신한 패킷의 IP 헤더 분석(목적지 IP 주소 확인)
    • 다음 목적지로 패킷을 전달하기 위함
  2. 경로 탐색(주기적으로 진행)
    • 경로 탐색(RIP, OSPF, BGP 등의 프로토콜 사용), 라우팅 테이블 업데이트
    • 네트워크 상태 확인(ICMP 사용)
  3. 다음 목적지 결정
    • 라우팅 테이블 참조하여 최적경로 선택
  4. 다음 목적지로 패킷 전달(MAC주소 이용)
    • ARP를 이용해 IP를 MAC주소로 변환
  5. 최종 목적지에 도착하기 전까지 위 과정 반복

💡 라우팅 테이블
라우터가 가지고 있는 연결된 라우터들의 IP 리스트이다. 라우터는 경로 선택 시 라우팅 테이블을 참고하여 경로를 결정한다. 라우팅 테이블은 라우터끼리 주기적으로 정보를 교환하여 업데이트하는 동적 라우팅과 수동으로 등록하는 정적 라우팅으로 나누어진다.

🤔 통신 시 IP주소와 MAC주소를 함께 사용하는 이유
IP는 인터넷에서 유일하며 MAC주소 또한 그렇다. 둘 다 유일하다면 둘 중 하나만 사용하면 되지 않을까? 통신에서 IP 주소는 논리적인 주소로 라우팅을 위해 사용되고 MAC 주소는 믈리적인 주소로 패킷 전송을 위해 사용된다. 따라서 만약 IP주소가 없다면 방대한 네트워크에서 위치를 찾을 수 없고 MAC주소가 없다면 목적지 네트워크 장치를 인식하지 못해 통신하지 못한다.


라우터의 다양한 기능

라우터는 데이터 전송, IP와 관련하여 라우팅 뿐 아니라 다양한 기능을 가지고 있다. (NAT, DHCP와 같은 기능은 IP 고갈문제를 해결하기 위해 사용된 기술이기도 하다. 다음 포스트에서 자세하게 알아보자)

  1. 방화벽 기능(패킷 필터링, 포트 포워딩, NAT)
    외부 접근을 제한해 내부 네트워크를 보호하고 안전한 네트워크 운영을 지원한다.
    • 패킷 필터링 - 특정 패턴의 패킷을 차단해 보안 강화
    • 포트 포워딩 - 내부 네트워크의 특정 포트로 들어오는 요청 허용
    • NAT(Network Address Translation) - 사설 IP를 공인 IP주소로 변환
    • ACL(Access Control List) - 출발지/목적지IP, 포트번호 등을 기준으로 접근제어
  2. 게이트웨이
    • 서로 다른 네트워크 간의 데이터 전송 가능
  3. DHCP 서버
    • 네트워크에 연결된 장치에 IP주소, 네트워크 설정 정보를 자동할당

카테고리:

업데이트:

댓글남기기