2022. 5. 10. 17:01ㆍNetwork/Routing Protocol
RIP(Routing Information Protocol)
UDP/IP상에서 동작하는 라우팅 프로토콜이다. RIP는 경유할 가능성이 있는 라우터를 홉수로 수치화 하여 거리백터 알고리즘을 이용하여 인접 호스트와의 경로를 동적으로 교환하는 일을 한다. 패킷이 목적 네트워크 주소에 도착할 때까지의 최단 경로를 결정한다. 또 유효 경로를 2개까지 채택하며, 고정 수치를 주어 동일 홉수의 경로가 있는 경우에 우선하는 경로를 제어하는 것이 가능하다. 목적 네트워크 주소, 다음의 홉 IP 주소, 목적 네트워크까지의 홉수 등의 정보는, 라우터 내의 라우팅 DB에 기록되어 라우터끼지 정기적으로 정보를 교환한다. 그 중에서 유효한 경로를 추출한 테이블을 라우팅 테이블이라고 한다. RIP는 UDP를 사용하며 포트 번호는 520을 사용한다.
RIP 특징
1. 거리백터 라우팅 프로토콜이다.
2. 라우팅 메트릭으로 Hop Count(홉 수)만 사용
경로 비용을 단지 홉 수로만 판단 -> 속도나 거리 지연 등을 고려하지 않아 최적의 경로 산정에 비효율적
3. 최대 홉 수의 제한
최대 15 홉 수(16은 무한대)로 제한
홉 수는 라우터를 통과할 때 마다 1씩 증가한다.
4. UDP 세그먼트에 캡슐화되어 사용
RIP 메시지 송수신용 UDP포트
RIPv1, RIPv2 : UDP 520번
RIPng : UDP 521번
5. Classful Routing 수행
서브넷 정보가 아닌 Class 형태의 라우팅 정보만을 전달함으로써 라우팅 정보 전달량이 많다.
단 RIPv2는 라우팅 업데이트 정보에 서브넷 마스크 정보를 포함하여 VLSM지원
6. 주기적인 라우팅 업데이트
매 30초마다 RIP 응답메세지를 브로드캐스팅한다.
상대에게서 수신된 네트워크 정보를 제외한 모든 네트워크 정보를 상대에게 알려준다.
수신 라우터는 자신의 라우팅 테이블을 재작성 하도록 한다.
단 네트워크 경로 항목에서 더 짧은 홉 수를 수신 받았을 때만 해당 라우팅 경로 항목을 교체한다.
RIPv1
1. Classless를 지원하지 않는다
2. Update시 브로드 캐스트를 사용한다
RIPv2
1. Classless를 지원한다 (서브넷팅 된 대역에 대한 정보 전달이 가능)
2. Update시 멀티캐스트(224.0.0.9)를 사용한다
3. 트리거드 업데이트가 사용가능하다.
4. 보안을 위한 인증이 가능하다.
RIP 타이머 (라우팅 경호 업데이트 방식)
Update 타이머 : 30초
- 라우팅 테이블 전체를 브로드캐스트 또는 멀티캐스트 방식으로 송출
Timeout 타이머 : 180초
- 라우팅 테이블에 있는 매 경로 마다 타이머를 둔다
- 업데이트 정보에 해당 경로가 있으면 만료 타이머를 초기화하고 만료 타이머 종료시까지 해당 경로가 없으면 도착 불가능(16)으로 표시한다
Garbage colletion 타이머 : 120초
- 도착 불가능을 16으로 표시하고 주변에 알리며, 즉각 삭제 유예하는 시간
Flush 타이머 : 240초
- 업데이트 없는 경로에 대해서는 라우팅 테이블에서 해당 경로를 제거
Triggered Update
- 토폴로지 변화시 업데이트 타이머 종료전이라도 즉각 라우팅 업데이트 정보 송출
SHAPE \* MERGEFORMAT
RIP 문제점
1. 늦은 수렴성(Slow convergence)
2. 라우팅 트래픽 부하
– 전체 경로를 담은 라우팅 테이블을 주기적으로 브로그캐스트하기 때문에 네트워크에 트래픽 부하를 준다.
3. 라우팅 루프
- 전 라우터들 사이에 동기화를 시켜주지 않으면 패킷의 경로가 부적절하게 될 수 있다.
- 매 30초 마다 업데이트 되는 까닭에 Down등의 나쁜 소식이 늦게 전달되어 잘못된 경로로 무한 루프가 도는 사태가 발생한다.
4. Count ot Infinity
- 느린 수렴 시간 때문에 나쁜 경로를 다른 라우터에게 전하면 그 라우터는 더 느리게 더 나쁜 정보로써 다른 라우터에게 전하게 되면서 결국 무한 홉 수로 가는현상이다.
RIP 문제점에 대한 해결책
1. 최대 홉 수의 제한
2. 트리거드 업데이트 – 전체 라우팅 정보를 주기적으로 전달하지 않고, 변화된 네트워크만 라우팅 업데이트
3. Holddown 타이머 – 나쁜 경로에 대해 일정 시간 동안 동일한 경로에 대해 새 소식이 전해지더라도 일정기간 동안 이를 무시
4. Split Horizon – 어떤 링크에서 받은 업데이트 정보에서 배운 네트워크에 대해서는 그 링크쪽으로 라우팅 정보를 다시 전파하지 않음
5. Posion/Posion Reverse – 네트워크 down시 이를 무한 선언하면서 상호교신
Spilt Horizon
위 그림에서 Split Horizon 기능을 껴야 통신이 된다. 하지만 여기서 loop 발생하게 되는데
첫번째 논리적 상황
위 그림이라면 라우팅 정보를 주고 받을 때 정보를 받은 인터페이스로는 정보가 다시 나가는 것이 불가능 하기 때문에 Split Horizon기능을 꺼주면 무한 루프가 발생 할 수 있다.
두번째 논리적 상황
위 상황은 Hub and Spoke 구조이기 때문에 무한 루프가 발생하지 않는다
만약 Hub and Spoke구조로 해결 할 수 없는 상황이라면 지금 상황과 같은 무한 루프느 거리 백터 알고리즘을 사용하여 일어나는 루프이기 때문에 링크 스테이트 알고리즘 라우팅 프로토콜을 이용하면 루프에 빠지지 않을 수 있다.
MD(Message Digest)
데이터 무결성을 위해 메시지 압축/축약/다이제스트를 하는 해시 알고리즘
- 임의 길이의 입력 메시지 : 특정 고정 크기의 축약된 블록들을 출력
MD4
암호화 알고리즘이 아닌 데이터 무결성을 점검(위변조 방지)
128비트의 해시값을 갖는 해시 알고리즘
MD4의 확장판 MD5 및 기타 SHA 계열, RIPEMD 모두 MD4 원리에 기반
MD5
해시값 길이는 MD4와 마찬가지로 128비트를 사용하고 충돌 방지 확률은 264이다
MD5는 MD4에 비해 속도가 빠르지는 않지만, 데이터 보안성이 좋다
실습
물리적 구성
데이터 흐름
1. 2Page 물리구성도를 보고 물리적인 연결을 완료하라.
2. 전체 네트워크를 RIP로 연동하여, 라우팅 정보를 업데이트하라.(version2, no auto)
Frame-relay switch 설정
1:102 2:201
1:103 3:301
R1
conf t int lo0 ip add 1.1.1.1 255.255.255.0 no sh int s1/0 encapsulation frame-relay no frame-relay inverse-arp no sh exit int s1/0.123 multipoint ip add 123.123.123.1 255.255.255.0 frame-relay map ip 123.123.123.2 102 broadcast frame-relay map ip 123.123.123.3 103 broadcast end conf t router rip ver 2 no auto net 1.1.1.0 net 123.123.123.0 exit |
R2
conf t int lo0 ip add 2.2.2.2 255.255.255.0 no sh exit int s1/0 encapsulation frame-relay no frame-relay inverse-arp no sh exit int s1/0.12 point-to-point ip add 123.123.123.2 255.255.255.0 frame-relay interface-dlci 201 exit exit int f0/1 ip add 26.26.26.2 255.255.255.0 no sh end conf t router rip ver 2 no auto net 2.2.2.0 net 123.123.123.0 net 26.26.26.0 exit |
R3
conf t int lo0 ip add 3.3.3.3 255.255.255.0 no sh exit int s1/0 encapsulation frame-relay no frame-relay inverse-arp no sh exit int s1/0.13 point-to-point ip add 123.123.123.3 255.255.255.0 frame-relay interface-dlci 301 exit exit int f0/0 ip add 37.37.37.3 255.255.255.0 no sh end conf t router rip ver 2 no auto net 3.3.3.0 net 123.123.123.0 net 37.37.37.0 exit |
R4
conf t int lo0 ip add 4.4.4.4 255.255.255.0 no sh int f0/0 ip add 46.46.46.4 255.255.255.0 no sh end conf t router rip ver 2 no auto net 4.4.4.0 net 46.46.46.0 exit router rip nei 46.46.46.6 exit |
R5
conf t int lo0 ip add 5.5.5.5 255.255.255.0 no sh int f0/1 ip add 57.57.57.5 255.255.255.0 no sh end conf t router rip ver 2 no auto net 5.5.5.0 net 57.57.57.0 exit |
SW6
conf t vlan 10 vlan 20 vlan 30 int lo0 ip add 6.6.6.6 255.255.255.0 no sh int vlan 10 ip add 26.26.26.6 255.255.255.0 no sh int vlan 30 ip add 46.46.46.6 255.255.255.0 no sh int f1/3 sw m a sw a v 20 int f1/4 sw m a sw a v 30 int f1/10 sw m t exit ip routing router rip ver 2 no auto net 6.6.6.0 net 26.26.26.0 net 46.46.46.0 exit router rip nei 46.46.46.4 exit |
SW7
conf t vlan 10 vlan 20 vlan 30 int lo0 ip add 7.7.7.7 255.255.255.0 no sh int vlan 20 ip add 37.37.37.7 255.255.255.0 no sh int f1/2 sw m a sw a v 10 int f1/5 no switchport ip add 57.57.57.7 255.255.255.0 no sh int f1/10 sw m t exit ip routing router rip ver 2 no auto net 7.7.7.0 net 37.37.37.0 net 57.57.57.0 exit |
3번 R3와 SW7은 MD5 인증을 실시
R3 key chain TEST key 1 key-string cisco int f0/0 ip rip authentication mode md5 ip rip authentication key-chain TEST SW7 key chain TEST key 1 key-string cisco int vlan 20 ip rip authentication mode md5 ip rip authentication key-chain TEST |
인증을 하기 위해서는 Key값과 key-string값이 같아야한다. 또한 chain 값을 같게 한 이유는 서로 같은 인증을 대역의 인증을 하기 때문에 관리차원으로 같은 이름 값을 부여해 주었다. 또한 인증 설정은 각 인터페이스에 들어가서 설정해주면 된다.
4번 모든 라우터를 Passive default로 설정하고, RIP 연동 구간만 해제하라
R1 router rip passive default no passive s1/0.123 R2 router rip passive default no passive s1/0.12 no passive f0/1 R 3router rip passive default no passive s1/0.13 no passive f0/0 R4 router rip passive default no passive f0/0 R5 router rip passive default no passive f0/1 SW6 router rip passive default no passive vlan 10 no passive vlan 30 SW7 router rip passive default no passive f1/5 no passive vlan 20 |
Passive 모드를 설정하는 큰 이유는 불필요한 트래픽과 보안을 위해 설정하는 것이다. 만약 loop back이 아니라 각 loop back주소에 맞는 네트워크 인프라가 개설 되었다고 생각하면, 각 인프라장치들까지도 라우팅 테이블이 전송 될 것이다. 하지만 이는 라우터 말고는 필요 없는 정보들이라 Drop을 하게 될 것이다. 이 Drop되는 데이터도 불필요한 트래픽이기 때문에 이를 방지하기 위해서 passive를 설정 한다.
Passive default : 전체를 막고 필요한 부분만 허용한다(화이트리스트)
Passive interface interface명 : 허용된 상태에서 불필요한 부분만 막는다(블랙리스트)
막을 것이 많으면 화이트리스트, 허용할 것이 많으면 블랙리스트를 사용하는 것이 설정하기 간편하다
5번 R5에서 SW7쪽으로 Default-route정보를 업데이트하라.
int f0/1 ip summary-address rip 0.0.0.0 0.0.0.0 |
Summary는 축약이란 뜻을 가지고 있다. 처음 인프라 구성단계에서 no-autosummary를 사용했고, 수동으로 Default-route를 사용하라고 했으니 설정 인터페이스에 들어가서 수동 summary를 적용해 주었다. 이는 많은 수의 라우팅 테이블정보를 간편화 할 수 있는 장점이 있다.
6번 SW6와 R4는 유니캐스트로 정보를 업데이트 하라.
R4 Router rip nei 46.46.46.6 SW6 router rip nei 46.46.46.4 |
RIPv2는 기본적으로 멀티캐스트가 적용되어 있기 때문에 유니캐스트로 바꿔 주었다.
7번 R1에서 Split-horizon 기능을 해제하여, R2, R3가 서로 정보를 전달되게 하라.
int s1/0.123 m no ip split-horizon |
'Network > Routing Protocol' 카테고리의 다른 글
Redistribution(재분배) (0) | 2022.05.30 |
---|---|
EIGRP (0) | 2022.05.15 |
OSPF(Open Shortest Path First) (0) | 2022.05.10 |