본문 바로가기
교육

[10일 차] 21.08.02 : 네트워크 기초 10

by ballena 2021. 8. 2.

오늘은 나머지 EIGRP + @

EIGRP 축약, EIGRP 디폴트 루트, 재분배

 

네트워크 기초를 수업하는 것은 그다지 불만이 없다. 좀 지루하긴 하지만 필요한 내용이라고 생각하니까.

그런데 조급한 느낌이 드는 것은 어쩔 수 없다. 11월 말까지 AWS, Ansible, 리눅스/윈도우 서버, 파이썬 기초, Terraform 등을 할 수 있을까?


EIGRP 후반부 : SIA, 축약 등

 

* 재분배 : 내부 장비들에게 외부 정보(EIGRP 말고 다른 프로토콜의 정보)를 광고. 즉 다른 프로토콜의 정보를 번역하고 광고해준다고 생각하면 될 듯

 

다른 프로토콜을 사용하는 네트워크로의 경계에 있는 라우터가 있다.

이 라우터를 통해 다른 프로토콜을 사용하는 네트워크로 간다면, 이 라우터는 다른 네트워크 내부의 정보를 모두 알 필요 없다. 하지만 자신의 네트워크 정보는 알고 있어야 한다.

여튼 다른 네트워크의 주소를 모두 알 필요가 없다면, 뭘 알고 있어야 하는가? -> '축약된 주소'

 

  • 축약(Summary/Supernetting) : "다른 네트워크의 정보를 모두 알 필요 없다" 

다른 네트워크의 라우터는 목표 네트워크 내의 주소들을 축약해놓은 하나의 주소만 알아도 충분.

-> 목표 네트워크 입구에 있는 라우터가 알아서 해주겠지

 

* 빡빡한(Tight) 축약 : 딱 목표 네트워크 내용만

* 느슨한(Loose) 축약 : 목표 네트워크 외에도 다른 것도 끼워 넣음

 

예시 1)

192.168.4.0/24

192.168.5.0/24

192.168.6.0/24

192.168.7.0/24

를 축약하려면, 192.168.4.0/24 -> 192.168.0000 0100

0000 0100 ~ 0000 0111 => 0100, 0101, 0110, 0111의 4개 주소를 0100으로 축약.

2^2가 축약 시작 수 => 2^2개까지 축약 가능.

축약되면 192.168.4.0/22 <- 기존 네트워크 비트가 0000 0100까지였는데, 축약으로 2비트 줄었다.

그럼 192.168.5.5/22는 192.168.4.0/22에 속하나?

-> 속한다. 192.168.5.0/22가 속하고, 192.168.5.5/22는 192.168.5.0/22에 속하니까.

만약 4개의 주소를 모두 쓴다면 빡빡한 축약이고, 안 쓰는 주소가 섞여 있다면 느슨한 축약.

 

예시 2)

2.2.16.0/24 ~ 2.2.19.0/24를 축약하려면?

그 이상은 축약에 포함하지 않는 것이므로, 0001 0000 ~ 0001 1111이 범위가 아니다!

-> 0001 0000 ~ 0001 0011이 목표 축약 범위. 최대 축약 가능 수가 2^4개라는 거지, 하려는 건 2^2개

-> 축약 결과는 2.2.16.0/22 : 2.2.16.0/24 ~ 2.2.19.0/24

 

같은 bit까지 잘라서 그 뒤를 축약시키는 것. 

축약에 필요한 bit 수가 까다로워 강제로 느슨한 축약이 되는 경우도 있다.

 

RIP, EIGRP는 자동 축약

 

null0 인터페이스? : 쓰레기통. looping 방지.

소실된 네트워크에 대한 요청이 들어오면 looping이 발생할 수 있으니 축약 라우터는 소실된 네트워크에 대해 null0 인터페이스 할당.

-> 요청을 받았을 때 상세주소에 대한 정보가 없다는 건 소실되었다는 의미이므로, null0 인터페이스로 loop 차단

 

(금요일 내용) 디폴트 루트를 수동으로 주는 방식도 있다

 

  • SIA 방지 대책

SIA(Stuck In Active) : EIGRP 라우팅 정보 요청(쿼리) 패킷을 보낸 후 응답 패킷을 받지 못한 상태가 장시간 유지되는 것

-> EIGRP 라우터는 3분간 기다리며, 이후에는 응답 패킷을 보내지 않은 라우터와의 이웃 관계 해제

-> 해제된 후 다시 이웃 관계를 맺고, 또 끊기고...

-> 네트워크 불안정

 

쿼리 패킷을 보낸 상태의 라우터는 Active 상태에 있으므로 정보 요청 패킷이 오면 응답 못함 -> 통신 두절

쿼리 받았는데 모르니 다른 라우터에게 다시 쿼리 넘기고, 또 넘기고... 이게 반복되다 어찌어찌 응답 패킷을 받아 다시 타고 타고 응답 패킷을 돌려주는데, 그 중간에 지연이 발생해서 이웃 관계를 해제당하면?

-> 쿼리 주고받았던 라우터들 모두 이웃 단절

-> 쿼리 패킷을 전달하는 범위가 넓으면 발생

 

-> 쿼리에 대해 응답을 바로 할 수 있는 경우는? = SIA 해결책

1. 해당 쿼리 네트워크에 대한 상세 정보가 있을 때

