About Forum Blogs NOC Docs Downloads KB Issues Code CI Registration

nocproject.org

#nocproject.org at irc.freenode.net log.
Back to nocproject.org Back to IRC log index
Date: 23.07.2012
dvolodin #
06:44
Завел я nanostation'ы. Через два окна и деревья в дождь - уровень сигнала -70dB, 30Mbit/s гонит не напрягаясь
06:44
у Мегапоня в этом месте и в эту погоду 3G не работает, а Edge едва дышит
Dmitry1 #
06:48
а я купил себе DIR-655 со съемными антеннами. По умолчанию стоят 2dB, можно установить до 12dB
Guest-ru #
06:52
У кого есть такие коммутаторы:
06:53
GCom: http://greennet.com.cn/category.aspx?NodeID=111
06:54
Смотреть надо на фотки! Названия, лейбы могут отличатся, например:
06:54
Qtech QSW: http://www.qtech.ru/catalog/ethernet/
Huko #
06:54
dvolodin: у нас есть линки где на -89dB пару мегабит на пару км легко вытягивает, так что -70 это вполне хороший показатель.
dvolodin #
06:55
более чем
Guest-ru #
06:55
Для них есть профиль http://bt.nocproject.org/secure/attachment/11121/Qtech.QSW.tar.bz2 можно потестить..
Dmitry1 #
06:55
По фоткам Huawei напоминают
06:57
Только странно, что кулеров в них много
Guest-ru #
06:57
GCom (GreenNet, TiNet) - это завод производитель, при заказе партии 1000 шт. лепит любую лейбу и название )\
Dmitry1 #
07:00
Профиль то сделать можно. А кто его поддерживать будет?
Guest-ru #
07:04
Ну Qtech QSW-2900* и QSW-3900* работают и хорошо оттестированы, они визуально соотведствуюn GCom TiNet-S2926, TiNet-S3750, и прошивы в них должны быть идентичны.
Dmitry1 #
07:05
dvolodin: Я там понавешивал subtasks на NOC-556
07:05
Guest-ru: Так может профиль обозвать Gcom ?
Guest-ru #
07:06
Вот об этом я и думаю, сперва хотел сим линками, но так нельзя.
07:07
Надо подумать как назвать профиль и гдето в описании его добавлять логотипы всех "производителей".
dvolodin #
07:07
может какие-нибудь Alias'ы делать для профиля?
Guest-ru #
07:08
Например Gcom.TiNet или GreenNet.S
Dmitry1 #
07:08
dvolodin: На NOC-565 это четко видно.
07:08
hwIfMonitorCrcErrorResume NOTIFICATION-TYPE
07:08
OBJECTS { hwIfMonitorCrcErrorStatistics, hwIfMonitorCrcErrorThreshold, hwIfMonitorCrcErrorInterval, hwIfMonitorName }
07:09
В трапе мы получаем только hwIfMonitorCrcErrorStatistics, hwIfMonitorCrcErrorThreshold и hwIfMonitorCrcErrorInterval
dvolodin #
07:09
ты не на описание трапа смотри
Dmitry1 #
07:09
hwIfMonitorName не распарсился
dvolodin #
07:09
а на то, что ы BER пришло
07:09
распарсилось ровно то, что железка положила
07:09
я по байтикам проверял
Dmitry1 #
07:10
А откуда я знаю, что на BER пришло? В issue BER не выложен.
07:10
Но с другой стороны подозрение вызывает следующее: SNMPv2-MIB::sysUpTime.0 000000101000010100010000000111
07:12
Из доступного тебе оборудования, такая проблема замечена в Cisco на трапах про OSPF и создание/удаление VLAN'а
Guest-ru #
07:13
Простой символьной ссылкой не пойдёт, в sa скриптах и fm правилах есть названия профиля.. Можно просто где-то здесь http://kb.nocproject.org/display/DOC/Device+Support указывать какой профиль выбирать.
dvolodin #
07:14
Dmitry1: там тип bitsting
07:14
можно его, конечно, и в INT переводить
Dmitry1 #
07:15
dvolodin: Можно ли сделать в качестве отладки для FM, чтобы BER выводился прямо на WEB страничку.
07:15
Т.е. я вижу "кривой" трап, а тут же к нему и BER лежит
dvolodin #
07:15
он у тебя выводится в логе активатораъ
07:15
если логгирование трапов включено
Dmitry1 #
07:16
Выводится. Только там слишком много всего выводится
07:17
Ты разбирал BER, который я выложил в NOC-556 ?
dvolodin #
07:17
да
Dmitry1 #
07:17
пипец
07:17
значит проблема в чем-то другом
dvolodin #
07:18
и своим парсером и руками
Dmitry1 #
07:18
значит не весь пакет в BER попадает
dvolodin #
07:19
весь
07:20
там TLV
Dmitry1 #
07:20
http://forum.dlink.ru/viewtopic.php?f=2&t=146214
dvolodin #
07:20
длина совпадает
Dmitry1 #
07:20
Я специально поднимал тему там по этому поводу
dvolodin #
07:21
софт?
Dmitry1 #
07:21
wireshark вроде
dvolodin #
07:21
прошивка совпадает?
07:21
поставь tcpdump ..... -s1500 -w .out udp port 162
Dmitry1 #
07:22
не в прошивке дело. у меня на _всех_ коммутаторах d-link такая фигня
dvolodin #
07:22
нужно по пакетам сравнивать
07:22
2012-07-17 08:12:10,716 [TrapCollector(0x805102a90)] SNMP TRAP: '0\x82\x00g\x02\x01\x00\x04\trjkgh5uhh\xa4\x82\x00U\x06\x0e+\x06\x01\x04\x01\x81+\x0bF\x08\x02\x10\x01\x02@\x04\nt\x00;\x02\x01\x06\x02\x01\x05C\x05\x00\x95,<\x1f0\x82\x00.0\x15\x06\x10+\x06\x01\x04\x01\x81+\x0bF\x08\x02\x14\x02\x01\x01\x01\x02\x01\x120\x15\x06\x10+\x06\x01\x04\x01\x81+\x0bF\x08\x02\x10\x01\x02\x01\x03\x02\x01\n'
07:23
для справки
07:23
в OID'ах в BER всегда присутсвует плюсик
acid232 #
07:23
хуавей должен свежие миб-ы дать
07:23
но думаю от этого трап не изменится
dvolodin #
07:27
можешь смоделировать шторм?
07:27
надо посмотреть, что отловил tcpdump
07:27
что увидел коллектор
07:27
как мы его распарсили, и как wireshart
Dmitry1 #
07:28
попробую. запустил tcpdump. жду, когда шторма прийдут
dvolodin #
07:31
только грабь весь пакет
07:31
там по умолчанию 64 октета только
Dmitry1 #
07:31
-s1500
dvolodin #
07:31
ok
07:32
в лабораторных условиях не смоделируется?
Dmitry1 #
07:32
пока не могу.
07:33
В августе начальство уйдет в отпуск - тогда могу делать что угодно. Сейчас же изображаю бурную деятельность.
zi_rus #
07:34
вырубай стп, и шторм получишь и ибд заниматься проще
dvolodin #
07:36
может попросить пакет с трапом у dlink'а?
07:46
есть у меня нехорошая идея
07:46
сделать в JS- приложениях кнопочку "Help"
07:46
и при нажатии открывать страницу в Confluence
07:47
может быть это поспособствует документированию?
07:50
то есть делаем space HELP_EN, HELP_RU
07:50
у каждого приложения будет свой help id
07:51
юзер в настройках выбирает язык, на котором ему показывать help
07:51
в основном документировать назначение полей и скрытые особенности
Dmitry1 #
08:14
и возможность самим пользователям туда писать
dvolodin #
08:15
ну да
08:15
я же говорю - на Confluence
zi_rus #
08:19
dvolodin, почему поиск по дескрипшену работает нормально, а по custom field - только exact match?
Guest-ru #
08:19
Как логинится будет на конфлуенсе? Спрашивать логин/пароль и хранить кукис?
dvolodin #
08:19
read only по умолчанию
08:22
в общем, хочу дать community возможность писать документацию и не жаловаться, что ее нет
zi_rus #
08:23
хорошая отмазка, годная, только писать могут те кто знает, а жалуются те кто не знает, неувязочка получается
dvolodin #
08:25
вот пусть те, кто не знает, промотивируют тех, кто знает :)
08:26
под лежачий камень вода не течет, как известно :)
08:26
интересно, сколько стоит человек на JS/ExtJS в регионах?
08:26
на full time?
zi_rus #
08:26
в рабство?
dvolodin #
08:29
не, насяльника кормить не будет, и жильем обеспечивать тоже :)
08:29
рабская жизнь - это курорт
08:29
:)
08:35
кстати, к вопросу об игнирировании link up/link down
08:35
есть еще куча аварий, связанных с линками
08:35
типа err-disable
08:36
half-duplex и прочее
08:37
по идее, их надо игнорировать по другим правилам
08:38
link up/link down на порту физика неинтересны
08:38
а вот half-duplex -- вполне может быть
Guest-ru #
08:41
Может мне выучить этот ExtJS наконец.. писал бы свистелки для нока...
dvolodin #
08:43
угу
08:43
он, на самом деле, достаточно простой
08:43
особенно когда надо просто прилабать кнопочку к уже имеющемуся приложению
Skripnik #
08:46
Помогите разобраться с ошибкой. Пытаюсь наваять скрипт get_interfaces для алкатела, в самом примитивном варианте, т.е. снимаю только интерфейсы, без субинтерфейсов. Но мне выдает ошибку. Скрипт http://pastebin.com/89yfEQat . Ошибка http://pastebin.com/m0zCzZjb
08:47
а то знаний не хватает. сам не разберусь
dvolodin #
08:49
{"interfaces": [ .... ]}
08:50
примерно так вывод выглядит
Skripnik #
08:52
так у меня он так и выглядит. или я что-то пропустил?
dvolodin #
08:53
нет, не так
Guest-ru #
08:55
Попробуй return [{"interfaces": r}]
dvolodin #
08:55
там возвращается список forwarding instances
08:55
у каждого - аттрибут interfaces
Skripnik #
08:56
return [{"interfaces": r}] - а вот так заработало.
Guest-ru #
08:57
i["interfaces"] += [n] - кажись ненадо.
08:57
если есть get_switchport то могу подсказать как сделать сабинтерфейсы..
Skripnik #
08:59
у алкатела нет get_switchport.
09:00
хотя от подсказки не откажусь
Dmitry1 #
09:18
dvolodin: лови на @gmail.com файлик с tcpdump
dvolodin #
09:18
словил?
Dmitry1 #
09:19
не знаю. я отправил
09:19
там по крайней мере четыре ивента PKT-STORM-CTRL-MIB::swPktStormNotify
Guest-ru #
09:30
Ну если бы был get_switchport то сабы делаются примерно так: http://pastebin.com/xJW5btQ4
09:30
только переменные повводи, ато каждый раз писать match.group("name") некрасиво
Skripnik #
09:32
это у меня проба пера. так хоть немного понимаю что делаю
09:33
значит прийдется писать свичпорт для алкателя
zi_rus #
10:05
не забудь про снмп часть
10:07
она даже проще может оказаться
10:35
dvolodin, давай тебя пнем в нужном направлении?
dvolodin #
10:36
в сторону сберкассы? :)
zi_rus #
10:37
я про фм
10:37
давай уже автоматизируй прописывание линков
dvolodin #
10:37
:)~
10:37
хочется, да? :)
zi_rus #
10:38
это следующий логический шаг к новому ФМ
10:38
не то чтобы очень хочется, мы пока на неткуле сидим, но вдруг пригодится
10:39
это как раз server-side которыми ты так любишь заниматься
10:39
dvolodin, пообщайся с Guest-ru, у него какие-то наработки по этой теме есть
Guest-ru #
10:40
:)
dvolodin #
10:40
тут вопрос - как это выглядеть будет
Guest-ru #
10:40
Надо сирену прикрутить, без сирены FM не-то.
dvolodin #
10:40
pyRule, которое на входе получает instance типа Interface, а на выходе выдает название профиля?
10:41
Guest-ru: могу такое предложить
10:41
сделать тему на форуме, обсудить концепцию, выложить патчик
10:41
народ поиграется, патчик доработается и поедет в транк
Guest-ru #
10:42
Это потом, но очень мне не хватает. Могу только через html5 или сторонний flash.
dvolodin #
10:42
Я думаю, HTML5 у нас уже всеми браузерами поддерживается, которые тянут NOC UI
Guest-ru #
10:42
Потом когда появится в Extjs либа со звуком перепишем нормально.
10:43
Вот и в HTML5 это проще реализовать.
dvolodin #
10:43
ну да
10:43
требования очень простые
10:44
должно работать в Safari, хроме и мохнолисе
zi_rus #
10:44
опера
dvolodin #
10:45
эту в пень
10:47
zi_rus: я подозреваю, что NOC сейчас про вашу сетку знает больше, чем netcool :)
zi_rus #
10:47
не уверен
10:48
в неткуле есть topology_discоvery, а у вас... вот я только что пнул
10:52
dvolodin, вот когда я выдерну из сервера один из патчей и нок скажет что из него патч выдернули, а не "ааа!!! вся сеть лежит!!! ааа!!! ничего не пингуется!!!", тогда посмотрим
ufir #
10:54
вы есть очень много кушать
dvolodin #
11:05
Ну, допустим, есть у меня interface classification :)
m495rus #
11:08
Дмитрий, не подскажете, а GIS уже работает. У нас есть карта и слой в формате Google Earth. Слой можно как-то применить?
11:08
и как привязать оборудование к карте?
zi_rus #
11:17
никак
11:17
есть только карта
ufir #
11:21
что-то interfaces перестал работать... пустая вкладка, в логах чисто. обновлялся сегодня
dvolodin #
11:24
ufir: в JS-консоли есть что-нибудь?
ufir #
11:27
uncaught TypeError: Object #<Object> has no method 'ClickableLookup'
dvolodin #
11:30
static/js/noc/util.js посмотри
11:30
он с r6527 должен был обновиться
11:30
может между коммитами попал
ufir #
11:31
# ll
11:31
-rw-rw-r-- 1 noc noc 3589 Jul 23 06:27 util.js
dvolodin #
11:32
посмотри, есть ли там ClickableLookup
11:32
если есть - shift + refresh
11:32
или кеши прочисти
ufir #
11:32
даююю
11:32
NOC.render.ClickableLookup = function(name) {
11:32
понял
dvolodin #
11:33
он у тебя, похоже, из кеша старый берет
ufir #
11:33
щас вообще - даже ошибку не выдает ;)
dvolodin #
11:34
кеши прочисти
ufir #
11:36
да я вообще другим броузером пробовал..
_4ePTeHok #
11:40
погодите, а subinterfaces - обязательный параметр для всех физ. ифейсов чтоли? (get_interfaces)
ufir #
11:42
хм... заработало
dvolodin #
12:06
_4ePTeHok: не обязательный, но без него они бессмыслены
_4ePTeHok #
12:07
разобрался, да
12:08
dvolodin, я верно понимаю что Po(aggregated) должен иметь в сабах physical составляющие?
dvolodin #
12:09
нет
12:09
в сабах он имеет сервисы
12:09
грубо говоря
12:09
если прописано
12:09
interface Po 1
12:10
ip address такой-то
12:10
то на нем будет саб is_ipv4 = True, ipv4_addresses = [такой-то]
12:10
если прописано
_4ePTeHok #
12:10
хм..
dvolodin #
12:10
interface Po 1
12:10
switchport
12:10
то будет саб is_bridge
12:11
то есть по сабам он полностью эквивалентен physical
_4ePTeHok #
12:11
но в любом случае в сабе нужно отдавать все параметры копируя родителя po1?
12:12
при is_bridge
dvolodin #
12:14
нет
12:15
у физических интерфейсов, в Po1 нет сабов, стоит только aggregated_interface = Po1
_4ePTeHok #
12:16
епт. запутал чего то
dvolodin #
12:17
смотри
_4ePTeHok #
12:17
у меня допустим L2 железяка со всеми вытекающими. Есть aggregated в виде Po1[eth 1/1, eth1/2].
dvolodin #
12:17
грубо говоря
_4ePTeHok #
12:18
в циско терминалогии - switchport
dvolodin #
12:18
да
12:18
eth1/1, eth1/2 -- без сабов и aggregated_interface = Po1
12:18
Po1 -- с одним сабом типа bridge
12:19
короче -- interface -- это то, что interface в JUNOS, саб -- это unit
_4ePTeHok #
12:20
ага, так понятней, спасибо.
dvolodin #
12:21
собственно роутером или свичом оно может быть как на физическом порту, так и на port-channel'е
12:26
Кстати еще из JS-задач интересных
12:26
визуализация топологии
12:26
она хранится в базе, нужна морда для рисования
_4ePTeHok #
12:27
кто то вроде уже крутил на JS из тутошних
zi_rus #
12:31
dvolodin, как еще можно удалить префикс из ипам? очень неудачно возник один такой в ipv6, если пробуешь его открыть нок виснет
12:32
и еще в ipv6 не удаляются вложенные префиксы, валится трейс
12:33
IntegrityError at /ip/ipam/12/6/2a03:8700:1::/48/delete/
dvolodin #
12:34
а что дальше в трейсе?
zi_rus #
12:34
dvolodin http://pastebin.com/vAf15GKb
12:35
вот еще что есть update or delete on table "ip_prefix" violates foreign key constraint "ipv6_transition_id_refs_id_43d6a7d59917cba5" on table "ip_prefix"
12:35
DETAIL: Key (id)=(604) is still referenced from table "ip_prefix".
12:36
dvolodin, уже третья проблема с ipv6 за 2 дня
13:03
dvolodin, можно ли из консоли удалить из ипам пару адресов, меня терзают смутные сомнения
dvolodin #
13:04
можно
zi_rus #
13:05
лаконично. а как?
13:07
кто-нибудь еще знает как это сделать?
dvolodin #
13:10
./noc shell
13:10
from noc.ip.models import Address
13:10
a = Address.objects.get(address="....")
13:10
print a
13:10
a.delete()
zi_rus #
13:13
понял, спасибо, пробую
13:16
dvolodin, помогло, теперь и префикс открывается
13:22
dvolodin, мне создать отдельное issue, или что-нибудь сделаешь в рамках NOC-584 ?
dvolodin #
13:23
диагностики докидай
zi_rus #
13:27
где бы ее взять
13:27
нок тупо виснет
13:27
все чисто на интуиции
13:29
с ужасом жду когда дискавери пройдется и заново эти адреса загонет в базу
dvolodin #
13:31
что за адреса там?
13:31
link-level?
14:00
закоммитил я interface classification
14:00
завтра доку допишу
_4ePTeHok #
14:07
а .replace можно как то заставить в одной строке менять сразу две пары слов? типа ab->bc, de->ef
15:27
интересно у нас в IOSXR admin_status и oper_status определяются.
15:27
"admin_status": i["status"],
15:27
"oper_status": i["status"],
15:27
смысл вводить два?
15:27
status = match.group("status") == "up"
15:27
ifaces[current] = {
15:27
"name": current,
15:27
"status": status
15:28
или я чего то в этой жизни не понимаю...или..
20:29
полуношничаешь?)
dvolodin #
20:30
:)
_4ePTeHok #
20:33
я тут весь день сегодня голову ломал. Зачем в get_interfaces 2-status'a, если им руками в скриптах присваивают значение "up"?)
Tweet
Share this page
Share this page: Tweet