[후니의 쉽게 쓴 시스코 네트워킹] Part 09.
Part 09. 라우터, 그 속으로 전진!
* 액세스 리스트 (Access List)
à 주로 라우터에서 네트워크 보안을 위해서 사용한다. 라우터에 세팅 되므로,
라우터가 볼 수 있는 네트워크 계층까지만 관리된다. 다만, 어플리케이션 계층 까지 관리하는 라우터 등의 경우는 관리범위가 다를 수 있다.
à Standard Access List와 Extended Access List, Dynamic
Access List로 나뉘어 진다.
I) Dynamic Access List : 자주 쓰이지 않으며, User Name과 패스워드에
따라 통제 가능한 액세스 리스트 이다.
ii) Standard Access List : 출입 통제를 할 때, 출발지 주소만을 참고하여
제어를 한다.
iii) Extended Access List : 출발지, 목적지, 프로토콜, 사용 포트 번호 등등 모든 것을 보고 통과 여부를 결정한다.
à Access List에 걸려서 못 들어가는 경우 라우터에 ‘Host
Unreachable’ 이라고 뜨게 된다.
* Standard Access List vs Extended Access List
à 1. Standard à 출발지 주소(Source Address)만을 제어.
Extended à 출발지 주소와 목적지 주소 모두를 제어.
2. Standard à 전체 TCP/IP에 대한 제어만을 함.
Extended à 특정 프로토콜을 지정하여 제어 가능.
3. Standard à 1-99까지의 숫자를 Access-list 번호로 사용
Extended à 100-199 사이의 숫자를 Access-list 번호로 사용.
* Access List 규칙
1. 액세스 리스트는 윗줄부터 하나씩 차례로 수행된다.
2. 액세스 리스트의 맨 마지막 라인에 “permit any”를 넣지 않을 경우, default로, 어느 액세스 리스트도 match되지 않은 나머지 모든 address는 deny된다.
à 액세스 리스트는 맨 마지막 줄에는 항상 모든 것을 막아버리는 deny all이 들어 있다고 생각하면 됨.
à 규칙을 까먹을 경우, 원치 않은 일이 일어날 수 있음.
3. 액세스 리스트의 새로운 Line은 항상 맨 마지막으로 추가되므로, access-list 라인의 선택적 추가(selective add)나
제거(remove)가 불가능하다.
4. 인터페이스에 대한 액세스 리스트의 정의가 되어 있지
않은 경우 (ó 인터페이스에 access-group 명령이 들어있지
않은 경우) 결과는 permit any가 된다. ( ** 2번과 혼동하면 안됨)
à 액세스 리스트가 정의되어 있지 않은 인터페이스 à 액세스 리스트를 거치지않고 바로 통과
à permit any가 될 수 밖에 없음.
à 2번 규칙과 다른 점 :
à 2번은 액세스 리스트는 정의. 자기가 속할 액세스 리스트가 없는 것.
4번은 아예 자기 네트워크에는 액세스 리스트도 정의되어
있지 않은 경우.
* 네트워크 혼잡, Congestion
à 네트워크의 전체 대역폭(Bandwidth)보다
그 네트워크를 지나는 데이터가 많이 몰리게 될 때 발생.
* Bursty Traffic : 데이터가 갑자기 폭주하는 현상을 뜻함. (평소 데이터
기준)
à Bursty Traffic으로 인해, Congestion 발생.
à Congestion Management를 이용해 해결.
à 1. 사용자와 어플리케이션에 대한 필터링
: 불필요한 것들은 네트워크에 들어올 수 없음. à 액세스 리스트 사용.
2. 브로드캐스드 막기
: 라우팅 업데이트 같은 정보들은 허용해야 하기 때문에 조심해야 함.
3. 타이머 맞추기.
: 일정 시간마다 한 번씩 일어나는 일 (대부분 브로드캐스트) 들을 제대로 조정.
4. 라우팅 테이블 관리
: 트래픽을 발생시키는 라우팅 정보 교환을 일부를 static으로 조정.
5. 트래픽 우선순위 매기기
: 중요한 트래픽 우선 처리.
* Access List 원리 p105.
* Standard Access List
à 액세스 리스트는 IN과 OUT으로 구성될 수 있음.
출발지 주소(Source
Address)를 가지고, 액세스 리스트를 만듦.
à 액세스 리스트에 정의된 주소와 패킷의
출발지 주소가 일치하면 그 액세스 리스트 수행.
à 액세스 리스트의 조건이 Deny이면, 패킷의 흐름을 막은 다음 ‘host unreachable’ ICMP 메시지를 뿌림. Permit이면, 패킷을 정해진 경로로 내보냄.
à 액세스 리스트는 일반 구성모드(Router(config)#)에서
내리는 명령.
형식 : access-list (access-list-number 1) (permit/deny) { (source 2) (source-wildcard 3) / any 4}
액세스 리스트 명령 입력 후, 액세스 리스트를 어떤 인터페이스에 적용할지 결정.
à 각 인터페이스에 내리는 명령은 인터페이스 구성모드(Router(config-if)#)임을
알 수 있음.
à 액세스 리스트를 이더넷 인터페이스 0에 적용하고 싶다면 Router(config)#int e 0을 입력하여
프롬프트를 Router(config-if)#으로 바꾸어 주어야 함.
형식 : ip access-group (access-list-number 5) (in/out 6)
** in/out 개념 (중요. 그림 p108)
à in : 현재 인터페이스쪽에서 라우터로 들어오는 것을 말함.
out : 라우터에서 해당 인터페이스쪽으로 나가는
것을 의미.
*와일드카드 마스크(Wildcard Mask)
à 주로 OSPF 라우팅 프로토콜을 사용할 때나, 액세스 리스트를 사용하는 경우 사용되는 일종의 마스크.
Subnet Mask와 같은 결을 가진 것으로 생각하면 됨. à 서브넷 마스크가 무엇을 하면 무조건 반대로 동작.
à Ex) 서브넷 마스크 : 255.255.255.0 = 1111
1111.1111 1111.0000 0000.0000 0000
와일드카드 마스크 : 0.0.255.255 = 0000 0000.0000 0000.1111
1111.1111 1111
* Standard Access List Example (p110)
* 텔넷포트(VTY Port)에서의 액세스 리스트
à 라우터에 텔넷을 한다는 것 ó 라우터의 Virtual Teminal 포트로 접속한다는 것
à 텔넷을 할 때는 가상의 포트를 이용해서 들어오는데, 이
VTY 포트에 액세스 리스틑 적용하면, 텔넷으로 들어오는
소스 주소 제어가능.
à 명령 순서
: 1. Line vty 명령을 이용해 구성하고자 하는 VTY 포트로 들어감.
à 일반 구성 모드에서 line 구성모드로 바뀌게 됨.
2. Access-class 명령을 사용해서 액세스 리스트 번호를
지정하고 이 액세스 리스트 번호를 지정후,
이 액세스 리스트를 VTY인터페이스의
IN/OUT중 적용할 것을 결정.
- 1에서 99사이 숫자 사용. 액세스 리스트는 종류에 따라서 access-list 번호가 정해져 있음. [본문으로]
- source [본문으로]
- 생략 가능. 그러나 생략 시, 와일드카드 마스크가 0.0.0.0 인경우에 해당. [본문으로]
- 출발지 주소를 적지 않고 any라고 넣으면, 모든 주소가 포함. [본문으로]
- 앞에서 액세스 리스트에 부여했던 번호와 동일한 번호를 써줌. 액세스 리스트 명령을 인터페이스에 연결해 주는 기능. [본문으로]
- 액세스 리스트를 인터페이스의 들어오는 쪽(in)에 부여 할 것인지, 나오는 쪽(out)에 부여할 것인 지 결정. 생략 시 out을 뜻함. (Out이 Default 값) [본문으로]