Network Layer
3줄 요약
데이터 패킷의 전달 및 라우팅을 담당
이 계층은 논리적 주소(주로 IP 주소)를 사용하여 송신자와 수신자를 식별하고, 다양한 네트워크 간의 경로 선택과 최적화를 수행
주요 프로토콜로는 IPv4, IPv6, ICMP(인터넷 제어 메시지 프로토콜)
긴 설명
패킷 전달 및 라우팅
Network 계층은 송신자가 전송한 데이터 패킷을 수신자에게 전달하는 기능을 담당
이를 위해 최적의 경로를 선택하는 라우팅 프로세스를 수행하며, 다양한 경로 선택 알고리즘을 활용하여 트래픽 상황에 맞춰 가장 효율적인 경로를 결정
논리적 주소 체계
이 계층은 IP 주소를 사용하여 장치를 논리적으로 식별
IPv4(32비트)와 IPv6(128비트) 주소 체계가 널리 사용되며, 각 주소는 네트워크와 호스트 부분으로 나뉘어 있어 네트워크 내에서의 장치 위치를 지정
패킷 스위칭
Network 계층은 패킷 스위칭 기술을 사용하여 데이터를 전송
패킷 스위칭은 대용량 데이터를 작은 패킷으로 나누어 전송하는 방식으로, 각 패킷은 독립적으로 전송되며, 최종적으로 수신 측에서 다시 조립
이 방식은 네트워크 자원을 효율적으로 활용하고, 오류 발생 시 재전송이 용이
네트워크 간 연결
Network 계층은 서로 다른 네트워크 간의 통신을 가능
이를 위해 게이트웨이 및 라우터와 같은 네트워크 장비가 사용되어, 다른 서브넷 또는 네트워크 간의 데이터 흐름을 관리
이러한 연결은 VPN(가상 사설망)과 같은 기술을 통해 보안성을 높일 수도 있음
제어 메시지 전송
이 계층은 ICMP(인터넷 제어 메시지 프로토콜)를 통해 네트워크의 상태를 모니터링하고 문제를 진단하는 기능을 수행
예를 들어, ping 명령은 ICMP를 사용하여 특정 IP 주소에 대한 연결 상태를 확인
QoS(서비스 품질)
Network 계층은 QoS를 통해 네트워크의 성능을 보장
트래픽 우선순위를 정하고 대역폭을 할당함으로써, 중요한 데이터 패킷이 지연 없이 전송될 수 있도록 지원
프로토콜
Network 계층에서 사용되는 주요 프로토콜로는 IPv4, IPv6, ICMP, ARP(주소 해석 프로토콜)
IP 헤더 구성은?
- 발신지/목적지 IP 주소
- 제어정보 (프로토콜, TTL, 패킷 길이, 체크섬 등)
**여러가지 헤더 정보 존재 -> 외부검색
Public IP 와 Private IP의 차이는?
- Public IP는 지정되어있고 대부분 ISP에 의해 부여됨
- Private IP는 자유롭게 설정가능하고 사설망에서 통신 가능한 IP
예약된 IP 주소는?
- 브로드캐스트 주소
- 리미티드 브로드캐스트 동일 네트워크의 모든 노드
255.255.255.255
- 다이렉트 브로드캐스트
서로 다른 네트워크의 모든 노드
- 로컬 브로드캐스트
동일 네트워크의 모든 노드
IP주소 192.168.1.1 에 255.255.255.0이 서브넷 마스크라면 즉, 192.168.1.1/24 라면 192.168.1.255 가 브로드캐스트 주소
루프백 주소
- 자기 자신을 나타내는 IP 주소 127.0.0.1/8 사용이 일반적이며 첫번째 옥탯이 127인 IP 주소임
L3 스위칭의 동작 원리는?
IP주소를 사용하여 패킷 라우팅
라우팅 테이블을 기반으로 동작함
일단 노드는 기본 게이트웨이에 패킷을 전송함
L2 스위치와 비슷하게 MAC 주소와 IP 주소는 ARP를 통해 협동하여 동작함
MAC 주소는 동일 네트워크에서만 유효한 물리주소이므로 네트워크를 넘어갈 때마다 바뀜, IP 주소는 네트워크가 바뀌어도 유효한 논리 주소임
라우팅 테이블이란?
- 정적 라우팅 또는 동적 라우팅으로 만듦
정적
-> 수동으로 라우팅 테이블 생성
동적
-> 인접한 라우터끼리 경로 정보 교환으로 만듦
라우팅 프로토콜
- IGP, Internal Gateway Protocol
- OSPF
- EIGRP
- EGP, External Gateway Protocol
- BGP
NAT의 정의와 필요성은?
Network Address Translation
네트워크 주소 변환으로 해석됨
일반적인 목적
IP 주소 절약 목적
IP 환경에 잠재하는 위험 회피
- 정적 라우팅
내부 및 외부 IP 주소를 1:1 매칭
일반적으로 내부에서 외부로 액세스할 때, 발신지 IP 주소를 변경함
반대로 외부에서 내부로 액세스할 때, 목적지 IP 주소를 변환함
-> 서버 사이드에서 이 IP 주소로 인터넷에 전송하고 싶다는 경우에 사용
- NAPT
내부및 외부 IP 주소를 n:1로 매칭함
IP 마스커레이드, 포트 주소 변환(PAT)라고도 부름
즉, AWS에서 IGW를 연결하는 것과 마찬가지로
VPC 내의 인스턴스들도 public IP 없이 인터넷과 통신이 가능하다. (서버에서 퍼블릭 인터넷으로 아웃바운드 통신)
- Twice NAT
발신지와 목적지 모두 같이 변환
즉, 중복 네트워크 간의 통신이 가능해짐
VPC 간의 통신이 가능해짐
NAT 구성요소
- 프록시 ARP
- NAT 테이블
프록시 ARP
- NAT 에서 사용하는 IP 주소는 라우터의 인터페이스가 갖는 IP 주소와 다름
- 라우터는 NAT 에서 사용하는 IP 주소의 ARP request에도 대리 응답을 해줘야함
NAT table이란?
NAT 테이블은 변환 전, 변환 후 IP 주소와 포트 번호가 기록된 테이블이다.
DHCP란?
IP 주소와 기본 게이트웨이 등의 네트워크 설정을 노드에 배포하기 위한 프로토콜
일반적으로는 애플리케이션 계층에서 동작하는 프로토콜임
DHCP를 사용해 IP 주소 관리와 효율적 부여가 가능함
트러블슈팅을 위한 ICMP?
네트워크 계층의 통신 확인에 사용하는 프로토콜
IP 레벨에서 장애가 발생하거나 패킷을 전달할 수 없을 때, 발신자에게 전달하는 매커니즘
PING은 Packet Internet Grouper 의 약자로 ICMP 패킷을 송신하기 위해 사용하는 네트워크 진단 프로그램
ICMP는 TCP도 아니고 UDP도 아님
IP 헤더에 ICMP 데이터를 붙인 IP 패킷이 ICMP 패킷
ICMP는 보통
- 성공적으로 전달되어 "Reply from {destination IP address}
- 응답을 시간 안에 받지 못했을 때 "Request Timeout"
- 목적지로 보낼 수 없을 때 "Destination Unreachable"
트러블 슈팅
L4
- telnet
L3 -> 가장 처음 확인해야할 계층 PING으로 테스트
- NAT테이블
- 라우팅 테이블
L2
- ARP 테이블
- MAC 주소 테이블
이해하기 위해 필요한 지식
- IP
- Packet
- IP Payload
- IP Header
- Packet TTL
- Packet Protocol
- Private IP
- Public IP
https://www.tistory.com/event/write-challenge-2024
'귀찮게하기 > Infra' 카테고리의 다른 글
인프라팀 귀찮게 안하기 - Network(4) (1) | 2024.11.06 |
---|---|
인프라팀 귀찮게 안하기 - LoadBalancer 및 세션 유지 (0) | 2024.11.06 |
인프라팀 귀찮게 안하기 - Network(3) (0) | 2024.11.06 |
인프라팀 귀찮게 안하기 - SSH (0) | 2024.11.05 |
인프라팀 귀찮게 안하기 - Network(1) (0) | 2024.11.04 |