본문 바로가기
IT/Network (네트워크)

EIGRP 프로토콜 정의 및 특징

by 위로(UPandHealing) 2023. 5. 8.

EIGRP는 불안정한 라우팅을 최소화하는데 최적화된 디스턴스 벡터 라우팅 프로토콜이다. 변화가 있을 때만 업데이트를 진행하는 트리거드(Triggered) 업데이트 방식을 사용한다. EIGRP도 RIPv2와 마찬가지로 md5를 이용하여 보안적인 측면을 강화시킬 수 있다. EIGRP는 FD 메트릭 값을 이용하여 최적의 경로를 선출하는데, FD 메트릭 값이 작은 링크가 최적의 경로로 선출이 되고 그다음 값이 후속 경로로 선출된다. 후속 경로는 백업 경로의 개념으로 보면 된다. 후속 경로가 없는 경우도 있는데 FD 메트릭 값과 다른 링크의 AD 메트릭 값이 동일한 경우에는 후속 경로는 선출되지 않는다. FD 메트릭 값은 출발지에서 목적지까지 거리에 대한 값을 의미하고 AD 메트릭 값은 인접한 다음 라우터에서 목적지까지에 대한 값을 의미한다. 


EIGRP(Enhanced Interior Gateway Routing Protocol)

 

1. EIGRP 정의 및 특징

  - 시스코사가 만든 IGRP 기반의 개방형 프로토콜이다. 

  - 라우터 내 대역폭 및 처리 능력의 이용뿐 아니라, 토폴로지(망 구성 방식)가 변경된 뒤에 일어나는 불안정한 라우팅을 최소화하는데 최적화된 고급 거리 벡터 라우팅 프로토콜이다. (출처 : https://ko.wikipedia.org/wiki/EIGRP )

  - 자동요약을 수행하기 때문에 ' no auto summary ' 컨피그가 필수이다.

  - 변화가 있을 때 만 업데이트를 진행한다.(트리거드 업데이트 방식)

  - neighbor 관계를 맺고 업데이트를 한다.

  - VLSM, CIDR 기능이 보장된다.

 

 

2. EIGRP 컨피그 설정

router eigrp ? [ 1 ~ 65535 ]   AS번호 동일
router eigrp 100 ( 100은 임의로 넣어준 숫자 )
no auto
net 13.0.0.0
net 172.16.0.0
net 192.168.10.0
passive-interface lo 172 e0/0 // 해당 포트에 불필요한 업데이트 차단한다

- 포트 하나에 IP 여러 개 넣을 수 있다.

( secondary 명령어를 사용하면 된다. GNS3에서 사용이 가능하며 패킷트레이서에는 적용되지 않는다. )                  

 

 

3. EIGRP에서 MD5 해시함수 이용 인증

- RIP과 동일한 방법으로 설정하면 되고 이름은 달라도 키값과 암호는 동일하게 설정한다.

- 인가되지 않은 외부 라우터와 네이버 성립으로 인한 라우팅 정보를 수신하거나, 업데이트 및 데이터 변조를 방지하기 위한 기능이다.

- 인증 정보가 다르거나 AS가 다르면 네이버 관계를 해지한다.

 

- md5 컨피그 설정

R1(config)#key chain eigrp-k
R1(config-keychain)#key 13
R1(config-keychain-key)#key-string cisco
R1(config-keychain-key)#int s1/0
R1(config-if)#ip authentication mode eigrp 100 md5
R1(config-if)#ip authentication key-chain eigrp 100 eigrp-k
R1(config-if)#end
R1(config-if)#do show ip eigrp neighbor

▶R1에서만 인증하여 R2에서 neighbor 인증을 확인하고 , 다시 R2에서도 인증 설정한다. 인증 설정이 다 끝나면 삭제해 보기. ( show run / do ip sh ro 등)

 

 

4. EIGRP 동작과정

 - 네이버 관계를 맺고 라우팅 업데이트를 진행한 다음 최적의 경로를 선출해서 등록한다.

 

1) EIGRP 동작 과정 1

EIGRP-동작-과정-1
EIGRP-동작-과정-1

▶ R1에서 R2 hello packet을 보낸 후, R2R1hello packet을 보낸다. 서로 hello packet을 교환하고 R1에서 자기 테이블의 update 정보를 R2에 보낸다. R2는 잘 받았다면 ACK를 보낸다.

 

 

2) EIGRP 동작 과정 2

EIGRP-동작-과정-2
EIGRP-동작-과정-2

▶R1에서 13.13.10.0에서 문제가 생겼으니 보내지 말라는 query packetR2에 전송한다. R2에서 query packet을 받았다는 응답 메시지 Ack를 보낸다. 그다음 R2에서 R2 라우터에서도 해당 문제를 등록했다는 reply 메시지를 보낸다. R1에서 reply 메시지를 받았다는 Ack R2에 보낸다.

 

 

