- Routing이란?
- 네트워크에서 패킷이 올바른 경로로 (혹은 최적의 경로로) 찾아가기 위해서 다양한 방법을 통해 길을 찾아주는 것.
- Routing Protocol의 분류
- Static Routing Protocol
- 말그대로 정적으로 라우팅 경로를 지정해 주는 것
- 구성이 매우 간단하고 엔지니어가 원하는 경로로 패킷을 보낼 수 있다.
- 만약 토폴로지에 문제가 있을 경우 해결할때까지 라우팅이 불가능하다.
- 주로 Stub network에 적용한다.
- Stub Network란 네트워크로 들어가는 길과 나가는 길이 하나인 것을 말하며,
네트워크로 들어갈때는 네트워크 안의 주소로 Static Routing,
네트워크에서 밖으로 빠져나갈때는 Default Static Routing(0.0.0.0/0)을 사용한다. - Static routing의 명령어 형식
- #ip route A.B.C.D [mask] [address or interface] {수동AD값} {permanent}
- #ip route 0.0.0.0 0.0.0.0 [add or int] {AD} {permanent}
- permanent는 상대방 인터페이스가 다운되었을 때도 유지해준다. (미확인)
- Dynamic Routing Protocol
- 동적으로 라우팅 경로를 할당할 수 있게 해주는 프로토콜
- 기본적으로 라우팅 프로토콜을 올리면 알아서 경로를 선택할 수 있도록 해준다.
- RIP,EIGRP,OSPF 와 같은 프로토콜을 말한다.
- IGP vs EGP
- AS [Autonomous System] 이란 일정규모의 한 네트워크를 말하는 것으로 한 관리자에 의해서 관리되는 라우터들의 집단을 말한다. -> 회사 규모나 사이트 규모를 말한다.
- IGP [ Interior Gateway Protocol ]
- AS 안에서 돌아가는 라우팅 프로토콜을 말하며 RIP, EIGRP, OSPF등을 말한다.
- EGP [ Exterior Gateway Protocol ]
- AS 사이를 연결해 주는 라우팅 프로토콜을 말하여, BGP와 같은 프로토콜을 말한다.
- IGP 와 EGP의 예
- 예를들어 A회사에서 B회사로 간다고 쳤을때, IGP->EGP->IGP 를 통해 상대방에게 연결이 된다.
- AS를 쓰는 목적은 A회사에서 안에서 subnet을 하여 세분화 하여 복잡한 네트워크를 가진 네트워크 간 통신이라도 IGP의 Gateway만 알면 된다. 즉, AS내부에서의 통신은 IGP를 통해서, AS간의 통신은 EGP로 통신을 해서 세분화되고 좀 더 효율적인 구성을 위하여 구분되는 것이다.
- Distance Vecter VS Link-State
- Distance Vecter
- 말 그대로 Distance(거리) Vecter(방향) -> 거리와 방향을 사용하는 방식으로 라우터 자신에게서 목적지로 어느 방향이 어느정도 거리인지를 안다고 생각하면 쉽다.
- 주기적인 라우팅 테이블을 교환한다.
- 라우터간 Full-Routing table을 교환한다.
- 자신과 주변만을 참고 하기 때문에 Looping에 빠질 수 있다.
- Link-State
- 말 그대로 Link(링크) State(상태) -> 링크의 상태를 보는 라우팅 프로토콜로 앞의 DV와는 달리 링크의 Bandwidth나 Delay와 같은 링크의 세부정보를 따져서 라우팅을 결정한다.
- 전체적인 Topology를 참고하여 라우팅을 한다. 이 말은 DV는 나침반이라고 볼수 있고, LS는 네비게이션과 같다고 할 수 있다.
- 라우팅 테이블을 교환할 때는 어떠한 토폴로지에 변화가 있을 때 교환한다. 이를 Event-Triggered 방식이라 한다.
- 전체적인 토폴로지를 보고 결정하기 때문에 DV 보다 계산이 많기 때문에 부하가 크다.
- RIP
- Metric = Hop count (몇개의 라우터를 지나는지)
- 최대 Hop count 는 15를 넘어갈 수 없다. 15를 넘어가면 Unreachable로 간주된다.
- 라우팅 테이블을 30초마다 업데이트 하기 때문에 잘못된 정보가 전달되어 Looping이 생기기 쉽다.
- RIP v1 vs RIP v2
- RIP v1은 Classful 한 네트워크만을 광고한다. RIP v2는 VLSM을 지원하여 Classless하게 광고가 가능하다.
- RIP v2는 MD5 인증을 지원하는 것에 비해 RIPv1은 아무런 인증도 지원하지 않는다.
- 패킷을 가로채면 모든 데이터를 볼 수 있다.
- RIP v1은 Broadcast를 사용하여 광고하였으나 RIPv2는 Multicast를 사용하여 광고한다.
- 불필요한 네트워크 트래픽을 줄일 수 있게 하였다.
- EIGRP
- EIGRP는 어떤 라우팅 프로토콜인가?
- Distance Vecter와 같이 거리와 방향을 가지고 라우팅 테이블을 만들어 라우팅을 한다
- Link-State와 같이 Event Triggered 방식으로 업데이트를 진행한다.
- 위의 두 개념이 합쳐 만들어진 것으로 Balanced Hybrid Protocol이라 불린다.
- 이는 IGRP에서 Enhanced 된것으로, 기존에는 Distance Vecter 만을 사용하는 라우팅 프로토콜이었다.
- EIGRP는 메트릭을 bandwith,delay,relability,load,MTU를 사용하여 계산하지만 사실 EIGRP의 metric을 계산하는 공식은
- Metric = 256*((K1*Bandwidth) + (K2*Bandwidth)/(256-load) + (K3*delay)*(K5/(Reliability + K4)))
- 이다. K1의 값을 설정하여 이를 변화시킬 수 있는데 default 값은 K1, K3 만 1이다.
- 그래서 실제적인 Metric은 Bandwidth와 Delay만을 참고한다.
- 라우팅 테이블에 EIGRP가 올라오기 전 행동
- IP EIGRP Neighbor Table에 근처의 Neighbor들을 어느 Interface로 통해 연결될 수 있는지 기록한다.
- IP EIGRP Topology Table에 FD(Feasible Distance)와 AD(Advertised Distance=Reported Distance)를 기록한다.
- FD = 자신을 중심으로 목적지 까지의 Metric
- AD = 자신의 다음 라우터 (next hop) 로부터 목적지까지의 Metric
- IP Routing Table에 Toplogy를 참고하여 경로를 라우팅 테이블에 올린다.