<라우터 업데이트 루핑 방지법>

1. Maximum Hop Count

최대 홉 카운트를 15로 규정하고 15를 넘어가는 라우팅 경로에 대해서는 unreachable로 간주한다.

단, 네트워크의 규모가 커질 경우 치명적인 약점이다.

 

2. Hold down Timer



라우터 E에 붙어있는 네트워크 A다운 → 라우터E는 네트워크 A가 다운되었다는 것을 라우터 A에게 알림 → 라우터 A는 네트워크 A에 대한 Hold down 타이머를 시작 → 타이머가 동작하고 있는 동안에는 외부에서 해당 네트워크에 대한 라우팅 경로 정보를 받았을 때 원래 가지고 있던 메트릭 값(RIP는 홉)보다 큰 값이 들어오면 무시한다. 현재 가지고 있는 메트릭과 값이 같거나 좋은 경로만 업데이트 한다.

그 후, 라우터 A가 라우터 B와 D쪽으로 업데이트를 하게 되면 라우터 B와 D도 네트워크 A에 대해서 Hold down 타이머를 작동시킨다. 라우터 C는 B와 D에게 네트워크 A에게 홉 카운트3이라는 정보를 뿌리면 무시하고 C도 업데이트 받게 되면 Hold down상태가 된다.




3. Split Horizon



라우팅 정보가 들어온 곳으로는 같은 정보를 내보낼 수 없다는 것이다. 라우터 A는 네트워크 A에 대한 정보를 이미 라우터 E에서 받았기 때문에 네트워크 A에 대한 정보를 다시 라우터 E쪽으로는 내보낼 수 없다는 것이다. 라우터 A가 라우터 E에게 업데이트 할 때, 네트워크 A에 대한 라우팅 정보만을 보내지 않는 것이다. 스플릿 호라이즌은 두 라우터 간의 루핑만을 막기 위해서 만들어진 기술이고, 전체 라우터 네트워크의 루핑을 스플릿 호라이즌을 가지고 막는 것은 어렵다.

 



4. Route Poisoning



네트워크 A가 다운되자 라우터 E가 네트워크 A에 대한 메트릭 값을 16(사용 할 수 없는 값)으로 바꿈 → 라우터 A에서 네트워크 A에 대한 업데이트 정보가 들어와도 라우터 E는 무시 → 라우터 E는 네트워크 A에 대한 메트릭 값을 16으로해서 라우터 A에게 보냄 → 라우터 A는 이제부터 네트워크 A에 대한 메트릭 값을 16으로 갖게 됨

 



5. Poison Reverse

 


라우팅 정보를 되돌려 보내기는 하되 이 값을 무한대 값(16)으로 쓰는 방식. 홉 개수가 무한대라는 것은 경로가 사용할 수 없다는 것이라서 라우터는 이 경로에 대한 라우팅 업데이트를 무시하는 것이 된다.


LIST

  <디스턴스 벡터와 링크 스테이트>

1.  디스턴스 벡터 - 라우팅 테이블에 목적지까지의 모든 경로를 저장하는 것이 아니라 목적지까지의 거리와 그 목적지까지 가려면 어떤 인접 라우터를 거쳐서 가야 하는 방향만을 저장한다.

장점은 라우팅의 모든 정보가 필요없어 메모리를 절약하고, 구성 자체가 간단하며 표준으로 사용되고 있다는 것이다.

단점은 라우팅 테이블에 아무런 변화가 없더라도 정해진 시간마다 라우팅 테이블의 업데이트가 일어나기 때문에 트레픽이 낭비되고 변경된 내용을 모든 라우터가 알기엔 시간이 많이 걸린다는 것이다.

ex) RIP, IGRP

 

2. 링크 스테이트 - 한 라우터가 목적지까지의 모든 경로를 다 알고 있는 것이다.

먼저, 토폴러지 데이터베이스에 어디에 어떤 네트워크가 있고, 가려면 어떤 라우터를 통해야 한다라는 것을 저장한다. 그것을 토대로 SPF(Shortest Path First)라는 어디로 가야 가장 빨리갈 수 있는가를 계산하는 알고리즘을 만든다. 출발지에서 목적지까지를 나뭇가지처럼 펼쳐 놓은 다음 가장 빠른 경로를 찾아가는 방식이다. 

장점은 링크 변동에 따른 인식이 빠르고 라우팅 테이블의 교환주기가 길며 변동이 일어난 라우팅 테이블만 교환하기 때문에 트래픽이 적다.

단점은 메모리의 소모가 많고 CPU의 로드가 많다.

ex) OSPF

 