3) EIGRP 경로 선출

  - 최적 경로( Successor) : 출발지에서 목적지까지 가기 위한 가장 좋은 경로이다.

  - 후속 경로( Feasible Successor ) : 최적경로 장애발생 시 백업 경로이다.

  - FD 메트릭(Feasible Distance ) : 출발지에서 목적지까지 가는데 소용되는 시간이다.

  - AD 메트릭 ( Advertised Distance ) : 다음 라우터( neighbor )에서 목적지까지 메트릭이다.

 

- 최적경로, 후속경로가 선출되는 경우

: FD metric 값이 작은 것이 최적 경로로 선출된다. 그다음 값이 후속 경로로 선출된다.

EIGRP-최적경로-후속경로-선출
EIGRP-최적경로-후속경로-선출

 

- 최적경로만 선출되는 경우

: 위의 FD 메트릭 값(2809856)과 아래의 AD 메트릭 값(2809856)이 동일한 경우,  R1에서 목적지까지 가는 시간과 R3에서 목적지까지 가는 시간이 같다. , 아래 AD 메트릭 값이 위의 FD 메트릭 값보다 같거나 크면 후속경로는 무시된다.

EIGRP-최적경로-선출
EIGRP-최적경로-선출

 

4) 패킷 내용 설명

 -  A (Active) : 최적경로를 찾기 위한 계산 진행 중인 것을 의미한다.

 - U (Update) 패킷

P-to-P : 연결된 네이버 라우터 IP에 유니캐스트로 보낸다.

Broadcast       멀티캐스트로     224.0.0.10

NonBroadcast   유니캐스트로      [ 연결된 네이버 라우터 IP ]

 

 - Q (Query) : 토폴로지가 변경되거나 장애발생 시 알려주거나 다른 경로를 질의할 때 사용한다.

 - R (Reply) : 수신한 Query 패킷에 대한 응답 한다.

 - P (Passive) : 최적의 경로 (FD, 메트릭 값) 선출된다. 등록을 하면 D(EIGRP)로 나온다.

 -  Ack : Update, Query, Reply 패킷에 대한 응답 확인용으로 사용된다.

  * neighbor 관계 유지를 위해서 Hello패킷을 5초 단위로 교환한다. 만약, 15초 동안초동안 받지 못하면 neighbor 해지한다.

 

- 만약, 토폴로지에 변화가 생겼다면 Query 패킷으로 질의를 한다.

query-packet-내용
query-packet-내용

▶ delay값이 상당히 큰 것을 확인할 수 있다. , 패킷이 목적지에 도달할 수 없다는 뜻이다.

 

 

5. EIGRP 균등 로드 분산과 비균등 로드 분산

 1) 균등 로드 분산

 - sh ip protocols로로 로드분산 개수 확인

 - Maximum path: 4   => 지원되는 균등 로드 분산 최대 개수이다.

 

2) 비균등 로드 분산 : 최적경로가 선출되고, 후속경로가 선출된 경우에 명령어를 이용해서 확인한다.

 

EIGRP-비균등-로드-분산

▶최적 경로는 1, 후속 경로는 2

 

 

6. EIGRP 정보 확인 명령어

#sh ip protocols // 설정된 프로코롤의 자세한 정보 확인한다.
#debug ip packet detail // 패킷의 상세 확인한다. (undebug all 필수)
#sh ip eigrp neighbors // 네이버 상태 확인한다.
#sh ip eigrp topology // 로컬정보와 업데이트된 정보 확인한다.
#sh ip ro eigrp // EIGRP 라우팅 테이블 확인한다.
#debug eigrp packets query /reply /ack /update : 모두 확인도 가능하고 개별적으로 확인도 가능하다

 

 

7. EIGRP 트러블 슈팅 문제

- 연결이 안 되었다고 알려주는 패킷이 ICMP라고 한다.

- 한쪽만 no auto가 안되어 있거나 rip의 경우에는 버전이 다를 경우 통신이 안된다.

- pc3pc5에서 다른 pcping 이 가능하도록 설정한다. 

 

EIGRP-트러블-슈팅
EIGRP-트러블-슈팅

 

- pc3pc5에서 ping이 안된 이유

1. Router C에서 eigrp 넘버가 22로 설정되어 있었다. ▶ eigrp 212로 수정한다.

2. Router A에서 advertisement 되지 않은 네트워크가 있었다. ▶ 추가하여 수정한다.

 

▶ 네트워크 추가 설정하니까 adjacency가 되었다. , neighbor가 맺어졌다

EIGRP-adjacency
EIGRP-adjacency

네트워크 추가 설정하니까 adjacency가 되었다. , neighbor가 맺어졌다.

 

ping확인
ping확인

▶ ping이 이제 잘 된다!!

반응형

댓글