검색 엔진의 방문이 늘어나고 있군...

Posted
Filed under 네트워크

1. IOS 업그레이드 / 백업 / 복구
  IOS는 Internetwork Operating System의 약자로서 시스코의 라우터나 스위치의 운영체제를 뜻합니다. 시스코의 제품은 IOS 이미지 파일(IOS를 담고 있는 일종의 압축 파일)의 저장 장소로 플래시 메모리를 사용하는데 이는 플래시 메모리가 하드디스크와 달리 움직이는 부분이 없어 장애가 덜 발생하기 때문입니다. 일반적으로 제품에 달린 플래시 메모리에는 하나의 IOS 이미지 파일을 넣을 용량 정도 밖에 없습니다.

  그럼 먼저 복구나 업그레이드를 위해 TFTP를 이용하여 IOS 이미지를 플래시 메모리로 복사는 방법부터 알아보겠습니다. 복사할 이미지를 시스코 사이트 등에서 구해 TFTP 서버의 루트 디렉토리에 넣습니다. 그 후 라우터에서 다음과 같이 copy 명령어를 사용하여 플래시 메모리로 복사합니다. 당연히 라우터는 TFTP에 접근할 수 있어야 합니다.

  • 라우터의 IP: 192.168.0.1
  • TFTP 서버의 IP: 192.168.0.2
  • 가져올 IOS 이미지 이름: c2600-i-mz.122-28.bin

Router#copy tftp flash
Address or name of remote host []? 192.168.0.2
Source filename []? c2600-i-mz.122-28.bin
Destination filename [c2600-i-mz.122-28.bin]?

Accessing tftp://192.168.0.2/c2600-i-mz.122-28.bin...
Loading c2600-i-mz.122-28.bin from 192.168.0.2: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 5571584 bytes]

5571584 bytes copied in 3.281 secs (389093 bytes/sec)

  하지만 위와 달리 용량이 부족할 경우에는 복사에 실패합니다. 또한 사용 중인 IOS의 버전에 따라 복사하기 전에 이전 IOS의 삭제 여부를 물어볼 수도 있으며 세부적으로 출력 결과가 틀릴 수 있지만 방법은 동일합니다. 만약 플래시 메모리의 남은 용량이 부족하다면 플래시 메모리의 내용을 확인하고 필요 없는 파일들을 삭제하면 됩니다. 아래는 플래시 메모리 속에 있는 파일을 확인하고 그 중 한 파일을 지우는 예제입니다.

Router#show flash

System flash directory:
File  Length   Name/status
  3   50938004 c2800nm-advipservicesk9-mz.124-15.T1.bin
  6   4414921  c2960-lanbase-mz.122-25.FX.bin
  5   4670455  c2960-lanbase-mz.122-25.SEE1.bin
  2   28282    sigdef-category.xml
  1   227537   sigdef-default.xml
[60279199 bytes used, 3737185 available, 64016384 total]
63488K bytes of processor board System flash (Read/Write)

Router#delete c2960-lanbase-mz.122-25.SEE1.bin
Delete filename [c2960-lanbase-mz.122-25.SEE1.bin]?
Delete flash:/c2960-lanbase-mz.122-25.SEE1.bin? [confirm]

Router#

  새로운 IOS 이미지를 사용하려면 라우터가 IOS를 다시 로드하게 만들어야 하며 이는 reload 명령어를 통해 수행할 수 있습니다.

  라우터에 있는 IOS 이미지를 TFTP로 백업하는 방법도 위와 거의 같으며 복사할 위치만 바꿔주면 됩니다. 실제 예는 아래와 같습니다.

Router#copy flash tftp
Source filename []? c2600-i-mz.122-28.bin
Address or name of remote host []? 192.168.0.2
Destination filename [c2600-i-mz.122-28.bin]?

Writing c2600-i-mz.122-28.bin...!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 5571584 bytes]

