[Network] EIGRP 구현

 EIGRP 구현


  • EIGRP는 IGRP의 기능을 향상 (Enhanced)시킨 라우팅 프로토콜로 거리벡터 라우팅 프로토콜
  • 클래리스(서브넷과 함께 전송)의 속성을 가진다.
  • 224.0.0.10의 멀티케ㅡ트 주소를 사용하고 88번 포트를 활용한다.
  • IGRP는 현재 네트워크에서 단종되어 활용하지 않는다.
  • EIGRP는 기본적으로 자동요약 (auto-summary)기능을 수행하고 Proccess-ID로 반드시 AS 넘버를 사용한다
  • AS넘버는 자율시스템 번호 라고 해서 같은 네트워크의 라우터 들의 집합 번호로 이번호를 같게 해야 같은 네트워크로 판단한다.
  • EIGRP는 기본적으로 RIP와 같은 거리벡터 라우팅 프로토콜 임에도 DUAL(diffusing Update Algorithm)을 수행하여 최적의 경로를 선출하는등 기능적으로 많은 부분이 다르다 
    • RIP은 15홉 카운트를 사용하며 네트워크 상황을 반영하지 않은채 무조건 홉 수가 적은 경로를 최적의 경로로 선택한는데 EIGRP는 라우팅 테이블과는 별도로 토폴로지 테이블이라는 것을 가진다 
    • 토폴로지 테이블에는 bandwidth라는 대역폭을 계산하여 속도에 대한 응답성을 활용 한다.



DUAL 기본적인 동작
  • 위 토폴로지에 정상적으로 연결되어있던 r1의 f0/0 구간이 다운되면 r1은 이사실을 자시과 직접 연결된 r2에게 바로 알리게 된다.
  • R2는 r1에게 메시지를 받았다는 ACK를 전송
  • R1은 r2에게 ㅈ신과 연결된 f0/0구간으로 도달할수있는지를 질의하는 EIGRP Query메세지를 전송한다
  • R2는 r1에게 EIGRP Query를 수신하였다는 ACK을 보내도 이에대한 응답으로 EIGRP Reply메세지를 전송하는데 이때 경로에 도달할수 있는지 없는 지에 대한 응답이 포함되어 전송된다
  • R1은 r2에게 EIGRP Reply를 수신하였다는 ACK를 보낸다.

EIGRP 업데이트

  • EIGRP는 RIP과 같이 자신의 라우팅 테이블전체를 일정 주기를 가지고 이웃 라우터 에게 전송하지 않는다. 대신 부분적 업데이트와 제한적 업데이트라는 2가지의 업데이트 방식을 수행한다.
  • 부분적 업데이트 
  • 특정경로에 변화가 생겼을 경우 특정 변화된 부분만 업데이트를 한다.
  • 제한적 업데이트
  • 부분적 업데이트에 영향을 받은 라우터들에게만 업데이트가 전달 디어 지는 현상
  • 장점 : 필요한 정보만 업데이트하기 때문에 네트워크가 대형화 된곳에 소요되는 시간 / 자원을 절약 할 수 있다.

EIGRP의 네이버 (neighbor)


EIGRP는 동작하는 상호간에 라우팅 정보를 교환하기 전에 네이버를 확인하여 인접관계를 구성하는데 이때 사용하는 패킷이 헬로우(hello)패킷이다 
이패킷은 ip주소 224.0.0.10을 사용하며 네트워크에 따라 헬로우 패킷을 보내는 주기가다르다
1.544Mbps 이하 : 멀티포인트 ,  프레임 릴레이
헬로우 주기가 60초 /유지시간이 180초
1.544Mbps 이상 : 이더넷 ,T1 ,PPP ,HDLC (f0/0)
헬로우 주기가 5초 / 유지 시간이 15초 
위내용을 살펴보면 저속은 60초에 한번씩 고속은 5초에 한번씩 주고 받고 유지시간은 그의 3배수의 시간을 사용한다.


EIGRP 토폴로지 구현


EIGRP 설정 



EIGRP는 router –id를 설정할수 있는데 EIGRP에 루프백 주소를 중 가장 높은 것을 router id로 사용하고 루프백 주소가 없다면 물리적 인터페이스에 설정된 ip주소중 가장 높은 주소를 router-id로 사용하게 된다.
Router-id가 가장 높은 라우터를 대장으로 선출하고 토폴로지를 생성한다.
우리는 루프백 인터페이스를 사용하여 router-id를 따로 주지않는다.
EIGRP의 process-id로 AS넘버를 1~65535범위내에서 선택한다. 우리는 501로 선정 
이웃 라우터와 이 번호가 다르면 통신이 되지 않는다.
선언하는 방식은 와일드 카드 마스크를 가지는 network명령어와 이를 가지지않는  network 명령어로 선언하는 2가지 방식이 있다.
EIGRP는 클래리스 라우팅 프로토콜 이므로 생략 가능하다.
NETWORK 1.1.1.1 생략 
NETWORK 1.1.1.1 0.0.0.255(서브넷을 반전: 와일드 카드 마스크)


