이 문서에서는 SNMP(Simple Network Management Protocol)를 사용하는 UNIX의 Catalyst Operating Systems(CatOS)와 TFTP(Trivial File Transfer Protocol) 서버 간에 컨피그레이션 파일 및 시스템 소프트웨어 이미지를 이동하는 방법에 대해 설명합니다.
Catalyst 스위치에서 TFTP 서버의 IP 주소를 ping할 수 있는지 확인합니다.
Cat6509> (enable) ping 171.68.191.135 !!!!! ----171.68.191.135 PING Statistics---- 5 packets transmitted, 5 packets received, 0% packet loss round-trip (ms) min/avg/max = 2/2/2
이러한 절차는 다음과 같습니다.
Catalyst 2900/3500XL 시리즈와 같은 Cisco IOS® 소프트웨어 기반 Catalyst 스위치에는 적용되지 않습니다.
Cisco IOS 소프트웨어가 포함된 Catalyst 6000 Series MSFC 및 MSFC2 모듈에는 적용되지 않습니다.
스위치에서 SNMP 읽기-쓰기 커뮤니티 문자열이 구성되지 않았거나 알려지지 않은 경우에는 해당 사항이 없습니다.SNMP 커뮤니티 문자열 구성 방법에 대한 자세한 절차는 SNMP 커뮤니티 문자열 구성 방법을 참조하십시오.
NET-SNMP (이전에 UCD-SNMP) 유틸리티의 명령줄 구문을 기반으로 합니다.HP Open View 또는 NetView와 같은 다른 SNMP 애플리케이션이 있는 경우, 구문은 이러한 예와 다를 수 있습니다.
초기 수퍼바이저 모듈 소프트웨어 버전 이후 Catalyst OS에서 지원하는 CISCO-STACK-MIB 기반Cisco.com의 Supported by Product(제품별 지원 MIB) 페이지를 참조하여 스위치가 CISCO-STACK-MIB를 지원하는지 확인합니다.이 MIB의 다음 MIB 개체가 사용됩니다.
MIB 개체 이름 | OID |
tftp호스트 | .1.3.6.1.4.1.9.5.1.5.1 |
tftp파일 | .1.3.6.1.4.1.9.5.1.5.2 |
tftp모듈 | .1.3.6.1.4.1.9.5.1.5.3 |
tftp작업 | .1.3.6.1.4.1.9.5.1.5.4 |
tftp결과 | .1.3.6.1.4.1.9.5.1.5.5 |
정의가 있는 이러한 MIB 객체에 대한 자세한 내용은 부록 A를 참조하십시오.
이 문서의 정보는 Catalyst OS 소프트웨어만 실행하는 스위치를 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
모든 예에서 다음 값은 그림에 사용됩니다.
Catalyst 6509 Switch with CatOS
172.16.99.66 = Catalyst 6509 스위치의 IP 주소
private = SNMP 읽기-쓰기 커뮤니티 문자열스위치에 구성된 읽기-쓰기 문자열을 사용합니다.스위치 CLI에서 show snmp 명령을 사용하여 확인합니다.
public = SNMP 읽기 전용 커뮤니티 문자열입니다.스위치에 구성된 읽기 전용 문자열을 사용합니다.스위치 CLI에서 show snmp 명령을 사용하여 확인합니다.
171.68.191.135 = TFTP 서버의 IP 주소
다음은 다음 예에서 snmpset 및 snmpwalk 명령의 구문입니다.
snmpset [options...] <hostname> {<community>} [<objectID> <type> <value> ...] snmpwalk [options...] <hostname> {<community>} [<objectID>]
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참고하십시오.
이 단계는 구성 파일을 복사하는 과정을 안내합니다.
다음 단계를 완료하십시오.
TFTP 서버/tftpboot 디렉토리에 새 파일을 switch-config를 생성합니다.UNIX의 경우 다음 구문을 사용합니다.<filename>을 터치합니다.
touch switch-config
파일의 사용 권한을 777으로 변경합니다. 다음 구문을 사용합니다.chmod <permissions> <filename>.
chmod 777 switch-config
tftpHost MIB 객체를 사용하여 TFTP 서버의 IP 주소를 정의합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.1.0 s 171.68.191.135 enterprises.9.5.1.5.1.0 = "171.68.191.135"
tftpFile MIB 객체를 사용하여 컨피그레이션을 복사하는 데 사용할 TFTP 파일 이름을 정의합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.2.0 s switch-config enterprises.9.5.1.5.2.0 = switch-config
Catalyst 스위치에서 tftpModule MIB 개체와 함께 컨피그레이션이 전달되는 모듈을 선택합니다.MSFC 또는 MSFC2 모듈이 아닌 수퍼바이저 모듈을 선택합니다. 그렇지 않으면 실패합니다.스위치 CLI에서 show module 명령을 사용하여 snmpset 명령의 올바른 모듈 번호를 확인합니다.일반적인 출력은 다음과 같습니다.
Mod Slot Ports Module-Type Model Sub Status --- ---- ----- ------------------------- ------------------- --- -------- 2 2 2 1000BaseX Supervisor WS-X6K-SUP1A-2GE yes ok 16 2 1 Multilayer Switch Feature WS-F6K-MSFC no OK .... --<snip>--
샘플 출력에서 수퍼바이저 모듈 번호는 2이고 슬롯 번호 2에 있습니다. tftpModule MIB 개체를 정의하려면 2를 사용합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.3.0 i 2 enterprises.9.5.1.5.3.0 = 2
tftpAction MIB 객체를 사용하여 TFTP 서버에서 스위치로 전송할 스위치 컨피그레이션 파일을 MIB 객체 값 2 = downloadConfig로 정의합니다.부록 A의 MIB 개체 세부 정보를 참조하십시오.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.4.0 i 2 enterprises.9.5.1.5.4.0 = 2
이러한 작업의 결과를 확인하려면 다음 단계 중 하나를 수행합니다.
tftpGrp (.1.3.6.1.4.1.9.5.1.5) MIB 객체를 폴링하고 결과를 부록 A와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5 enterprises.9.5.1.5.1.0 = "171.68.191.135" !--- IP address of the TFTP server enterprises.9.5.1.5.2.0 = "switch-config" !--- name of the switch configuration file enterprises.9.5.1.5.3.0 = 2 !--- Module number. In this case, Supervisor module enterprises.9.5.1.5.4.0 = 2 !--- TFTP action. 2 = Download configuration from TFTP server to the switch enterprises.9.5.1.5.5.0 = 2 !--- Result of the TFTP action, 2 = Success
tftpResult MIB 객체를 폴링하고 출력을 부록 A의 MIB 객체 세부 정보와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5.5 enterprises.9.5.1.5.5.0 = 2 !--- Result of the TFTP action, 2 = Success
다운로드에 성공하면 MIB 개체 출력은 2(또는 성공)입니다. 다른 출력을 수신하는 경우 tftpResult 객체에 대한 부록 A와 비교하고 적절한 단계를 수행합니다.
이 단계는 구성 파일을 복사하는 과정을 안내합니다.
다음 단계를 완료하십시오.
TFTP 서버/tftpboot 디렉토리에 새 파일을 switch-config를 생성합니다.UNIX의 경우 다음 구문을 사용합니다.<filename>을 터치합니다.
touch switch-config
다음 구문을 사용하여 파일 사용 권한을 777으로 변경합니다.chmod <permissions> <filename>.
chmod 777 switch-config
tftpHost MIB 객체를 사용하여 TFTP 서버의 IP 주소를 정의합니다.구문은 다음과 같습니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.1.0 s 171.68.191.135 enterprises.9.5.1.5.1.0 = "171.68.191.135"
tftpFile MIB 객체를 사용하여 컨피그레이션을 복사하는 데 사용할 TFTP 파일 이름을 정의합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.2.0 s switch-config enterprises.9.5.1.5.2.0 = switch-config
Catalyst 스위치에서 tftpModule MIB 개체와 함께 컨피그레이션이 전달되는 모듈을 선택합니다.MSFC 또는 MSFC2 모듈이 아닌 수퍼바이저 모듈을 선택합니다. 그렇지 않으면 실패합니다.스위치 CLI에서 show module 명령을 사용하여 snmpset 명령의 올바른 모듈 번호를 확인합니다.일반적인 출력은 다음과 같습니다.
Mod Slot Ports Module-Type Model Sub Status --- ---- ----- ------------------------- ------------------- --- -------- 2 2 2 1000BaseX Supervisor WS-X6K-SUP1A-2GE yes ok 16 2 1 Multilayer Switch Feature WS-F6K-MSFC no OK .... --<snip>--
샘플 출력에서 수퍼바이저 모듈 번호는 2이고 슬롯 번호 2에 있습니다. tftpModule MIB 개체를 정의하려면 2를 사용합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.3.0 i 2 enterprises.9.5.1.5.3.0 = 2
tftpAction MIB 객체를 사용하여 스위치 컨피그레이션 파일을 TFTP 서버에서 3 = uploadConfig의 MIB 객체 값으로 스위치로 전송하도록 정의합니다.부록 A의 MIB 개체 세부 정보를 참조하십시오.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.4.0 i 3 enterprises.9.5.1.5.4.0 = 3
이러한 작업의 결과를 확인하려면 다음 단계 중 하나를 수행합니다.
tftpGrp (.1.3.6.1.4.1.9.5.1.5) MIB 객체를 폴링하고 결과를 부록 A와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5 enterprises.9.5.1.5.1.0 = "171.68.191.135" !--- IP address of the TFTP server enterprises.9.5.1.5.2.0 = "switch-config" !--- name of the switch configuration file enterprises.9.5.1.5.3.0 = 2 !--- Module number. In this case, Supervisor module enterprises.9.5.1.5.4.0 = 1 !--- TFTP action enterprises.9.5.1.5.5.0 = 2 !--- Result of the TFTP action, 2 = Succes
tftpResult MIB 객체를 폴링하고 출력을 부록 A의 MIB 객체 세부 정보와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5.5 enterprises.9.5.1.5.5.0= 2 !--- Result of the TFTP action, 2 = Success
다운로드에 성공하면 MIB 개체 출력은 2(또는 성공)입니다. 다른 출력을 수신하는 경우 tftpResult 객체에 대한 부록 A와 비교하고 적절한 단계를 수행합니다.
참고: 이 절차에서는 스위치에서 기본 컨피그레이션과 비기본 컨피그레이션을 모두 전송합니다. 이는 활성화 모드의 스위치 CLI에서 show config all 명령 출력에 나와 있습니다.스위치의 show config 명령은 기본이 아닌 컨피그레이션만 표시합니다.
이 단계는 소프트웨어 이미지를 복사하는 과정을 안내합니다.
다음 단계를 완료하십시오.
올바른 Supervisor 이미지 파일을 다운로드하여 TFTP 서버의 /tftpboot 디렉토리에 배치합니다.이 예에서 cat6000-sup.5-4-2a.bin은 그림에 사용됩니다.
다음 구문을 사용하여 파일 사용 권한을 777으로 변경합니다.chmod <permissions> <filename>.
chmod 777 cat6000-sup.5-4-2a.bin
tftpHost MIB 객체를 사용하는 TFTP 서버의 IP 주소를 정의합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.1.0 s 171.68.191.135 enterprises.9.5.1.5.1.0 = "171.68.191.135"
이미지 파일을 복사하는 데 사용할 TFTP 파일 이름을 정의합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.2.0 s cat6000-sup.5-4-2a.bin enterprises.9.5.1.5.2.0 = "cat6000-sup.5-4-2a.bin"
이 예에서 Supervisor 모듈 번호는 2이며 show module 명령 출력에 표시된 슬롯 번호 2에 있습니다.tftpModule MIB 개체를 정의하려면 2를 사용합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.3.0 i 2 enterprises.9.5.1.5.3.0 = 2
즉, TFTP 서버의 /tftpboot 디렉토리에 있는 CatOS 이미지가 show flash 명령의 출력에 표시된 대로 Supervisor 모듈 플래시로 전송됩니다.
tftpAction MIB 객체를 사용하여 이미지 파일이 TFTP 서버에서 MIB 객체 값이 4 = downloadSw인 스위치로 전송되도록 정의합니다.부록 A의 MIB 개체 세부 정보를 참조하십시오.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.4.0 i 4 enterprises.9.5.1.5.4.0 = 4
이 작업의 결과를 확인하려면 다음 단계 중 하나를 수행합니다.
tftpGrp (.1.3.6.1.4.1.9.5.1.5) MIB 객체를 폴링하고 결과를 부록 A와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5 enterprises.9.5.1.5.1.0 = "171.68.191.135" !--- IP address of the TFTP server enterprises.9.5.1.5.2.0 = "cat6000-sup.5-4-2a.bin" !--- name of the switch image file enterprises.9.5.1.5.3.0 = 0 enterprises.9.5.1.5.4.0 = 4 !--- TFTP action, 4 = downloadSw enterprises.9.5.1.5.5.0 = 1 !--- Result of the TFTP action, 1 = In Process
참고: 마지막 항목은 이미지 전송이 진행 중임을 보여줍니다.몇 분 정도 기다린 다음 tftpResult MIB 개체가 성공적으로 전송되었는지 확인하기 위해 다시 폴링합니다.이 단계는 이미지 파일 크기(바이트)에 따라 완료하는 데 몇 분 정도 걸릴 수 있습니다. 이미지 전송 프로세스가 진행되는 동안 스위치에서 show flash 명령을 실행하면 다음과 같은 내용이 표시됩니다.
Cat6509> (enable) show flash TFTP session in progress. Try again later.
tftpResult MIB 객체를 폴링하고 출력을 부록 A의 MIB 객체 세부 정보와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5.5 enterprises.9.5.1.5.5.0 = 2 !--- Result of the TFTP action, 2 = Success
다운로드에 성공하면 MIB 개체 출력은 2(또는 성공)입니다. 다른 출력을 수신하는 경우 tftpResult 객체의 부록 A와 비교하고 적절한 단계를 수행합니다.
이미지 전송이 성공적으로 완료되면 show flash 명령 출력에 표시된 이미지 파일 크기(바이트)가 TFTP 서버(이 예에서는 cat6000-sup.5-4-2a.bin)의 파일에 일치하는지 확인합니다.
이 단계는 소프트웨어 이미지를 복사하는 과정을 안내합니다.
다음 단계를 완료하십시오.
TFTP 서버의 /tftpboot 디렉토리에 새 파일 image.bin을 생성합니다.UNIX의 경우 다음 구문을 사용합니다.<filename>을 터치합니다..bin을 파일 확장자로 사용합니다.
touch image.bin
다음 구문을 사용하여 파일 사용 권한을 777으로 변경합니다.chmod <permissions> <filename>.
chmod 777 image.bin
tftpHost MIB 객체를 사용하여 TFTP 서버의 IP 주소를 정의합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.1.0 s 171.68.191.135 enterprises.9.5.1.5.1.0 = "171.68.191.135"
tftpFile MIB 객체를 사용하여 이미지 파일을 복사하는 데 사용할 TFTP 파일 이름을 정의합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.2.0 s image.bin enterprises.9.5.1.5.2.0 = "image.bin"
이 예에서 Supervisor 모듈 번호는 2이며 show module 명령 출력에 표시된 슬롯 번호 2에 있습니다.tftpModule MIB 개체를 정의하려면 2를 사용합니다.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.3.0 i 2 enterprises.9.5.1.5.3.0 = 2
즉, Flash의 Supervisor 모듈에서 실행되는 CatOS 이미지가 show flash 명령 출력에 표시된 대로 TFTP 서버로 전송됩니다.
tftpAction MIB 객체를 사용하여 이미지 파일이 TFTP 서버에서 MIB 객체 값 5 = uploadSw로 스위치로 전송되도록 정의합니다.부록 A의 MIB 개체 세부 정보를 참조하십시오.
% snmpset 172.16.99.66 private .1.3.6.1.4.1.9.5.1.5.4.0 i 5 enterprises.9.5.1.5.4.0 = 5
이러한 작업의 결과를 확인하려면 다음 단계 중 하나를 수행합니다.
tftpGrp (.1.3.6.1.4.1.9.5.1.5) MIB 객체를 폴링하고 결과를 부록 A와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5 enterprises.9.5.1.5.1.0 = "171.68.191.135" !--- IP address of the TFTP server enterprises.9.5.1.5.2.0 = "image.bin" !--- name of the switch image file enterprises.9.5.1.5.3.0 = 2 !--- Module number. In this case, Supervisor module enterprises.9.5.1.5.4.0 = 5 !--- TFTP action, 5 = uploadSw enterprises.9.5.1.5.5.0 = 1 !--- Result of the TFTP action, 1 = In Process
참고: 마지막 항목은 이미지 전송이 진행 중임을 보여줍니다.몇 분 정도 기다린 다음 tftpResult MIB 개체가 성공적으로 전송되었는지 확인하기 위해 다시 폴링합니다.이 단계는 이미지 파일 크기(바이트)에 따라 완료하는 데 몇 분 정도 걸릴 수 있습니다.
tftpResult MIB 객체를 폴링하고 출력을 부록 A의 MIB 객체 세부 정보와 비교합니다.
% snmpwalk 172.16.99.66 public .1.3.6.1.4.1.9.5.1.5.5 enterprises.9.5.1.5.5.0 = 2 --> Result of the TFTP action, 2 = Success
다운로드에 성공하면 MIB 개체 출력은 2(또는 성공)입니다. 다른 출력을 수신하는 경우 tftpResult 객체의 부록 A와 비교하고 적절한 단계를 수행합니다.
이미지 전송이 성공적으로 완료되면 show flash 명령 출력에 표시된 이미지 파일 크기(바이트)가 TFTP 서버(image.bin, 이 예에서는)의 파일에 일치하는지 확인합니다.
참고: 플래시에 이미지가 여러 개 있는 경우(show flash) 수퍼바이저 모듈이 부팅된 이미지만 이 절차를 사용하여 TFTP 서버로 전송됩니다.show boot 명령을 사용하여 Supervisor 모듈이 부팅하기 위해 사용하는 플래시의 이미지를 표시하는 BOOT 변수 = 를 확인합니다.자세한 내용은 소프트웨어 이미지 업그레이드 및 Catalyst 스위치에서 구성 파일 작업을 참조하십시오.
참고: 이러한 스크립트는 예시로만 제공되며 Cisco Systems에서 지원하지 않습니다.
스위치에서 구성 파일 및 Cisco IOS 마이그레이션 자동화 스크립트
#!/bin/sh # Script to automate config file & IOS migration of switches # supporting STACK-MIB including 5000, 5500, 1400, 2900, 1200 if [ ! -f SW ] ; then echo echo "File SW does not exist!!!" echo echo "Syntax is 'switch.sh'" echo "where each line in file SW lists:" echo "Switchname Filename Serverip Module# Moduleaction Community" echo echo "Switchname must resolve" echo "Filename must exist in server tftpboot directory 777" echo "Serverip is the ip of the server for the file" echo "Module# is usually '1'" echo "Module action is as per STACK-MIB: " echo "- 2 - config file - server > switch" echo "- 3 - config file - switch > server" echo "- 4 - software image - server > switch" echo "- 5 - software image - switch > server" echo "Community is *write* community" echo exit fi cat SW | while read SW do SWNAME=\Qecho $SW | cut -d' ' -f 1\Q FILE=\Qecho $SW | cut -d' ' -f 2\Q SERVER=\Qecho $SW | cut -d' ' -f 3\Q MODULE=\Qecho $SW | cut -d' ' -f 4\Q ACTION=\Qecho $SW | cut -d' ' -f 5\Q CMTY=\Qecho $SW | cut -d' ' -f 6\Q echo echo $SWNAME echo $FILE echo $SERVER echo $MODULE echo $ACTION echo $CMTY echo # '-t #' can be modified to adjust timeout snmpset -t 100 -c $CMTY $SWNAME .1.3.6.1.4.1.9.5.1.5.1.0 octetstring $SERVER sleep 5 snmpset -t 100 -c $CMTY $SWNAME .1.3.6.1.4.1.9.5.1.5.2.0 octetstring $FILE sleep 5 snmpset -t 100 -c $CMTY $SWNAME .1.3.6.1.4.1.9.5.1.5.3.0 integer $MODULE sleep 5 snmpset -t 100 -c $CMTY $SWNAME .1.3.6.1.4.1.9.5.1.5.4.0 integer $ACTION sleep 60 echo echo Check Progress... echo echo echo "Switch $SWNAME: \\c"; snmpget -t 100 -c $CMTY $SWNAME .1.3.6.1.4.1.9.5.1.5.5.0 | cut -d":" -f 3 done
스위치에서 스크립트가 특정 명령을 실행할 것으로 기대
#!/usr/nms/bin/expect # Above line points to your expect interpreter # Add '-d' option to expect line above to enable debugging # Tested on Cat5000 with regular login; no error-checking # except for number arguments, but will timeout on failure. # Tacacs+ lines left in for future releases set argc [llength $argv] if { $argc < 4} { puts "Syntax is:" puts "(For system with no Tac+)" puts "switch.exp destination \"command\" vtypassword enapassword" exit 0 } set destination [lindex $argv 0] puts -nonewline "Where we're going: " puts $destination set command [lindex $argv 1] puts -nonewline "What we're doing: " puts $command set vtypassword [lindex $argv 2] puts -nonewline "What our password is (vty): " puts $vtypassword set enapassword [lindex $argv 3] puts -nonewline "What our password is (enable): " puts $enapassword # username only for Tac+ set username [lindex $argv 4] puts -nonewline "What our username is if Tac+: " puts $username # set timeout 10 spawn telnet $destination expect { "Enter password:" { send "$vtypassword\r" } "Username:" { send "$username\r" exec sleep 1 expect "Password:" send "$vtypassword\r" } } # Look for non-enable router 'prompt>' expect -re "(^.*)(\r\n\[^ \]+> \$)" # Get into enable mode send "en\r" expect { "password: " { send "$enapassword\r" } "Username:" { send "$username\r" exec sleep 1 expect "Password:" send "$enapassword\r" } } # Look for enable router 'prompt#' expect -re "(^.*)(\r\n\[^ \]+(enable) \$)" # Send the command send "$command\r" expect { -re "(^.*)(\r\n\[^ \]+ (enable) \$)" { append buffer $expect_out(1,string) } -re "(^.*)(\r\n\ --More-- \$)" { append buffer $expect_out(1,string) send " " } -re "(^.*)(\r\n\ --More-- \$)" { append buffer $expect_out(1,string) send " " } } # Done with command - disable prior to exit send "disable\r" expect -re "(^.*)(\r\n\[^ \]+> \$)" exec sleep 1 send "logout"
SNMP를 통해 "show cam dynamic"과 동일한 출력을 표시하는 Perl 스크립트
#!/usr/local/bin/perl open(TABLE, "bridge-table.csv") || die "Cant' open file: $!\n"; while (<TABLE>) { ($vlan, $unicast_mac, $mod_ports) = split (/,/, $_); write; } exit; format STDOUT = set cam permanent @<<<<<<<<<<<<<<<<<< @<<< @< $unicast_mac, $mod_ports, $vlan
개체 | tftp호스트 |
OID | .1.3.6.1.4.1.9.5.1.5.1 |
유형 | 표시 문자열 |
사용 권한 | 읽기/쓰기 |
구문 | 8진수 문자열(0.64) |
상태 | 현재 |
MIB | CISCO-STACK-MIB |
설명 | TFTP 전송 또는 스토리지 디바이스 전송을 위한 소스/대상 호스트의 이름입니다.이름이 TFTP 전송의 경우 IP 주소 또는 호스트 이름일 수 있습니다.스토리지 디바이스 전송 이름은 deviceName: 의 형식입니다.(예: slot0:, slot1:) |
트리의 OID | ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) cisco(9) workgroup(5) ciscoStackMIB(1) tftpGrp(5) 1 } |
개체 | tftp파일 |
OID | .1.3.6.1.4.1.9.5.1.5.2 |
유형 | 표시 문자열 |
사용 권한 | 읽기/쓰기 |
구문 | 8진수 문자열(0.64) |
상태 | 현재 |
MIB | CISCO-STACK-MIB |
설명 | TFTP 전송 또는 스토리지 디바이스 전송을 위한 파일의 이름입니다. |
트리의 OID | ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) cisco(9) workgroup(5) ciscoStackMIB(1) tftpGrp(5) 2 } |
개체 | tftp모듈 |
OID | .1.3.6.1.4.1.9.5.1.5.3 |
유형 | 정수 |
사용 권한 | 읽기/쓰기 |
상태 | 현재 |
범위 | 0 - 16 |
MIB | CISC O-STACK-MIB |
설명 | 모듈의 코드/컨피그레이션이 전송될 코드입니다. |
트리의 OID | ::= { ISO(1) org(3) DOD(6) Internet(1) private(4) enterprises(1) cisco(9) workgroup(5) ciscoStackMIB(1) tftpGrp(5) 3 } |
개체 | tftp작업 |
OID | .1.3.6.1.4.1.9.5.1.5.4 |
유형 | 정수 |
사용 권한 | 읽기/쓰기 |
상태 | 현재 |
값 |
|
MIB | CISCO-STACK-MIB |
설명 | 이 객체를 허용되는 값 중 하나로 설정하면 tftpHost, tftpFile, tftpModule에 제공된 정보로 요청된 작업을 시작합니다.downloadConfig(2):호스트/파일 uploadConfig(3)에서 컨피그레이션 수신:호스트/파일 다운로드로 구성 보내기(4):호스트/파일 업로드에서 소프트웨어 이미지 수신(5):호스트/파일 다운로드로 소프트웨어 이미지 보내기(6):호스트/파일 업로드에서 펌웨어 이미지 수신Fw(7):호스트/파일에 펌웨어 이미지 보내기 |
트리의 OID | ::= { ISO(1) org(3) DOD(6) Internet(1) private(4) enterprises(1) cisco(9) workgroup(5) ciscoStackMIB(1) tftpGrp(5) 4 } |
개체 | tftp결과 |
OID | .1.3.6.1.4.1.9.5.1.5.5 |
유형 | 정수 |
사용 권한 | 읽기 전용 |
상태 | 현재 |
값 |
|
MIB | CISCO-STACK-MIB |
설명 | 마지막 TFTP 작업 요청의 결과를 포함합니다. |
트리의 OID | ::= { ISO(1) org(3) DOD(6) Internet(1) private(4) enterprises(1) cisco(9) workgroup(5) ciscoStackMIB(1) tftpGrp(5) 5 } |