안녕하세요! 오늘은 네트워크에서 매우 중요한 개념인 라우팅에 대해 자세히 알아보겠습니다.
라우팅이란? 🤔
라우팅은 마치 네트워크 세계의 내비게이션과 같습니다!
- 데이터 패킷이 출발지에서 목적지까지 가는 최적의 경로를 결정하는 과정
- IP 네트워크에서 패킷을 전달하는 방법을 결정
- 라우터가 패킷을 어느 방향으로 전송할지 판단하는 규칙의 집합
라우팅의 기본 개념 📚
1. 라우팅 테이블
# 라우팅 테이블 확인
route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
2. 라우팅 종류
정적 라우팅 (Static Routing)
- 수동으로 경로 설정
- 변경이 적은 소규모 네트워크에 적합
동적 라우팅 (Dynamic Routing)
- 자동으로 경로 학습 및 업데이트
- 대규모 네트워크에 적합
라우팅 프로토콜 🌐
1. 내부 게이트웨이 프로토콜 (IGP)
1. RIP (Routing Information Protocol)
- 홉 카운트 기반
- 최대 15홉 제한
2. OSPF (Open Shortest Path First)
- 다익스트라 알고리즘 사용
- 빠른 경로 수렴
2. 외부 게이트웨이 프로토콜 (EGP)
1. BGP (Border Gateway Protocol)
- 인터넷의 기본 라우팅 프로토콜
- AS(Autonomous System) 간 라우팅
실전 라우팅 설정 예시 💻
1. 정적 라우팅 설정
# 새로운 경로 추가
ip route add 10.0.0.0/24 via 192.168.1.1
# 기본 게이트웨이 설정
ip route add default via 192.168.1.1
2. OSPF 설정 (Quagga 사용)
router ospf
network 192.168.1.0/24 area 0
network 10.0.0.0/24 area 0
라우팅 최적화 전략 🎯
1. 메트릭 설정
# 특정 경로의 메트릭 값 설정
ip route add 10.0.0.0/24 via 192.168.1.1 metric 100
2. 로드 밸런싱
# 다중 경로 설정
ip route add 10.0.0.0/24 nexthop via 192.168.1.1 weight 1 \
nexthop via 192.168.1.2 weight 1
문제 해결과 디버깅 🔍
1. 기본 문제 해결 명령어
# 경로 추적
traceroute google.com
# 연결성 테스트
ping 8.8.8.8
# 라우팅 테이블 확인
ip route show
2. 고급 디버깅
# 패킷 캡처
tcpdump -i eth0 -n
# 라우팅 프로토콜 로그 확인
tail -f /var/log/quagga/zebra.log
성능 최적화 팁 💪
경로 집약
- 여러 작은 네트워크를 하나의 큰 네트워크로 통합
- 라우팅 테이블 크기 감소
정책 기반 라우팅
- 트래픽 유형에 따른 경로 설정
- QoS 요구사항 충족
보안 고려사항 🔒
라우팅 보안
- 인증 설정
- 필터링 규칙 적용
모니터링
# 라우팅 변경 감시 watch -n 1 'ip route show'
참고 자료 📚
Cisco Networking Academy
RFC 2328 (OSPF Version 2)
Linux Advanced Routing & Traffic Control
728x90
'100===Dev Ops > Iptables' 카테고리의 다른 글
리눅스 방화벽의 핵심, iptables 완벽 가이드 🛡️ (0) | 2024.11.18 |
---|---|
Iptables Introduced (0) | 2024.06.13 |