2. 해당 쿼리 네트워크가 정보가 없을 때

3. 해당 쿼리 네트워크를 전송할 이웃이 없을 때

 

(쿼리 패킷은 유니캐스트)

 

* ACL(Access Control List) : 접근 제어 리스트(인터페이스에 적용)

-> 실제 사용할 개념. 중요

-> 이걸로 쿼리를 차단할 목적(deny), 허용할 목적(permit). 전체 차단이 기본값

 

  • SIA 방지 대책 : 대충 무엇인지 알아두기

1. 축약에 의한 방지 : 축약 정보를 광고해 상세정보를 모르게 하고, 바로 응답하게 함

2. 네트워크 차단을 통한 방지 : 정보를 모르게 막아버리면 몰라서 응답을 바로 하게 됨

3. Stub 라우팅에 의한 방지 : 일반적으로 사용하는 방식. stub 설정으로 쿼리가 넘어가지 못하게 막음

4. 재분배에 의한 방지 : 다른 라우팅 프로토콜을 사용하면 쿼리 패킷을 전달할 이웃이 없어짐


OSPF

 

IGP : ISA 기준으로 나눈다 - RIP, EIGRP, OSPF

EGP : 국가 간 통신 - BGP

IGP&EGP로 구분하거나, 디스턴스&링크로 구분하거나

 

  • OSPF : 링크 상태의 metric 값으로 계산

-> IGP 중에서도 Link-state/Classless 라우팅 프로토콜 : 자동 축약 없음

-> 다익스트라(Dijkstra) 알고리즘

-> 대규모 네트워크에서 사용 가능 : Area 개념 도입

(Area : 라우터들을 구역으로 묶어 특정 구역에서 발생한 에러가 다른 구역으로 넘어가지 않도록 한다)

-> 네트워크 변화가 발생할 경우에만 이웃 라우터로 네트워크 정보 전송

-> 멀티캐스트 사용 : DR(Designated Router)과 DROTHER 사용

   224.0.0.5(DR -> DROTHER), 224.0.0.6(DROTHER -> DR)

-> AD값은 110

-> Stub이라는 축약 기능이 있다 : IP 주소가 연속되지 않아도 테이블의 크기를 팍 줄일 수 있다

-> 표준 라우팅 프로토콜

-> 수렴 시간이 빠른 편

 

-> 설정이 다른 라우팅 프로토콜보다 복잡하다

-> 네트워크 종류에 따라 동작 방식/설정이 다르다 : 예전 이야기. 요즘은 PTP만 쓴다

네트워크의 종류 : Broadcast Multi Access, Point to Point, Non Broadcast Multi Access

-> 라우팅 정보 계산 및 유지를 위해 CPU, DRAM 등의 자원을 많이 사용함

 

 

  • OSPF Area

-> Area가 2개 이상이면 번호는 0부터 : Area 0은 backbone area. 서로 다른 Area를 연결해주는 역할

-> 규모가 작을 경우에는 Area 하나만 사용해도 무관

-> 인터페이스 기준으로 나뉜다

 

동작 방식

-> OSPF를 설정한 라우터끼리 Hello Packet을 교환하고 이웃 or adjacent 이웃(라우팅 정보 LSA를 교환하는 이웃)을 맺는다.

LSA(Link State Advertisement) : OSPF에서의 라우팅 정보

-> 전송받은 LSA를 Link-State-DB에 저장

-> 모두 교환하고 SPF or DA로 최적 경로 계산 후 테이블에 올린다

-> 그 후에도 주기적으로 Hello Packet 교환하며 확인

-> 네트워크의 상태가 변하면 위 작업 다시 수행

 

Adjacent Neighbor : LSA를 서로 교환하는 라우터

1. DR과 다른 라우터

2. BDR과 다른 라우터

3. Point to Point로 연결된 라우터

4. Point to Multipoint로 연결된 라우터

5. Virtual-Link로 연결된 라우터

(PtP는 DR이 필요 없지만, PtM은 DR을 선출함)

 

DR 선출

1. OSPF Priority가 가장 높은 라우터가 DR로 선출. 그다음은 BDR

2. 동일하다면 라우터 아이디가 높은 것이 선출

3. 선출 후에 추가된 것은 영향 없음

4. DR이나 BDR의 priority가 0으로 변경되면 재선출

(clear ip ospf process) or (ip ospf priority 0)

 

ABR : Area 사이에 껴있는 라우터. area->area 정보 전달을 지원

 

sh ip ospf neighbor

sh ip ospf database

 

router ospf [PID] : PID는 식별 용도. 달라도 상관없음

router-id [ip] : 루프백 ip로 넣었는데 왜 그랬지?

network [int ip] [wild] area [area num]

 

테이블의 코드가 O(동일 area 네트워크 정보)/O IA(다른 area 네트워크 정보)/O N1/O N2/O E1/O E2 등으로 나뉜다

나머지(N1, N2, E1, E2)는 외부 네트워크 정보가 우리 OSPF 네트워크로 들어온 것

 

OSPF Metric : Cost라고 부른다.

= 10^8 / 종단 간 대역폭의 합

 

 


21.08.02 다시 들을 부분

1교시 중~후반/2교시 실습/3교시 실습, null0 등/4교시 SIA/5교시 SIA 방지대책

댓글