따봉도치야 고마워

[네트워크 공부] 후니의 쉽게 쓴 네트워킹 13일차 - Part09 본문

프로그래밍/공부

[네트워크 공부] 후니의 쉽게 쓴 네트워킹 13일차 - Part09

따봉도치 2020. 4. 16. 17:40

텔넷 포트(VTY Port)에 대한 액세스 리스트 (액세스 클래스)

- 텔넷 사용자를 제어하기 위한 방법

- 텔넷 세팅 시 line vty 0 4로 세팅해줬었음 = 5개의 가상 포트로 접속한다는 것

- 이 포트에 액세스 리스트를 적용해 제어할 수 있음

 

  • line vty 0 4 명령으로 구성하고자 하는 vty포트로 접속 (line 구성 모드가 됨)
  • access-class [access number] [in/out] 명령을 사용해 액세스 리스트 번호와 in/out을 지정

//해당 라우터로 텔넷 접속에 대한 설정은 in

 

익스텐디드 액세스 리스트 (Extended Access List)

- 출발지뿐만아니라 목적지 주소까지 제어 가능

- 스탠더드는 전체 TCP/IP에 대한 제어만 하지만, 익스텐디드는 ip, tcp, icmp, udp 등 특정 프로토콜을 지정해서 제어할 수 있음

- 스탠더드는 1-99의 번호를 쓰지만, 익스텐디드는 100-199까지의 숫자를 엑세스 리스트 번호로 사용함.

 

: 패킷이 들어옴 > 액세스 리스트가 없으면 통과 > 있으면 출발지-목적지-프로토콜-프로토콜 옵션 순으로 일치하는지 확인 > 반복

 

  • 구성 모드 접속
  • access-list access-list-number {permit | deny} protocol source source-wildcard [operator port] destination destination-wildcard [operator port] [established] [log]
  • ip access-group access-list-number {in | out}

 

- 예제 : 150.100.1.0에 대해 150.100.2.0에서 tcp, telnet 못하도록 제한 / 나머지 모든 곳에선 접속 가능

int e 0
.
.
access-list 101 deny tcp 150.100.2.0 0.0.0.255 150.100.1.0 0.0.0.255 eq ftp-data
access-list 101 deny tcp 150.100.2.0 0.0.0.255 150.100.1.0 0.0.0.255 eq ftp
access-list 101 deny tcp 150.100.2.0 0.0.0.255 150.100.1.0 0.0.0.255 eq telnet

access-list 101 permit ip any any

 

- established 옵션 : TCP 데이터그램이 ACK나 RST bit이 set 되어 들어오는 경우에만 match가 발생

ex. access-list 101 permit tcp any 128.88.0.0 0.0.255.255 established
//'어느 주소에서든 ack나 rst bit이 set되어 있는 경우 128.88.0.0. 네트워크와 커넥션이 가능하다'는 말
//그러나 ack, rst는 128.88.0.0에서 먼저 커넥션 시도해야 set이 되므로,
//즉 128.88.0.0에 있는 호스트들은 나갈 수 있지만, 외부에서 먼저 커넥션은 불가하다는 뜻

 

+ access-list 101 permit ip 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255 = access-list 101 permit ip any any

+ show ip interface ethernet 0으로 조회 / show ip access-list로 전체 액세스 리스트 조회

 

 

 


 

라우터의 장애 대비 HSRP (Hot Standby Routing Protocol)

 

- HSRP 프로토콜은 시스코 장비에서만 사용되는 기능

- 라우터가 고장 나는 것에 대비해 라우터 한 대를 더 구성에 포함해 메인이 고장 나면 자동으로 두 번째 라우터가 역할을 대신하는 기능

- 실제로 라우터 두 대로 구성했을 때, 메인 라우터가 죽으면 PC들의 디폴트 게이트웨이 주소를 일일이 바꿔주지 않으면 인터넷 사용 불가 -> 이런 디폴트 게이트웨이 문제까지 해결해주는 게 HSRP

 

  • HSRP는 가상의 라우터 IP주소를 디폴트 게이트웨이로 설정
  • 그 주소에 대해 Active 라우터와 Standby 라우터의 역할을 두어, 처음엔 Active 라우터가 그 주소의 역할 수행
  • Active에 문제가 생기면 자동으로 Standby라우터가 액티브의 역할을 수행할 수 있게 해 줌.

예제)

- 라우터 B는 액티브, 라우터 C는 스탠바이로 설정

- 디폴트 게이트웨이 주소는 172.79.100.1

- B가 다운되면 C가 액티브, 하지만 B가 살아나면 다시 액티브

