[Network] 기본 개념

기본개념

같은 네트워크면 직접 전송 다른 네트워크면 라우터에게 전송

1. route / routing / router

route (경로)

  • 192.168.10.0/24 는 eth0 로 직접 연결됨
  • defulat 는 192.168.10.1 로 보냄

즉, “어떤 목적지로 갈 떄 어디로 보내라”는 규칙.

routing (경로를 결정해서 패킷을 전달하는 행위)

1) OS 가 라우팅 테이블을 보고
2) 패킷 목적지 IP를 확인한 뒤
3) 어느 인터페이스로 내보낼지, 다음 홉이 누구인지 결정 \

위 과정 모두 routing.

router (서로 다른 네트워크 사이에서 패킷을 전달하는 장치/기능)

  • 공유기
  • Linux 서버
  • L3 스위치
  • 통신 장비

전용 장비만 router가 아니다.
Linux도 IP forwarding을 켜면 router 역할을 수행

2. 서브넷 (subnet)

IP: 192.168.10.20
서브넷 마스크: 255.255.255.0
CIDR 표기: /24
  • 네트워크 주소: 192.168.10.0
  • 사용 가능한 호스트: 192.168.10.1 ~ 192.168.10.254 즉, 192.168.10.x 대역끼리는 같은 네트워크 목적지 IP 192.168.10.30 으로 보내는 건 직접 가능 목적지 IP 192.168.20.30 으로 보내는 건 라우터 필요

3. 네트워크 패킷 전송 과정

경우 1: 목적지가 같은 네트워크

예:

  • 내 IP: 192.168.10.20/24
  • 목적지: 192.168.10.30

판단:

  • 같은 네트워크 인식
  • [^1]ARP로 MAC 주소 확인
  • 직접 eth0 로 전송
    [^1]: ARP(Address Resolution Protocol): IP 주소를 MAC 주소와 매핑하는 프로토콜

경우 2: 목적지가 다른 네트워크

예:

  • 내 IP: 192.168.10.20/24
  • 목적지: 8.8.8.8

판단:

  • 같은 네트워크 아님
  • 라우팅 테이블 확인
  • default route가 via 192.168.10.1 dev eth0
  • 그럼 192.168.10.1 에게 전송

4. 라우팅 테이블

Linux에서 보면:

ip route

예시 출력:

default via 192.168.10.1 dev eth0
192.168.10.0/24 dev eth0 proto kernel scope link src 192.168.10.20
10.0.0.0/24 via 192.168.10.254 dev eth0
  • defulat via 192.168.100.1 dev eth0: \ 명시되어있지 않은 나머지 모든 목적지는 192.168.10.1 로 전송(기본 게이트웨이) \
  • 192.168.10.0/24 dev eth0 :
    192.168.10.x 대역은 eth0 에 직접 연결되어 있다.
  • 10.0.0.0/24 via 192.168.10.254 dev eth0 :
    10.0.0.x 대역으로 가려면 192.168.10.254 를 1다음 홉으로 사용

5. route 선택 기준

가장 구체적인 경로를 선택함 (Longest Prefix Match)

ip route 결과:

10.0.0.0/8 via 192.168.10.1 dev eth0
10.1.0.0/16 via 192.168.10.2 dev eth0
10.1.2.0/24 via 192.168.10.3 dev eth0
default via 192.168.10.254 dev eth0

가능한 후보:

- `10.0.0.0/8`
- `10.1.0.0/16`
- `10.1.2.0/24` <- 가장 구체적인 `/24` 임으로 `192.168.10.3` 으로 전송됨.
- `default`

6. static route 와 dynamic routing

static route

관리자가 수동으로 경로를 넣는 방식

예:

ip route add 10.20.0.0/16 via 192.168.10.254 dev eth0

뜻: 10.20.x.x 대역은 192.168.10.254 쪽으로 보내라

  • 단순함
  • 예측 가능
  • 작은 네트워크에 좋음

단점:

  • 네트워크가 커지면 일일이 관리하기 힘듦
  • 장애 대응이 자동이 아님

dynamic routing

라우터들끼리 서로 정보를 교환해서 경로를 자동으로 학습하는 방식

예:

  • RIP (Routing Information Protocol)
  • OSPF (Open Shortest Path First)
  • BGP (Border Gateway Protocol)

장점:

  • 네트워크가 커져도 자동화 가능
  • 장애 시 경로 재계산 가능

단점:

  • 설정/이해가 더 복잡
  • 프로토콜 특성을 알아야 함
  1. 다음 홉(next hop): 당장 10.0.0.5 직접 못가니 우선 192.168.10.254 목적지에 넘겨라 

Categories:

Updated:

Leave a comment