라우팅 테이블 분석
D : EIGRP 코드값 /90:AD값 / 3139840 :대역폭 계산


네이버 정보

how ip eigrp neighbors (이웃된 정보를 확인 ) 
501 : AS넘버가 501번 (프로세스 id)
H : 네이버가 학습 순에 따라 표시
Interface : 이웃하는 라우터와 연결된 인터페이스 
hold : 헬로우 패킷 수시할 때 최대 시간으로 갱신 
Uptime : 네이버 맺은후 시간 
SRTT : 패킷이 네이버가 갔다가 되돌아오는 시간.
ROT : 신뢰성 있는 EIGRP 패킷 관리를 위해 재전송 타임아웃 
Q Cnt : 전송 대기중인 패킷 / 0이 아니면 전송하지 못한 패킷이 있다.




프로토콜 정보 

Show ip protocols
대역폭 계산에 사용되는 가중치 값 확인
K1(대역폭)/k2(부하)/k3(지연)/k4(신뢰성)/k5(신뢰성)
변경법 : metric weights 0 1 1 1 1(고급관리자가 아니면 변경 금지 )
공식 : 메트릭 = [k1 * 대역폭]+(k2*대역폭)/(256-부하)+k3*지연]*[k5/(신뢰도+k4)]



EIGRP + 디폴트 라우팅 


EIGRP를 활용하여 내부망을 구축 하였더라도 외부로 나가는 경로를 디폴트 라우팅 하여 셋팅을 해야한다.
IP route 0.0.0.0 0.0.0.0 f0/1
Route eigrp 501
 redistribute static =>eigrp +디폴트 루트


EIGRP 라우터 설정 

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)#int f0/0
r1(config-if)#ip add 192.168.7.1 255.255.255.0
r1(config-if)#no sh
r1(config-if)#do ping 192.168.7.2
r1(config-if)#int s0/0/0
r1(config-if)#ip add 192.168.10.2 255.255.255.0
r1(config-if)#bandwidth 1024
r1(config-if)#no sh
r1(config-if)#int s0/0/1
r1(config-if)#ip add 192.168.11.2 255.255.255.0
r1(config-if)#cl
r1(config-if)#clock ra
r1(config-if)#clock rate 64000
r1(config-if)#bandwidth 64
r1(config-if)#ip add 192.168.11.1 255.255.255.0
r1(config-if)#do wr
Building configuration...
[OK]
r1(config-if)#no sh

Router>en
Router#conf t

r2(config-if)#ip add 2.2.2.2 255.255.255.0
r2(config-if)#int f0/0
r2(config-if)#ip add 192.168.9.1 255.255.255.0
r2(config-if)#no sh
r2(config-if)#int s0/0/0
r2(config-if)#bandwidth 1024
r2(config-if)#clock rate 64000
r2(config-if)#ip add 192.168.10.1
% Incomplete command.
r2(config-if)#ip add 192.168.10.1 255.255.255.0
r2(config-if)#no sh
r2(config-if)#do ping 192.168
r2(config-if)#do ping 192.168.10.2
Type escape sequence to abort.
Success rate is 100 percent (5/5), round-trip min/avg/max = 31/31/32 ms
r2(config-if)#int s0/0/1
r2(config-if)#clock rate 64000
r2(config-if)#ip add 192.168.12.1 255.255.255.0
r2(config-if)#no sh
%LINK-5-CHANGED: Interface Serial0/0/1, changed state to down
r2(config-if)#do wr
Building configuration...
[OK]
r2(config-if)#
Router>en
Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#hostname r3
r3(config)#int loopback 0
r3(config-if)#ip add 3.3.3.3 255.255.255.0
r3(config-if)#int f0/0
r3(config-if)#ip add 192.168.8.1 255.255.255.0
r3(config-if)#no sh
r3(config-if)#int s0/0/0
r3(config-if)#bandwidth 64
r3(config-if)#ip add 192.168.11.2 255.255.255.0
r3(config-if)#no shut
r3(config-if)#do ping 192.168.11.1
Type escape sequence to abort..
r3(config-if)#int s0/0/1
r3(config-if)#ip add 192.168.12.2 255.255.255.0
r3(config-if)#no sh




댓글