|
|
★ EIGRP(Enhanced IGRP)의 특징
- IGRP(Interior Gateway Routing Protocol)의 기능을 향상시킴
- 거리벡터 라우팅 프로토콜에 속하면서 클래스리스 속성을 가지고 있다
- 멀티캐스트 주소(224.0.0.10)를 사용하고 포트 88번을 프로토콜로 사용함
- 자동요약(Auto-summary) 기능을 수행하고 Process-ID로 반드시 자율시스템(Autonomous System) 번호를 사용하여야 함
- 자율시스템 번호는 동일한 관리를 받는 라우터들의 집합을 나타내는 번호로 RIP와는 달리 EIGRP는 (Process-ID가 다른) 여러 개의 EIGRP가 한 라우터 상에서 동작할 수 있음
- 신뢰할 수 있는 프로토콜인데 이는 RTP(Reliable Transport Protocol)를 사용하기 때문임
- RTP는 제4계층 프로토콜로 신뢰성 또는 비신뢰성 패킷 전달 기능을 모두 가지고 있으며, 신뢰성 있는 전달은 수신측의 Ack를 필요로 하지만 비신뢰성인 경우 수신확인이 필요하지 않고 멀티캐스트나 유니캐스트 방식으로 패킷을 전달할 수 있음
★ EIGRP의 DUAL (Diffusion Update Algorithm) 알고리즘
- EIGRP는 기본적으로 거리벡터 라우팅 알고리즘이지만 DUAL을 수행하여 최적 경로를 선출한다.
- RIP는 최대 홉 카운터가 15이고 네트워크의 상황을 반영하지 않은 채 무조건 홉수가 적은 경로로 패킷을 전달하는 특징을 가짐
- EIGRP는 라우팅 테이블과 별도로 토폴로지 테이블을 가지고 있고, 토폴로지 테이블에는 특정 네트워크에 도달할 수 있는 여러 경로 정보를 가지고 있음
- EIGRP는 이들 경로들 중 가장 좋은 경로를 선출하고, 선출된 경로가 라우팅 테이블에 등록됨
- 라우팅 테이블에 등록된 경로가 네트워크 상태 변화로 더 이상 사용할 수 없을 경우 EIGRP는 토폴로지 테이블로부터 또 다른 사용 가능한 우회 경로를 찾아내어 라우팅 테이블의 빠른 수렴을 가능케 함
- RIP는 홀드다운 타이머를 사용하지만 EIGRP는 이를 사용하지 않고 라우터들 간의 경로계산(Diffusing computation: 확산 계산)을 통해 루프 없는 경로를 찾아내는 동작을 수행하므로 빠른 수렴이 가능하게 됨
대역폭 - 주파수대의 폭 (범위), 초당 전송될 수 있는 최대량을 의미한다. (BPS)
★ 메트릭 = [K1*대역폭 + (K2*대역폭)/(256-부하)+ K3*지연 + [K5/(신뢰도+K4)]
(가중치들의 디폴트 값: K1 = K3 = 1, K2 = K4 = K5 = 0)
| 대역폭 | = (10,000,000 / Kbps 단위의 병목구간 대역폭)*256 |
| 지연 | = (μsec 단위의 지연 요소의 총합 / 10)*256 |
* EIGRP 설정 예제
| 단계별 | 예제 코드 | 설명 |
| R1 설정 | Router> en Router# conf t Router(config)# hostname R1 R1(config)# int loopback 0 R1(config-if)# ip add 1.1.1.1 255.255.255.0 R1(config-if)# exit R1(config)# int gi0/0 R1(config-if)# ip add 203.230.7.1 255.255.255.0 R1(config-if)# no shut R1(config-if)# exit R1(config)# int se0/0/0 R1(config-if)# ip add 203.230.11.2 255.255.255.0 R1(config-if)# clock rate 64000 R1(config-if)# no shut R1(config-if)# bandwidth 1024 R1(config-if)# exit R1(config)# int se0/0/1 R1(config-if)# ip add 203.230.10.2 255.255.255.0 R1(config-if)# bandwidth 64 R1(config-if)# no shut R1(config-if)# exit R1(config)# exit R1# wr | |
| R2 설정 | Router> en Router# conf t Router(config)# hostname R2 R2(config)# int loopback 0 R2(config-if)# ip add 2.2.2.1 255.255.255.0 R2(config-if)# exit R2(config)# int gi0/0 R2(config-if)# ip add 203.230.9.1 255.255.255.0 R2(config-if)# no shut R2(config-if)# exit R2(config)# int se0/0/0 R2(config-if)# ip add 203.230.10.1 255.255.255.0 R2(config-if)# clock rate 64000 R2(config-if)# bandwidth 1024 R2(config-if)# no shut R2(config-if)# exit R2(config)# int se0/0/1 R2(config-if)# ip add 203.230.12.1 255.255.255.0 R2(config-if)# clock rate 64000 R2(config-if)# no shut R2(config-if)# ^Z | |
| R3 설정 | Router> en Router# conf t Router(config)# hostname R3 R3(config)# int loopback 0 R3(config-if)# ip add 3.3.3.1 255.255.255.0 R3(config-if)# exit R3(config)# int gi0/0 R3(config-if)# ip add 203.230.8.1 255.255.255.0 R3(config-if)# no shut R3(config-if)# exit R3(config)# int se0/0/0 R3(config-if)# ip add 203.230.12.2 255.255.255.0 R3(config-if)# bandwidth 64 R3(config-if)# no shut R3(config-if)# exit R3(config)# int se0/0/1 R3(config-if)# ip add 203.230.11.1 255.255.255.0 R3(config-if)# no shut R3(config-if)# ^Z R3# wr | |
| R1에 EIGRP 설정 | R1# conf t R1(config)# do show ip int brief D 2.0.0.0/24 is [90/3139840] via 203.230.10.1, 00:02:19, Serial0/2/0 R1(config)# router eigrp 7 R1(config-router)# network 203.230.7.0 R1(config-router)# network 203.230.10.0 R1(config-router)# network 203.230.11.0 R1(config-router)# network 1.0.0.0 R1(config-router)# no auto-summary R1(config-router)# ^Z R1# wr | 이웃하는 라우터와 AS 번호가 다르면 통신이 되지 않음 자동경로 요약 기능을 기본적으로 수행하므로 원하지 않으면 “no auto-summary” 명령어를 사용 |
| R2에 EIGRP 설정 | R2# conf t R2(config)# do show ip int brief D 1.1.1.0/24 is [90/3139840] via 203.230.10.2, 00:02:19, Serial0/2/0 R2(config)# router eigrp 7 R2(config-router)# network 203.230.9.0 R2(config-router)# network 203.230.10.0 R2(config-router)# network 203.230.12.0 R2(config-router)# network 2.0.0.0 R2(config-router)# no auto-summary %DUAL-5-NBRCHANGE: IP-EIGRP 7: Neighbor 203.230.12.2 (Serial0/0/1) is up: new adjacency %DUAL-5-NBRCHANGE: IP-EIGRP 7: Neighbor 203.230.10.2 (Serial0/0/0) is up: new adjacency R2(config-router)# ^Z R2# wr | |
| R3에 EIGRP 설정 | R3# conf t R2(config)# do show ip int brief D 1.1.1.0/24 is [90/3139840] via 203.230.12.1, 00:02:19, Serial0/2/1 R3(config)# router eigrp 7 R3(config-router)# network 203.230.8.0 R3(config-router)# network 203.230.11.0 R3(config-router)# network 203.230.12.0 R3(config-router)# network 3.0.0.0 R3(config-router)# no auto-summary R3(config-router)# ^Z R3# wr | |
| 자동 경로 요약 | R1(config)# router eigrp 7 R1(config-router)# auto-summary R1(config-router)# ^Z R2(config)# router eigrp 7 R2(config-router)# auto-summary R2(config-router)# ^Z R3(config)# router eigrp 7 R3(config-router)# auto-summary R3(config-router)# ^Z R1# show ip route D 1.0.0.0/8 is summary 0:08:33, Null0 R2# show ip route D 1.0.0.0/8 is a summary, 00:08:33, Null0 D 2.0.0.0/8 is a summary, 00:00:15, Null0 D 3.0.0.0/8 is a summary, 00:06:47, Null0 R1# show ip eigrp nei R1# show ip protocols Distance: internal 90 external 170 | Null0 인터페이스는 실제 경로가 아닌 가상 경로로서 광고(Advertisement) 목적으로 사용되는 인터페이스임 패킷주소가 클래스풀 주소와 일치되면 해당 인터페이스로 패킷을 전송하고, 일치하지 않으면 Null0가 목적지가 되어 패킷은 라우터에서 폐기됨 EIGRP에서 이웃 라우터와 네이버 관계확인 90, 170: AD (Adminstrator Distance) |
| 메트릭 값 R1 s0/0/1 ⇒ R2 s0/0/0 ⇒ 2.0.0.0/8 | R1# show ip route 2.2.2.0/24 (90/3139840) via 203.230.10.1, 00:20:03, Serial10/0/1 3.3.3.0/24 (90/3651840) via 203.230.10.1, 00:20:03, Serial10/0/1 R1# show int s0/0/1 MTU 1500 bytes, BW 1024 Kbit, DLY 20000 usec, R2# show int s0/0/0 MTU 1500 bytes, BW 1024 Kbit, DLY 20000 usec, R3# show int loopback 0 MTU 1514 bytes, BW 8000000 Kbit, DLY 50000 usec, 대역폭 = (10,000,000/1024)*256 = (9765.625)*256 = 2499840 총 지연 = 20000(R1 ⇒ R2) + 5000(Loopback) 지연 값 = (20000 + 5000)/10*256 = 2500*256 = 640000 메트릭 = 2499840 + 640000 = 3139840 라우터 R1에서 네트워크 2.0.0.0/8로의 메트릭은 3139840 | 최대전송단위(MTU), 대역폭(BW), 지연(DLY), 신뢰도, 부하(tx, rxload) 관리거리 90과 메트릭 3139840 값 BW: 병목구간 대역폭 총지연시간 20000+5000=25000 usec |
| 메트릭 값 R1 s0/0/1 ⇒ R2 ⇒ R3 ⇒ 3.0.0.0/8 | R1# show int s0/0/1 (BW 1024 Kbit와 DLY 20000μsec임을 확인) R2# show int s0/0/0 (BW 1024 Kbit와 DLY 20000μsec임을 확인) R2# show int s0/0/1 … (BW 1544 Kbit와 DLY 20000μsec임을 확인) R3# show int s0/0/0 … (BW 1544 Kbit와 DLY 20000μsec임을 확인) R3# show int loopback 0 … (BW 8000000 Kbit와 DLY 5000μsec임을 확인) 병목구간 대역폭은 1024Kbit 대역폭 = (10,000,000/1024)*256 = (9765.625)*256 = 2499840 총 지연 = 20000(R1⇒R2) + 20000(R2⇒R3) + 5000(Loopback) 지연 값 = (45000)/10*256 = 4500*256 = 1152000 라우터 R1에서 네트워크 3.0.0.0/8로의 메트릭은 3651840임 | |
| 대역폭 | R1# show ip eigrp topology 3.0.0.0 203.230.10.1 (Serial0/2/1) ---> 경로 1 Minimum bandwidth is 1024 Kbit Total delay is 45000 microseconds 203.230.11.1 (Serial0/2/1) ---> 경로 2 Minimum bandwidth is 64 Kbit Total delay is 25000 microseconds | R1로부터 네트워크 3.0.0.0에 도달할 수 있는 경로는 2가지 패킷 전달을 위한 경로는 Se0/2/0 인터페이스로 bw:1024 Kbit, Total delay 는 45000ms 이다. |
| EIGRP DUAL | R1#show ip eigrp topology (어떤 라우터가 차기 후속 라우터가 되기 위해서는 이웃 라우터의 보고 거리(RD)가 로컬 라우터의 유효거리(FD)보다 작아야 하는 유효성 조건을 만족해야 함) | 후속 라우터/ 차기 후속 라우터 |
| 기타 기능 | R1(config)# R1(config-if)# ip hell-interval eigrp 7 <1~65535> (헬로주기 변경) R2(config)# ip route 0.0.0.0 0.0.0.0 loopback 0 (디폴트 경로 설정) R2(config)# router eigrp 7 R2(config-router)# redistribute static (다른 라우터에 재분배) R2(config-router)# exit R2# show ip route S* 0.0.0.0/0 is directly connected, Loopback0 R1# show ip route D 203.230.12.0/24 [90/3523840] via 203.230.10.1, 00:37:56, Serial0/0/1 D*EX 0.0.0.0/0 [170/4291840] via 203.230.10.1, 00:00:55, Serial0/0/1 R3# show ip route D*EX 0.0.0.0/0 [170/3449856] via 203.230.12.1, 00:11:10, Serial0/0/0 |
|
|