- 라우터 자체의 다운이 아닌 시리얼 인터페이스 문제여도 스탠바이로 (트래킹, Tracking)

 

int e 0

.
.

standby 1 timers 3 10
standby 1 priority 105
standby 1 preempt delay 5
standby 1 ip 172.70.100.1
standby 1 track Serial0 10

 

  • standby 명령을 이용해 HSRP 그룹을 1로 세팅, 디폴트 게이트웨이 주소 세팅 -> C라우터에서도 마찬가지여야 함
  • 같은 그룹에서 priority 가 높은 라우터가 액티브 라우터가 됨 (디폴트는 100)
  • preempt 명령은 복귀에 대한 명령. 즉 B가 죽다 살아났을 때 5초 뒤에 액티브로 복귀 *스탠바이 라우터에도 세팅해줘야 함!!!!
  • track 명령으로 시리얼 인터페이스 0에 문제가 생기면 priority 10씩 떨군다는 말
  • timers는 3초마다 한 번씩 그룹에 속한 라우터들끼리 서로 확인, 10초 동안 액티브가 대답 없으면 역할 바뀜 (디폴트라 안 써도 됨)

- show standby로 HSRP 상태 조회 가능

- debug standby로 액티브와 스탠바이 통신 상태 확인 가능

 

 


 

IP 주소의 변환 NAT (Network Address Translation)

- 한쪽 네트워크의 IP주소가 다른 네트워크로 넘어갈 때 변환이 되어서 넘어가는 것 (Inside Local -> Inside Global)

- 라우터에서 지원하는 기능 중 하나 //라우터마다, 소프트웨어마다 차이 있음

- 왜 씀?

  • 내부의 네트워크엔 비공인 IP 사용하고, 외부로 나갈 때만 공인 IP 쓸 때
  • 기존에 쓰던 ISP에서 새 ISP로 바꾸면서 내부 전체 IP를 바꾸지 않고 기존 IP주소를 그대로 사용하고자 할 때
  • 2개의 인트라넷을 서로 합치려다 두 네트워크의 IP가 서로 겹치는 경우
  • TCP 로드 분배가 필요한 경우 (밖에선 하나의 주소로 보이는 호스트가 내부에선 여러 개의 호스트에 매핑되도록 해 서버 로드 분배하는 기술)

- 내부 네트워크에서 사용하는 비공인 주소를 Inside Local 주소라고 함

- 외부로 나갈 때 변환되어 나가는 주소를 Inside Global 주소라고 함

- 라우터 내부 호스트가 외부로 나갈 때 라우터에서 특정 주소로 변환해주고, NAT 테이블에 보관함. 이때부터 외부에선 해당 호스트를 그 주소로 기억해 응답. (그 주소로 응답이 오면 라우터가 다시 해당 호스트로)

 

NAT 구성

- inside로 정의한 인터페이스에서 오는 패킷의 source 주소가 특정 액세스 리스트 번호에 정의되어있으면 그걸 해당하는 pool에 있는 주소로 바꿔주겠다는 의미

- outside로 정의한 인터페이스에서 들어오는 패킷의 목적지 주소를 보고 그게 pool에 속한 주소면 그걸 다시 private주소로 바꿔주겠다는 의미

ip nat pool ccie 210.98.100.2 210.98.100.254 netmask 255.255.255.0
ip nat inside source list 1 pool ccie
ip nat inside source static 10.1.1.100 210.98.100.100
access-list 1 permit 10.1.1.0 0.0.0.255

!
int e 0
ip address 10.1.1.1 255.255.255.0
ip nat inside
!

int s 0
ip address 210.98.100.1 255.255.255.0
ip nat outside

- ip nat pool [pool-name] 첫 주소 끝 주소 netmask 서브넷 마스크 명령 :  외부 나갈 때 사용할 Inside Global IP 주소 pool 세팅

- ip nat inside source list [access-list-number] pool [pool-name] 명령 : inside로 정의한 인터페이스에서 들어오는 출발지 주소가 해당 액세스 리스트 번호와 일치 시 해당 pool에 정의된 주소로 변환

- 이후 각 인터페이스에 어디가 inside고 어디가 outside인지 지정

 

- 위처럼 지정 시 라우터는 10.1.1.0를 자동으로 210.98.100.2~210.98.100.254 사이의 주소로 바꿔주는데

- 만약 특정 호스트에 고정된 Global주소를 주고 싶다면 Static NAT 명령 사용 (line 3)

 

+ show ip nat translations로 NAT 확인 가능 / debug ip nat으로 변환에 대한 과정 조회 가능

 

 

 

 

Comments