5571584 bytes copied in 3.281 secs (1698000 bytes/sec)

  이번에는 라우터의 이미지가 망가졌을 때 ROM에 있는 ROMMON이라는 임시 운영체제를 이용하여 TFTP로부터 IOS 이미지 파일을 가져와 복구하는 방법을 알아보겠습니다. 먼저 라우터의 IOS 이미지 파일이 손상된 상황을 구현하기 위해 플래시 메모리 내의 IOS 이미지 파일을 지우고 reload 명령어로 IOS를 다시 불러오도록 만들겠습니다.

Router#delete flash
Delete filename []?c2600-ipbasek9-mz.124-8.bin
Delete flash:/c2600-ipbasek9-mz.124-8.bin? [confirm]

Router#sh flash

System flash directory:
File  Length   Name/status
  2   28282    sigdef-category.xml
  1   227537   sigdef-default.xml
[255819 bytes used, 63760565 available, 64016384 total]
63488K bytes of processor board System flash (Read/Write)

Router#reload
Proceed with reload? [confirm]
%SYS-5-RELOAD: Reload requested by console. Reload Reason: Reload Command.

System Bootstrap, Version 12.1(3r)T2, RELEASE SOFTWARE (fc1)
Copyright (c) 2000 by cisco Systems, Inc.
cisco 2621 (MPC860) processor (revision 0x200) with 60416K/5120K bytes of memory

Boot process failed...

The system is unable to boot automatically.  The BOOT
environment variable needs to be set to a bootable
image.
rommon 1 >

  시스코 제품은 부팅에 적절한 IOS 이미지 파일을 찾는데 실패하면 ROM에 내장된 임시 OS 파일을 불러옵니다. 구형 제품에는 RxBoot와 부트 헬퍼라는 2개의 OS가 들어 있지만 현재 유통되고 있는 제품에는 ROMMON이라는 OS만 들어 있으므로 ROMMON을 사용하여 설명하겠습니다. 현재 라우터에는 IOS 이미지가 없기 때문에 TFTP 서버에서 IOS 이미지를 받아야 합니다. 여기서 중요한 규칙이 있는데 바로 TFTP 서버는 라우터가 가진 첫 번째 이더넷(또는 패스트이더넷) 포트에서 네트워크로 닿을 수 있는 곳에 존재해야 한다는 것입니다. 그렇지 않으면 정상적으로 필요한 내용을 입력해도 이미지를 받아올 수 없습니다. 또한 라우터의 첫 번째 이더넷 포트에 TFTP 서버가 직접 연결되어 있을 필요는 없지만 스위치만큼은 직접 연결되어 있으면 안 됩니다. 그 이유는 라우터가 IOS 이미지 파일을 가져오는 시도를 하면 그때부터 스위치와 1, 2계층 연결이 시작되는데 스위치의 STP 때문에 연결이 성립되기까지 시간이 걸려서 연결이 완성되기 전에 라우터쪽에서 먼저 타임 아웃이 떠버립니다. 그러므로 스위치와 직접적인 연결을 피하거나 직접 연결된 스위치에서 STP 기능을 비활성화시켜줘야 합니다.
 
  TFTP로부터 이미지를 받아오는데 필요한 정보는 아래와 같습니다.

  1. 라우터의 임시 IP 주소
  2. 라우터의 서브넷 마스크
  3. 디폴트 게이트웨이
  4. TFTP 서버의 주소
  5. IOS 이미지 파일명

  만약 TFTP 서버가 같은 네트워크에 있다면 디폴트 게이트웨이를 설정하는 것에 의미가 없으므로 라우터의 임시 주소와 동일하게 설정해줘도 무관합니다. 아래 예는 라우터의 첫 번째 이더넷 포트에 TFTP 서버가 직접 연결되어 있는 환경에서 수행한 내용입니다. 위의 5가지 사항을 아래와 같은 방법으로 입력한 후 마지막에 tftpdnld 명령어를 실행하면 지정한 TFTP 서버로부터 IOS 이미지 파일을 받아올 수 있습니다. 주의할 것은 아래에서 대문자로 입력한 문자열들은 반드시 대문자로 입력해야 제대로 작동한다는 겁니다.

