소개
SNMP 기반 네트워크 관리 애플리케이션에서 가장 일반적으로 사용되는 식별자 중 하나는 Interface Index(ifIndex) 값입니다.IfIndex가 물리적 또는 논리적 인터페이스와 연결된 고유한 식별 번호입니다.대부분의 소프트웨어에서 ifIndex는 인터페이스의 이름입니다.관련 RFC에 따라 특정 ifIndex 값과 인터페이스 간의 대응이 리부팅 중에 유지되어야 하는 것은 아니지만, 디바이스 인벤토리, 청구, 결함 탐지 등의 애플리케이션은 이러한 통신에 따라 달라집니다.
RFC1213(MIB2)은 다음과 같이 초기 ifIndex를 정의합니다.
"각 인터페이스는 ifIndex 객체의 고유한 값으로 식별되며, ifIndex에 대한 설명은 값을 다음과 같이 제한합니다.값의 범위는 1에서 ifNumber의 값입니다.각 인터페이스의 값은 엔티티의 네트워크 관리 시스템을 재초기화하는 한 개에서 다음 재초기화까지 일정해야 합니다."
그러나 최신 IETF RFC 2863(The Interfaces Group MIB)에 따르면, 네트워크 인터페이스의 동적 추가 또는 제거를 허용하는 디바이스 수가 증가하도록 ifIndex 정의가 변경되었습니다.RFC 2863에 채택된 솔루션은 ifIndex 값이 ifNumber 값보다 작아야 하는 요구 사항을 삭제하고, ifNumber를 현재 정의와 함께 유지하는 것입니다.
사전 요구 사항
요구 사항
이 문서에 대한 특정 요건이 없습니다.
사용되는 구성 요소
IOS 플랫폼 및 이미지별 이 기능에 대한 최신 지원 정보를 보려면 Feature Navigator 툴에서 Interface Index Persistence를 검색할 수 있습니다.
이 기능에 대한 지원은 다음 플랫폼에서 Cisco IOS 릴리스 12.1(5)T에서 시작되었습니다(나중에 Cisco IOS 릴리스 12.2에 포함).
-
Cisco 800 시리즈
-
Cisco 1400 시리즈
-
Cisco 1600 시리즈(1600R 시리즈 포함)
-
Cisco 1700 시리즈
-
Cisco 2500 시리즈
-
Cisco 2600 시리즈
-
Cisco 2800 시리즈
-
Cisco 3600 시리즈(Cisco 3620, 3640 및 3660 포함)
-
Cisco 3800 시리즈
-
Cisco 4500 시리즈
-
Cisco AS5300
-
Cisco AS5400
-
Cisco AS5800
-
Cisco 7100 시리즈
-
Cisco 7200 시리즈(Cisco 7202, 7204 및 7206 포함)
-
Cisco 7500 시리즈(Cisco RSP7000 포함)
Cisco IOS 릴리스 12.0S에서 인터페이스 인덱스 지속성 지원은 다음 플랫폼의 Cisco IOS 릴리스 12.0(11)S에서 시작되었습니다.
-
Cisco 7200 시리즈
-
Cisco 7500 시리즈
-
Cisco 12000 GSR 제품군
참고: CatOS 디바이스의 경우 EtherChannel 인터페이스가 아닌 물리적 및 VLAN 인터페이스에 대해 Index가 자동으로 유지됩니다.이 기능은 기본적으로 설정되어 있으므로 해제할 수 없습니다.MSFC의 IOS 소프트웨어는 ifIndex 지속성을 지원하지 않습니다.Catalyst 6000 IOS(기본 모드라고도 함)는 12.1(13)E부터 시작하는 ifIndex 지속성을 지원합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.라이브 네트워크에서 작업하는 경우, 사용하기 전에 모든 명령의 잠재적인 영향을 이해해야 합니다.
표기 규칙
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
ifIndex 지속성 기능 이전의 문제
MRTG와 같은 간단한 모니터링 소프트웨어가 인터넷으로 연결되는 라우터별 직렬 인터페이스의 인터페이스 통계를 폴링하는 상황을 고려하십시오.
예를 들어 다시 초기화하기 전에 다음 조건을 가질 수 있습니다.
물리적 포트 |
ifIndex |
이더넷 포트 |
1 |
토큰 포트 |
2 |
직렬 포트 |
3 |
따라서 관리 응용 프로그램에서 시리얼 포트에 해당하는 ifIndex 3을 폴링하고 있습니다.
라우터를 다시 초기화(재부팅, 다시 로드 등)한 후 조건이 다음과 유사한 것으로 변경됩니다.
물리적 포트 |
ifIndex |
이더넷 포트 |
3 |
토큰 포트 |
1 |
직렬 포트 |
2 |
관리 애플리케이션은 이더넷 포트에 해당하는 ifIndex 3을 계속 폴링합니다.따라서 관리 애플리케이션이 트랩에 의해 경고가 표시되지 않으면(예: 라우터가 재부팅된 경우) 폴링된 통계는 완전히 잘못된 것일 수 있습니다.
ifIndex 지속성 개요
Cisco IOS Release는 재부팅 중에 유지될 수 있는 ifIndex 값에 대한 지원을 추가합니다.Interface Index Persistence 기능을 사용하면 트래픽 흐름 및 SNMP 통계에 대한 입력 및 출력 인터페이스를 고유하게 식별하여 네트워크 관리 데이터를 수집하고 처리할 때 더 정확할 수 있습니다.각 인터페이스를 알려진 엔티티(예: ISP 고객)와 연결하므로 Interface Index Persistence 기능을 사용하면 네트워크 관리 데이터를 보다 효과적으로 활용할 수 있습니다.
IfIndex 지속성은 ifDescr(또는 ifName) 개체 값과 IF-MIB에서 생성된 ifIndex 개체 값 간의 매핑이 리부팅 중에 보존됨을 의미합니다.
이 기능은 다음과 같은 경우에 특히 유용합니다.
ifIndex 지속성 값 작업
구성
Router(config)# snmp-server ifindex persist
Router(config-if)# snmp-server ifindex persist
컨피그레이션에 대한 자세한 내용은 SNMP IfIndex Persistence를 참조하십시오.
제한 사항
인터페이스별 ifIndex 지속성 명령([no] snmp ifindex 지속성)을 하위 인터페이스에서 사용할 수 없습니다.인터페이스에 적용된 명령은 해당 인터페이스와 연결된 모든 하위 인터페이스에 자동으로 적용됩니다.
IfIndex 지속성 확인
ifIndex가 올바르게 활성화되었는지 확인하려면 nvram에서 ifIndex-table의 내용을 볼 수 있습니다.
Router # dir nvram:ifIndex-table
Directory of nvram:/ifIndex-table
2 -rw- 0 <no date> ifIndex-table
126968 bytes total (114116 bytes free)
길이가 0인 경우 시작을 실행하는 복사를 실행하도록 생략합니다. 그러면 ifIndexes 할당을 nvram에 복사합니다.그런 다음 다음을 볼 수 있습니다.
Router # dir nvram:ifIndex-table
Directory of nvram:/ifIndex-table
2 -rw- 283 <no date> ifIndex-table
126968 bytes total (114088 bytes free)
파일 형식은 다음과 같습니다.
이름 |
유형 |
설명 |
크기 |
정수32 |
이 행의 크기 |
ifIndex |
정수32 |
이 인터페이스의 ifIndex |
enablePersistence |
정수32 |
지속성이 활성화된 경우 1 |
if설명 |
8진수 문자열 |
인터페이스 설명 |
파일을 ftp 서버에 복사하고 이진 파일의 내용을 볼 수 있습니다.그러나 해당 파일은 편집하지 마십시오.모든 변경 사항이 지원되지 않습니다.일부 플랫폼에서는 파일을 압축된 형식으로 보관할 수 있습니다.
온라인 삽입 및 제거
이더넷 카드 삽입 및 제거의 예 목록입니다.
-
1. 카드를 제거한 후 동일한 카드 유형으로 교체합니다.
새 하드웨어의 ifDescr이 이전 카드와 일치하는 경우 새 카드에 대해 동일한 ifIndexes가 할당됩니다.
-
2. 카드를 제거한 후 거의 같은 유형의 카드로 교체합니다.
4포트 이더넷 카드를 8포트 이더넷 카드로 교체할 경우 8포트 카드의 처음 4개 포트는 4포트 이더넷 인터페이스와 동일한 ifIndex 값을 가집니다.나머지 4개 포트는 새 ifIndex 값을 받습니다.
-
3. 카드를 제거한 후 다른 카드 유형으로 교체합니다.
새 ifDescr과 같은 새 카드 유형을 설치할 때 새 ifIndex 값을 받습니다.이전 ifIndex는 사용되지 않으며 ifIndex 할당에서 간격을 만듭니다.
-
4. 카드를 분리한 후 동일한 라우터의 다른 슬롯에 넣습니다.
카드를 다른 슬롯에 넣으면 새 ifDescr이 있으므로 새 ifIndex 값을 받습니다.이전 ifIndex는 사용되지 않으며 ifIndex 할당에서 간격을 만듭니다.
참고: 예 2, 3 및 4에 대해 새로 할당된 ifIndex 값을 유지하려면 copy running starting 명령을 수행해야 합니다.
관련 정보