Monday, January 4, 2016

Netconf protocol

Инструкция по установке тестового сервера для проверки netconf протокола. Для этой цели вполне подойдет netopeer сервер, желательно его ставить на centos, так как установка на убунту сложнее так как нет части библиотек и нужно ставить их вручную.
  • Для начала нужно скачать образ CentOS-7-x86_64-Minimal-1511.iso и запустить в любимой виртуалке Затем установить пакеты, которые в дальнейшем будут нужны для сборки сервера:
    • yum install libssh-devel libcurl-devel epel-release gcc libxml2-devel libxslt-devel libtool git wget libcurl-devel libssh2-devel libxml2 libxml2-python dbus-devel readline-devel
  • И доставить еще немножко
    • yum install python-pip
    • pip install pyang
    Это нужно так как pip идет отдельном репозитории epel-release и как следствие поставить сразу пакет и репозиторий не получится.
  • Поставить libnetconf библиотеку
    • git clone https://github.com/CESNET/libnetconf.git
    • cd libnetconf/
    • git checkout 0.9.x (commit 1f117e5a8017c3ec630f890faaee8ff28d382798)
    • ./configure --prefix=/usr
    • make
    • make install
    • ln -s /usr/lib/pkgconfig/libnetconf.pc /usr/lib64/pkgconfig/
    • cd ../
  • Установить сервер
    • git clone https://github.com/CESNET/netopeer.git
    • cd netopeer/
    • git checkout libnetconf-0.9.x (commit 092e2ea95e77e1b6a2f93a53d43b1917532a1137)
    • cd server
    • ./configure --sysconfdir=/etc --prefix=/usr
    • make
    • make install
  • Установить клиентские утилиты
    • cd ../cli/
    • ./configure --sysconfdir=/etc --prefix=/usr
    • make
    • make install
    • netopeer-configurator
  • Добавить модуль для эмуляции расширения протокола
    • cd ../netopeer/transAPI/turing/
    • ./configure --prefix=/usr
    • make
    • make clean
    • make
    • make install
  • И проверить, что у нас получилось:
    • netopeer-server -v 3 -d
    • ssh -p 830 root@localhost -s netconf
Последняя команда должна выдать полный список поддерживаемых расширений протокола. Все конечно ставится варварским способом в основную систему без пакетов и отката изменений, но это все же виртуальная машина.