rommon 1 > IP_ADDRESS=192.168.0.1
rommon 2 > IP_SUBNET_MASK=255.255.255.0
rommon 3 > DEFAULT_GATEWAY=192.168.0.1
rommon 4 > TFTP_SERVER=192.168.0.2
rommon 5 > TFTP_FILE=c2600-i-mz.122-28.bin
rommon 6 > tftpdnld

          IP_ADDRESS: 192.168.0.1
      IP_SUBNET_MASK: 255.255.255.0
     DEFAULT_GATEWAY: 192.168.0.1
         TFTP_SERVER: 192.168.0.2
           TFTP_FILE: c2600-i-mz.122-28.bin
Invoke this command for disaster recovery only.
WARNING: all existing data in all partitions on flash will be lost!

Do you wish to continue? y/n:  [n]:  y

.
Receiving c2600-i-mz.122-28.bin from 192.168.0.2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
File reception completed.
Copying file c2600-i-mz.122-28.bin to flash.


2. 설정 파일 백업 / 복구
  설정 파일을 백업하고 복구하는 것도 앞서 알아봤던 IOS 백업 및 복구 방법과 비슷합니다. 이전의 실습 환경과 동일한 환경에서 라우터의 이름을 'ConfigIsLoaded'로 바꾼 후 설정을 NVRAM에 저장한 뒤 TFTP 서버에 백업을 해보겠습니다.
  • 라우터의 IP: 192.168.0.1
  • TFTP 서버의 IP: 192.168.0.2
Router#configure terminal
Router(config)#hostname ConfigIsLoaded
ConfigIsLoaded(config)#^Z
ConfigIsLoaded#copy running-config startup-config
Destination filename [startup-config]?
Building configuration...
[OK]
ConfigIsLoaded#copy startup-config tftp
Address or name of remote host []? 192.168.0.2
Destination filename [ConfigIsLoaded-confg]?

Writing startup-config...!!
[OK - 659 bytes]

659 bytes copied in 0.078 secs (8000 bytes/sec)
  이제 라우터의 NVRAM에 있는 설정 내용을 지우고 리부팅시켜 라우터를 초기의 상태로 돌린 후 TFTP 서버에 저장했던 설정 파일을 RAM으로 가져와서 다시 NVRAM에 저장하겠습니다. 여기서 주의해야 할 점은 TFTP 서버와 연결된 인터페이스의 IP와 서브넷은 당연히 수동으로 설정해야 한다는 겁니다. 그렇지 않으면 TFTP 서버 자체에 접근할 수 없을테니까요.
ConfigIsLoaded#erase startup-config
Erasing the nvram filesystem will remove all configuration files! Continue? [confirm]
[OK]
Erase of nvram: complete
%SYS-7-NV_BLOCK_INIT: Initialized the geometry of nvram
ConfigIsLoaded#reload
Proceed with reload? [confirm]
------------------------리부팅 메시지 생략------------------------
Router>enable
Router#configure terminal
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip address 192.168.0.1 255.255.255.0
Router(config-if)#no shutdown

%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up

%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up

Router(config-if)#^Z
Router#copy tftp running-config
Address or name of remote host []? 192.168.0.2
Source filename []? ConfigIsLoaded-confg
Destination filename [running-config]?

Accessing tftp://192.168.0.2/ConfigIsLoaded-confg....
Loading ConfigIsLoaded-confg from 192.168.0.2: !
[OK - 659 bytes]

659 bytes copied in 3.046 secs (216 bytes/sec)

ConfigIsLoaded#copy running-config startup-config
Destination filename [startup-config]?
Building configuration...
[OK]


참고 도서: CCENT / CCNA ICND1 Official Exam Certification Guide
참고 자료 제공: 강사 김기태
2010/08/25 15:43 2010/08/25 15:43