<RIP 라우팅 프로토콜>

RIP 프로토콜은 라우터를 몇 번 거쳐서(네트워크를 몇 번 거쳐서)가야 하는가에 대한 최적 경로를 찾는 방법이다. 한 라우터를 지날 때 마다 홉 카운트를 증가시키면서 측정한다. RIP의 경우 이웃한 라우터들과 라우팅 정보 교환을 30초 마다 업데이트한다.

RIP 환경에서 30초 동안에 업데이트 정보를 받지 못한다면 라우터는 180초 동안(Invalid time)은 상대측으로부터 기다린다. 180초가 지나도 상대측으로부터 업데이트를 받지 못한다면 라우터는 Hold down 상태로 들어간다. (라우터는 상대편이 다운됐을 거라고 생각하게 되고 ‘possibly down'이라는 메시지를 라우팅 테이블에서 보여준다)

그 이후에도 1분 동안(flush time=240초) 상대로부터 연락이 없게 되면 이 경로가 죽었다고 생각하고 라우팅 테이블에서 경로에 대한 정보를 지우게 된다.

단점은 경로선택을 오로지 홉 카운트에 의존하기 때문에 속도나 회선의 신뢰도, 회선의 로드 등을 확인해 볼 수 없다는 것과 전 구간이 업데이트 하는데 오랜시간이 걸린다는 것이다.

 


<RIP 명령어>

Router(config)# router rip

Router(config-router)# network 150.150.100.0

router rip란 이제부터 RIP 라우팅을 사용하겠다는 뜻이다. 라우터 구성모드(config-router)에서 위와 같이 입력하면 150.150.0.0 대의 네트워크로 라우팅을 해준다. 왜 150.150.0.0인가하면 RIP 프로토콜은 150점대는 B클래스이기 때문에 서브넷을 255.255.0.0으로 인식해 버리기 때문이다.(Classful방식)


LIST

 <라우팅 테이블>

라우터가 어떤 경로를 찾을 때 사용하는 것이고, 사용하는 라우터의 프로토콜에 따라 달라지며, 라우터는 항상 최적의 경로를 찾아 이것을 라우팅 테이블에 유지하고 있다. 전원이 꺼지면 모두 지워지게 되지만, 다시 만들 수 있다.(몇초 ~ 몇분)

show ip route : 라우팅 테이블 보는 명령어

 


<AS>

AS(Autonomous System), 하나의 네트워크 관리자에 의해서 관리되는 라우터들의 집단이다. 라우터들을 AS로 묶는 이유는 AS안에 있는 라우터들은 자신의 AS에 속해있는 라우터에 대한 정보만 알고 있으면 된다. 그러다가 외부 AS로 나갈 때는 문지기 라우터인 ASBR(Autonomous System Boundary Router)에게 정보를 물어봐서 나가는 것이다.

AS 내부에서 사용하는 라우팅 프로토콜을 Interior Gateway Protocol(IGP)→RIP, IGRP, EIGRP, OSPF라고 하고, AS 외부에서 서로 라우팅 정보를 주고 받기 위해 라우터가 사용하는 프로토콜을 Exterior Gateway Protocol(EGP)→EGP, BGP라고 한다.

 


 <라우터 모드>

1. 유저 모드 - ‘>’가 있는 모드를 유저모드라 한다. 주로 테스트, 현재 상태를 볼 수 있다. 핑을 해보거나, 트레이스 등을 할 수 있다.

2. 프리빌리지 모드 - ‘#’가 있는 모드를 프리빌리지 모드라 한다.

구성을 볼 수도 있고 변경할 수도 있다.

3. 구성 모드 - 프리빌리지 모드에서 configure terminal이라는 명령어를 입력하면 된다.

구성 파일을 변경하는 경우에 사용한다.

 


<라우터 내부>

1. 램 - 라우터를 운용하는 운용 시스템이 올라간다. 부팅이 되면 라우터의 운영체제인 IOS가 램에 올라가고, 라우팅 테이블이 그 다음으로 올라간다. 그 후, 구성파일이 올라간다. (라우터의 주소는 어떻게 되고, 라우팅 프로토콜은 뭘 사용하는지, 보안은 어떻게 하는지 등)

※show running-config: RAM에 저장된 정보를 봄

 

2. NVRAM - 비휘발성 램. 전원을 끈 상태에서도 정보가 날아가지 않는 램이다. 라우터의 구성파일의 정보를 저장하는 곳이다. 구성 파일이 램에서 구동되지만 마지막에 관리자가 명령어를 입력해 RAM에 있는 중요한 정보를 NVRAM으로 저장 해야한다.

※show startup-config: NVRAM에 저장된 정보를 봄

 

3. Flash 메모리 - 라우터의 운영체제인 IOS는 플래시 메모리에 저장된다. 플래시 메모리는 전원이 꺼져도 데이터가 지워지지 않는 곳이다. NVRAM과 다른 점은 플레시 메모리의 용량이 크다는 것이다. 전원이 꺼지면 RAM에서 구동되는 IOS파일이 플레시 메모리에 저장된다.

 

4. ROM - 파워가 켜지면 어떤 순서로 라우터 스스로의 상태를 점검하고 또 어디서 IOS를 가져다가 메모리에 올릴 것인지의 정보를 저장한다.

 


<라우터 기본 보기 명령어>

1. show version : 라우터의 IOS버전, 인터페이스 종류, IOS가 어디서 부팅했는지 등에 대한 것을 알 수 있는 명령어.

 

2. show interface : 라우터가 가지고 있는 모든 인터페이스가 다 보이고, 각각의 인터페이스 상황까지 알 수 있는 명령어. 특정 인터페이스를 지정할 수도 있는데 show interface ethernet 0와 같이 사용한다.

 

3. show running-config : 현재의 구성 파일을 보는 명령어

 

4. show startup-config : NVRAM에 저장되어 있는 백업 구성 파일을 보는 명령어

 

5. show flash : 플레시 메모리를 보는 명령어

 

6. show processes cpu : 라우터의 5분, 1분, 5초 동안의 cpu로드가 퍼센트로 나타나고 라우터가 얼마나 일을 하고 있는지 알 수 있는 명령어 


 

<스태틱 라우팅>

ip  route  network  mask address|interface distance

① network : 목적지 네트워크

② mask : 목적지 서브넷마스크

③ address : 목적지 네트워크 가려면 address로 가라는 의미의 주소(1홉을 건너뛴 주소)

④ interface : 목적지에 가려면 라우터의 어떤 인터페이스를 통해서 가야하는가를 의미

⑤ distance : 값이 커질수록 가치가 떨어짐



LIST

 <라우터란?>

라우터란 외부의 어떤 사이트를 찾아가는 데이터가 있다면 라우터는 목적지까지 가장 빠르고 효율적인 길을 스스로 찾아 안내해 주는 능력을 가지고 있다.

① 경로 결정(Path Determination) : 데이터 패킷이 목적지까지 갈 수 있는 길을 검사하고 어떤 길로 가는 것이 가장 적절한지를 결정한다

② 스위칭(Switching) : 길이 결정되면 그 쪽으로 데이터 패킷을 스위칭해준다.

 


 <라우티드 프로토콜과 라우팅 프로토콜>

① 라우티드 프로토콜 : 라우팅을 당하는, 즉 라우터가 라우팅을 해주는 고객을 뜻한다. TCP/IP나 IPX는 고객으로 라우터란 자동차를 타고 다른 네트워크로 여행을 가는 것이다.

② 라우팅 프로토콜 : 라우터에 살면서 라우티드 프로토콜에게 목적지까지 가장 좋은 길을 갈 수 있게 해주는 역할. RIP, IGRP, OSPF, EIGRP 등이 있다.


 

<Static 라우팅 프로토콜, Dynamic 라우팅 프로토콜>

① 스태틱 라우팅 프로토콜 : 라우터에 사람이 일일이 경로를 입력해 주는 것. 라우터는 사람이 입력해준 길로만 데이터를 전송하면 되므로 메모리도 적게 들고, 라우터에겐 부담이 들지 않아 속도도 빠르다. 사람이 경로를 알려주는 방식이므로 다이내믹 라우팅 방식 처럼 라우터들끼리 라우팅 테이블을 교환할 필요가 없다.

하지만, 사람이 목적지 별로 경로를 넣어줘야 하니까 귀찮다는게 단점이다. 사람이 입력해준 경로에 문제가 생기면 사람이 수정하기 전까지 계속 문제가 발생한 방식대로 보내기 때문에 위험하다.

 


② 다이내믹 라우팅 프로토콜 : 라우터가 알아서 가장 좋은 길을 찾아 가도록 되어 있다.

하지만, 라우팅 프로토콜을 이용해서 어떤 길이 가장 빠른지 계산을 해야 하고, 시간이 지날 때마다 바뀐 정보에 대해 수정해줘야 하고, 서로 이웃 라우터들과 라우팅 테이블을 지속적으로 업데이트해야 하기 때문에 라우터에게 부담이 많이 가는 방식이다.

RIP, IGRP, OSPF, EIGRP 등이 있다.



LIST

+ Recent posts