2009-07-27 4 views
1

Cisco IOS는 "show conf"를 XML에 적용합니까?

Cisco의 "show conf"의 출력을 일부 합리적인 XML로 변환 할 수있는 자유롭게 사용할 수있는 프로그램입니다 (아마도별로 의미가 없습니다) :

<aaa> 
    <new-model/> 
    <authentication> 
    <login> 
     <default> 
     <group id="tacacs+">enable</group> 
     </defult> 
    </login> 

    <!-- ...etc... --> 

    </authentication> 
</aaa> 

.. 그렇지 않다면 구현하려고 할 수있는 XML 스키마에서? IOS 구문에 대한 깊은 이해 없이는 스키마를 구축하는 것이 까다로울 수 있습니다.

답변

2

시스코는 IOS 구성을위한 스키마를 제공하지 않습니다. 그러나 두 가지 옵션이있을 수 있습니다.

  • 시스코 IOS XR에 내장 된 XML 지원이 있습니다. 라우터의 모델에 따라 업그레이드 할 수 있습니다. 이 기능을 사용하려면 "xml-agent"기능을 활성화해야합니다. 이 기능은 항상 안정적인 것으로 간주되지는 않습니다 (마지막으로 우리가 사용하지 못하게하는 버그가 있음을 확인한 후). 그러나 많은 사람들에게 충분해야합니다.

  • 업그레이드가 옵션이 아닌 경우,이 끔찍한 추한 해킹이 (즉 내 잘못) :

http://code.google.com/p/text2xml/

그것은 구문/ios.def에서 (IOS에 대한 구문을 제공 저장소)는 상당한 수의 명령을 XML로 변환하는 것을 지원하지만 완전한 것은 아닙니다. 여전히 많은 복잡한 구성에서 작동하며, 새로운 IOS 명령을 지원하기 위해이 명령을 확장하는 것은 새로운 명령을 (알기 쉽고 이해하기 힘든) 구문 정의에 추가하는 문제 일뿐입니다.

결과 XML을 좀 더 안정적인 것으로 변환하려고하지만 XML 변환은 IOS (PANTA)를 구문 분석하는 것보다 훨씬 쉽습니다.

[편집] 위의 대답은 지금 크게 사용되지 않습니다 : 당신은 XML, JSON 또는 YAML에 IOS와 IOS XR 구성을 변환 할 수있는 Gelatin을 작성했습니다 - 당신이 선호하는 중. 이것은 본질적으로 앞서 언급 한 추악한 해킹 대신 다음과 같은 차이점을 가지고 있습니다 :

  • 더 이상 못생긴 해킹이라고하지 않습니다. 나는 실제로 그것을 자랑스럽게 생각합니다. 그래서 저를 실망시키지 마십시오! 더 심각하게, 당신이 그것에 어떤 문제라도 발견하면, 나에게 알려 줘라. 그러면 나는 그것을 고칠 것이다.
  • 순수 Python으로 작성되었으며 더 이상 C로 컴파일되지 않으므로 사용 및 설치가 훨씬 쉬워집니다. (또한 C 코드를 생성하여 얻을 수있는 성능 향상은 필수적인 것은 아닙니다.)
  • 구문은 입니다. 이해하기 쉽습니다.입니다. 또한 몇 가지 문서가 있습니다.
  • 파서가 훨씬 안정적입니다.

간단한 사용 방법 :

  • 다운로드 및 설치 젤라틴 :

    git clone git://github.com/knipknap/Gelatin.git 
    cd Gelatin 
    sudo python setup.py install 
    
  • 패키지는 IOS (문법/IOS/show_running_config/syntax.gel)에 대한 구문을 포함 IOS XR (구문/ios_xr/show_running_config/syntax.gel)에 대해 또 하나.

  • 다음 명령을 사용하여 XML에 설정을 변환 :

    gel -s syntax.gel config.txt 
    

를 작동하지 않는 구성으로, file a bug을하시기 바랍니다 실패합니다. (또는 더 나은 아직 구문에 대한 패치를 첨부하십시오.) 나는 많은 IOS 명령이 여전히 빠져 있기를 기대하며 부끄러워하지 마십시오.

젤라틴은 거의 모든 것을 XML로 변환하는 데 사용할 수 있으며, 독자적인 구문 파일 (추가 지침은 here)을 만드는 경우, 보내 주시면 기꺼이 피드백을 보내 드리겠습니다.

1

12.4 (20) T, 12.2 (33) SRE, 12.2 (54) SG 및 그와 같은 문제를 다루는 최신판에서 XML-PI을 발견했습니다.

관련 문제