[TIL] Linux Network 기초

ENI (Elastic Network Interface)

AWS에서 제공하는 네트워크 인터페이스, 클라우드 가상 서버에 장착하는 “가상 랜카드”

NIC (Network Interface Card)

주요 기능

종류

종류설명
유선 NIC이더넷 케이블(LAN) 연결, 일반적으로 PC에 내장
무선 NICWi-Fi 연결, 주로 노트북이나 무선 액세스 포인트
가상 NIC가상 머신이나 컨테이너용 소프트웨어 기반 네트워크 인터페이스

NIC 요즘 것들 특징

ip -rc addr: 인터페이스 플래그

lo 인터페이스 (루프백)

lo               UNKNOWN        00:00:00:00:00:00 <LOOPBACK,UP,LOWER_UP>
플래그의미
UNKNOWN인터페이스 상태 (루프백은 특별한 상태)
LOOPBACK루프백 인터페이스임 (127.0.0.1)
UP관리상(관리자 설정) 인터페이스가 켜짐
LOWER_UP물리적 링크가 활성화됨 (루프백은 가상이므로 항상 ON)

ens5 인터페이스 (실제 네트워크 카드)

ens5             UP             11:11:11:11:11:11<BROADCAST,MULTICAST,UP,LOWER_UP>
플래그의미
UP인터페이스가 켜짐
BROADCAST브로드캐스트 주소 지원 (일반 LAN)
MULTICAST멀티캐스트 주소 지원
LOWER_UP물리적 연결됨 (케이블이 연결되고 신호 수신 중)

LOWER_UP과 UP의 차이점

ip rule show

출력 결과

0:      from all lookup local
32766:  from all lookup main
32767:  from all lookup default

ip route get 8.8.8.8 (구글 공용 DNS 서버) 했을 때 일어나는 일

출력 내용 예시

8.8.8.8 via 172.31.0.1 dev ens5 src 172.31.12.122 uid 1000
항목의미
8.8.8.8목적지 IP 주소 (Google DNS 서버)
via 172.31.0.1게이트웨이 (Router) 주소. 이 IP를 통해 8.8.8.8로 데이터를 전송합니다.
dev ens5사용되는 네트워크 인터페이스 (ens5)
src 172.31.12.122출발지 (Source) IP 주소 (이 호스트의 개인 IP)
uid 1000이 요청을 처리한 사용자 ID (보통 시스템 프로세스인 경우 1000 이상)

데이터 이동 경로

  1. 출발지: 172.31.12.122 (이 호스트의 개인 IP)
  2. 인터페이스: ens5 (예: 클라우드 환경의 개인 네트워크 인터페이스)
  3. 게이트웨이: 172.31.0.1
    • 이 게이트웨이는 사설 네트워크에서 공인 인터넷으로의 트래픽을 NAT (Network Address Translation) 하는 역할입니다.
    • 172.31.x.x는 AWS VPCAzure VNet과 같은 클라우드 환경에서 사용되는 사설 IP 범위
    • 이 게이트웨이를 통해 8.8.8.8로의 요청이 공인 IP로 변환되어 전송됨
  4. 목적지: 8.8.8.8 (Google DNS 서버)

CIDR이란?

CIDR (Classless Inter-Domain Routing)은 IP 주소를 효율적으로 관리하기 위한 방법

VPC CIDR은 VPC가 사용할 private IP 주소 범위

CIDR은 이런 식으로 생겼음

172.31.0.0/16
10.0.0.0/16
192.168.0.0/24

예를 들어 VPC CIDR이

그 안에서 subnet을 더 작게 나눈다.

VPC CIDR:     172.31.0.0/16
Subnet A:     172.31.0.0/20
Subnet B:     172.31.16.0/20
Subnet C:     172.31.32.0/20

EC2 라우팅에 이런게 있었음:

그리고 VPC 전체 CIDR은 더 클 가능성이 큽니다. 기본 VPC라면 보통

정리

  1. VPC CIDR: 클라우드 안의 큰 사설 네트워크 주소 범위
  2. Subnet CIDR: VPC CIDR을 AZ별/용도별로 나눈 작은 주소 범위
  3. EC2 Private IP: Subnet CIDR 안에서 ENI에 하나 할당된 IP
EC2 private IP: 172.31.12.122
Subnet CIDR:    172.31.0.0/20
VPC CIDR:       아마 172.31.0.0/16

참고: 서브넷 정리하고 넘어가기

IP주소

ip 주소는 IPv4가 32bit, IPv6가 128bit 주소임 IPv4: 256bit.256bit.256bit.256bit -> (8bit) * 4개 = 32 bit IPv6: [hex 4자리].[hex 4자리].[hex 4자리].[hex 4자리].[hex 4자리].[hex 4자리].[hex 4자리].[hex 4자리] -> (16bit) * 8개 = 128 bit

일반적 서브넷 마스크

구분내용핵심 포인트
IP 주소32‑bit(IPv4) 혹은 128‑bit(IPv6) 숫자192.168.10.0/24 같은 표기법
서브넷IP 네트워크를 작은 네트워크 로 나누는 방법라우팅 효율성·보안·관리 경계를 만들기 위해 사용
CIDR주소/마스크길이서브넷 마스크를 간단히 표현/24 = 24비트가 네트워크 부분, 남은 8비트가 호스트 부분
서브넷 마스크네트워크와 호스트 부분을 구분하는 32‑bit 값255.255.255.0/24
네트워크 주소서브넷 안에서 가장 작은 IP (모든 호스트 비트가 0)192.168.10.0
브로드캐스트 주소서브넷 안에서 가장 큰 IP (모든 호스트 비트가 1)192.168.10.255
호스트 주소네트워크와 브로드캐스트를 제외한 나머지 IP 그래서 호스트 할당 가능 개수에서 2개가 빠짐192.168.10.1 … 192.168.10.254 (실제 사용 가능한 주소)
서브넷 마스크CIDR호스트(기기) 할당 가능 개수설명
255.255.255.0/24254개일반 가정 및 소규모 사무실에서 사용
255.255.255.128/25126개네트워크를 반으로 분할
255.255.255.192/2662개네트워크를 4개로 분할
255.255.255.240/2814개네트워크를 16개로 분할