[sisyphus] ncsh: настройка машины в ответ на события

Peter V. Saveliev =?iso-8859-1?q?peet_=CE=C1_altlinux=2Eru?=
Пт Окт 19 15:03:54 MSD 2007


...

Итого, в Сизиф ушла (и когда-то дойдёт) сборка ncsh-0.4.4-alt6 (с 
зависимостями в виде connexion и модулей).

Те, кто Сизифом не пользуется, могут скачать из svn:
svn co svn://radlinux.org/radlinux/branches/0.4.4/
(помимо явных зависимостей потребуются модули питона (2.4): pysnmp 4.x, 
pyasn1, pysnmp-mibs, ctypes -- это всё есть в Сизифе; точно есть для gentoo; 
наверняка есть для debian)

Что стало возможно, помимо прочего:
 * работа с netlink: можно изменять таблицы маршрутизации и шейпинг в ответ на 
добавление/удаление адресов на интерфейсы (актуально, например, для 
ppp-сессий) -- то есть софтина мониторит состояние адресов и при изменении 
предпринимает действия
 * работа с snmp traps: изменять маршрутизацию и шейпинг в ответ на пакеты 
snmp traps.
 * перезапускать, останавливать и т.п. штатные сервисы, например, на изменения 
на интерфейсах или по получению snmp traps:

!
catch snmp if snmpTrapOID=linkUp if community=bala
	exec /etc/init.d/pptp start
!
events
	snmp

т.е. ncsh теперь можно использовать не только и не столько для настройки 
машины, а как trap-демон для различных событий с последующей их обработкой.

Warn: тараканы присутствуют! :) но самый децл.

...

Примеры тут: http://www.radlinux.org/connexion/wiki/Connexion/Samples

...

Если это кому-нибудь окажется полезно -- пишите -- от этого зависят 
приоритеты. Если это нужно юзать сейчас, то тогда разумно будет повысить 
приоритет у документирования всего этого (т.к. документация пока неполная). 
Если же нет -- у меня на очереди полная обработка netlink, inotify и 
мониторинг процессов.

-- 
Peter V. Saveliev


Подробная информация о списке рассылки Sisyphus