Перейти к содержимому
Калькуляторы

Stak

VIP
  • Публикации

    1271
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные пользователем Stak


  1. Раз мегафон-админы так говорят, я бы на вашем месте им поверил. На доступе у них много где древние PTN, вполне возможно - что балансировать по L3 в порт-чаннеле они не умеют. Так что, если трафика больше гигабита планируете - ориентируйтесь на десятку. Ну или (как вариант) две бгп-сессии с их роутером, через разные порты, тоже поможет.

  2. ...

    А в моем случае необходимо, чтобы роутер выступал прозрачно, по факту получая большой префикс /22 от одного, а далее с помощью inject из этого префикса вычлиняется /32, заносится в таблицу и уже этот /32 должен анонсироваться дальше. Подчеркну, именно префикс /32

    ...

     

    Опасное колдунство. Как-то один из наших аплинков решил пошаманить таким образом с нашими префиксами (в целях некой оптимизации прохождения трафика), а наша ас-ка из нескольких регионов анонсировалась, без внутренней связности между бордерами, поэтому был прописан allow as-in. И когда нам прилетели наши же префиксы, побитые на более мелкие, было очень неприятно.

  3. Что-то я давненько не следил за темой: они там у себя LLD-то как таковой пофиксили?

    тыц

    Да вроде всё норм работает. Запилил на днях бэкап конфигов с Хуавея на тфпт, по триггеру на сохранения конфига, и остальные шаблоны причесал (инвентори добавил, мониторинг вентиляторов и температуры и ещё всяких полезностей). В первый пост сейчас добавлю.

  4. А зачем так себя мучать, ведь при минимальной правке скрипты для rancid под h3c работают с хуавеями?

    У меня в заббиксе триггер на изменение конфига будет дёргать конфиг с железки. Для цисок есть такое (http://forum.nag.ru/...howtopic=101157), хочу и для хуавеев тоже.

     

    UPD:

    Вот и для хуавея забацал, пришлось отдельным скриптом, а то 255 символов у заббикса лимит для глобальных скриптов:

    #!/bin/sh

    # GNU GPL

    #

    # Zabbix global script for backup Huawei CFG to TFTP server

    # Usage:

    # ./hwGetConfig.sh Private 10.77.2.3 10.78.3.4 huawei-config

    # WARNING: filename MUST end with ".cfg", added by this script.

    # Zabbix usage:

    # Global script like this: /usr/local/bin/hwGetConfig.sh {$SNMP_WRITE} {HOST.CONN} {$TFTP_IP} {HOST.HOST} 2>&1

     

    # $1 {$SNMP_WRITE}

    # $2 {HOST.CONN}

    # $3 {$TFTP_IP}

    # $4 {HOST.HOST}

     

    /usr/bin/snmpset -v 2c -O qv -t 5 -c $1 $2 .1.3.6.1.4.1.2011.6.10.1.2.4.1.9.100 i 6 2>&1

    /usr/bin/snmpset -v 2c -O qv -t 5 -c $1 $2 .1.3.6.1.4.1.2011.6.10.1.2.4.1.2.100 i 6 .1.3.6.1.4.1.2011.6.10.1.2.4.1.3.100 i 2 .1.3.6.1.4.1.2011.6.10.1.2.4.1.4.100 s $4-`date '+%Y%m%d_%H%M%S'`.cfg .1.3.6.1.4.1.2011.6.10.1.2.4.1.5.100 a $3 .1.3.6.1.4.1.2011.6.10.1.2.4.1.9.100 i 4 2>&1

     

    #END

     

  5. rmavrichev@spb-nms-1:~$ snmpset -v 2c -c Private10.77.2.3 1.3.6.1.4.1.2011.6.10.1.2.4.1.2.100 i 3 1.3.6.1.4.1.2011.6.10.1.2.4.1.3.100 i 2 1.3.6.1.4.1.2011.6.10.1.2.4.1.4.100 s ne40e-current.cfg 1.3.6.1.4.1.2011.6.10.1.2.4.1.5.100 a 10.78.3.4 1.3.6.1.4.1.2011.6.10.1.2.4.1.9.100 i 4

    HUAWEI-CONFIG-MAN-MIB::hwCfgOperateType.100 = INTEGER: running2Net(3)

    HUAWEI-CONFIG-MAN-MIB::hwCfgOperateProtocol.100 = INTEGER: tftp(2)

    HUAWEI-CONFIG-MAN-MIB::hwCfgOperateFileName.100 = STRING: ne40e-current.cfg

    HUAWEI-CONFIG-MAN-MIB::hwCfgOperateServerAddress.100 = IpAddress: 10.78.3.4

    HUAWEI-CONFIG-MAN-MIB::hwCfgOperateRowStatus.100 = INTEGER: createAndGo(4)

     

    rmavrichev@spb-nms-1:~$ snmpset -v 2c -c Private 10.77.2.3 1.3.6.1.4.1.2011.6.10.1.2.4.1.9.100 i 6

    HUAWEI-CONFIG-MAN-MIB::hwCfgOperateRowStatus.100 = INTEGER: destroy(6)

     

    как-то так.

    Хотя лично у меня не работает, т.к. сервер не в GRT, а указать vpn-instance через OID hwCfgOperateVpnInstanceName (1.3.6.1.4.1.2011.6.10.1.2.4.1.14 ?) железка не даёт.

     

    при этом, из cli - можно:

    <NE40>tftp -i LoopBack 30 10.78.3.4 put cfcard:/default.cfg test-ne40.cfg

    Error: Failed to connect to the remote host.

     

    <NE40>tftp -i LoopBack 30 10.78.3.4 vpn-instance MNGM put cfcard:/default.cfg test-ne40.cfg

    Info: Transfer file in binary mode.

    Uploading the file to the remote TFTP server. Please wait...

    100%

    TFTP: Uploading the file successfully.

    12750 byte(s) sent in 1 second(s).

    UPD: грабли с vpn-instance фиксятся так:

    <HUAWEI> system-view

     

    [HUAWEI] set net-manager vpn-instance MNGM

     

  6. Я бы вам все таки посоветовал мониторить:

    dot3StatsAlignmentErrors

    dot3StatsCarrierSenseErrors

    dot3StatsExcessiveCollisions

    dot3StatsFCSErrors

    Каждый тип ошибок влечет за собой свои конкретные косяки и при появлении определенного типа ошибок, уже за ранее можно определить в чем проблема.

    Возможно, вы правы, но пока хватает. Сравнил на одной железке (свич доступа в офисе), через EtherLike-MIB можно получить заметно больше данных.

     

    snmpwalk -v 2c -c public -On 10.78.15.5 1.3.6.1.2.1.10.7.2.1 | grep Counter32 | grep -v 'Counter32: 0'

    .1.3.6.1.2.1.10.7.2.1.4.10002 = Counter32: 791 dot3StatsSingleCollisionFrames

    .1.3.6.1.2.1.10.7.2.1.4.10007 = Counter32: 75

    .1.3.6.1.2.1.10.7.2.1.5.10002 = Counter32: 707 dot3StatsMultipleCollisionFrames

    .1.3.6.1.2.1.10.7.2.1.5.10007 = Counter32: 40

    .1.3.6.1.2.1.10.7.2.1.8.10007 = Counter32: 6267 dot3StatsLateCollisions

    .1.3.6.1.2.1.10.7.2.1.18.10033 = Counter32: 1 dot3StatsSymbolErrors

    .1.3.6.1.2.1.10.7.2.1.18.10034 = Counter32: 1

    .1.3.6.1.2.1.10.7.2.1.18.10041 = Counter32: 1

    .1.3.6.1.2.1.10.7.2.1.18.10043 = Counter32: 1

     

     

    rmavrichev@spb-nms-1:~$ snmpwalk -v 2c -c public -On 10.78.15.5 IF-MIB::ifInErrors | grep Counter32 | grep -v 'Counter32: 0'

    .1.3.6.1.2.1.2.2.1.14.10033 = Counter32: 1

    .1.3.6.1.2.1.2.2.1.14.10034 = Counter32: 1

    .1.3.6.1.2.1.2.2.1.14.10041 = Counter32: 14 - 13 из них runts, отдельного счётчика в EtherLike-MIB не нашёл.

    .1.3.6.1.2.1.2.2.1.14.10043 = Counter32: 1

    Хотя из того, что удалось сопоставить с IF-MIB::ifInErrors - только dot3StatsSymbolErrors.

     

    For an interface operating at 100 Mb/s, the

    number of times there was an invalid data symbol

    when a valid carrier was present.

     

     

    В общем, желающие детализации - могут добавить самостоятельно :)

  7. Что значит глобальные?

    Я так понял, это actions script. Пожалуй, да, прокси это не умеет. Но тут совсем просто, ssh без пароля на удаленный хост вполне решает задачу.

    Хотя, ваш механизм тоже интересен :).

    Но вы использовали пинг в примере, а как action пинг использовать по меньшей мере странно. Пинг как раз как опросник идет.

    Snmpset или еще что-то было бы рационально...

    Пинг просто для примера, а реально это мне было нужно для дёрганья конфига с цисок, если он поменялся.

    Пример:

    Cisco config backup (proxy)

    /usr/bin/zabbix_get -s{$PROXY_IP} -p10050 -k"system.run[/usr/bin/snmpset -v 2c -O qv -t 5 -c {$SNMP_WRITE} {HOST.CONN} .1.3.6.1.4.1.9.2.1.55.{$TFTP_IP} s {HOST.HOST}-`date '+%Y%m%d_%H%M%S'`.txt 2>&1]"

     

    Cisco config backup (server)

    /usr/bin/snmpset -v 2c -O qv -t 5 -c {$SNMP_WRITE} {HOST.CONN} .1.3.6.1.4.1.9.2.1.55.{$TFTP_IP} s {HOST.HOST}-`date '+%Y%m%d_%H%M%S'`.txt 2>&1

  8. Хм. А можно пояснть? Стандартный механизм через external_scripts на заббикс-прокси почему вам не понравился?

    Разве external_scripts можно использовать в действиях, в ответ на срабатывание триггера, к примеру? У меня сложилось такое впечатление (возможно, что неверное) , что внешние скрипты - для проверок состояния чего-либо, т.е. наполнения элементов данных.

     

    Я говорил о глобальных скриптах, в 2.2.4 их , судя по всему, можно выполнять либо на сервере, либо на заббикс-агенте. Варианта с прокси я не нашёл.

  9. Зачем мониторить?

    <name>Errors RX int $1</name>

    От этого толку мало, если хотите мониторить ошибки на портах, мониторте канальный уровень и физический.

    Ну собственно в этом триггере мониторится значение IF-MIB::ifInErrors.{#SNMPINDEX}, емнип, это и есть канальный уровень (CRC фрейма).

    Я только свёл два отдельных триггера из исходного шаблона в один, да графики поправил, что бы эти данные вместе с трафиком отображались.

  10. Разобрался, как выполнять скрипты на proxy (полезно, если с самого заббикс-сервера не во все сети есть доступ, можно попинговать, или дёрнуть конфиг). Можно это делать через zabbix_get, надо только поставить на прокси ещё и заббикс-агент, и разрешить в нём remote commands.

     

    пример:

    Ping (proxy) Скрипт Сервер /usr/bin/zabbix_get -s{$PROXY_IP} -p10050 -k"system.run[/bin/ping -c 3 {HOST.CONN} 2>&1]"

     

    П.С.: {$PROXY_IP} и другие переменные задаются через Администрирование -> Общие -> Макросы.

    Утилиты zabbix_get в пакете заббикс-сервера для бубунты не было, взял бинарник из пакета прокси.

  11. Среди прочего маркетингового буллшита, произносимого Саабом, неоднократно проскакивало, что абонентам, подключеным микротиками через микротики следует давать /32 адреса и напрямую экспортировать /32 префиксы в ядро сети. Бест практик, типа.

     

    При этом, когда абонент переезжает, можно ничего не делать. Ведь абонент переедет вместе со своим /32 маршрутом.

     

    И всё это надо завернуть в PPPoE а Ethernet - в EoIP. И тогда точно счастье будет.

     

    В общем-то наличие абонентских /32 в ядре сети говорит о плохом дизайне. Не обязательно, но скорее всего. ))

    Ужас какой.

    Хотя строго говоря, наличие абонентских /32 в ядре сети иногда необходимо. И в некоторых случаях, вполне применяется на практике.

    Например, в одном из внедрений LTE, некоторым абонентам по хотелкам бизнеса выдавались паблик /32, а так как SGW (по сути, брас) было больше одного (завязанных через сервисное ядро из пары РЕ-шек), и было жёсткое требование обеспечить непрерывность сервиса при отказе или плановом выводе одного из SGW, то и /32 маршруты между ними приходилось гонять. Но не в ospf, а по mpbgp, в абонентском vpn (vrf). При отдаче же этих маршрутов дальше в опорную сеть, абонентские /32 аггрегировались. А на сервисном ядре вполне жило себе порядка 50К /32...

  12. ходят упорные слухи, что в одной area в случае оспф не стоит держать больше 50 роутеров.

    слухи про 50-60 в одной области идут со времен 25 и 36-ых цисок, распространяли их в свое время интрегаторы для впаривания нового оборудования.

    знаю сеть (биг 5) с 500 хостами в нулевой области.

     

    Мэйби. Но и ~500 на ис-ис идут с тех же времён. Так что с ростом мощи железа, тут та же ситуация.

  13. На больших сетках я так понял лучше iBGP юзать.

    не путайте тёплое с мягким, в качестве igp - оспф или исис. iBGP (точнее, mpBGP) юзать вы будете поверх них, для распостраниения vpn маршрутов.

    IS-IS в MikroTik не нашел.

    Это потому, что его там нет...

    С одной area сделал, все ОК. Вопросов 0.

    ходят упорные слухи, что в одной area в случае оспф не стоит держать больше 50 роутеров. У исис - в этом плане возможности на порядок больше, в районе 500 работает без проблем .

    А если у вас только оспф, но >50 роутеров - то вас ждёт особая уличная магия по разбивке на области и обеспечению передачи /32 маршрутов на лупбеки, между областями, что бы у вас строились lsp. Хотя у меня был isis, так что детально не расскажу :).

  14. В очередной раз прорекламирую рекурсивный дефолт :)

    ФВ режете до сетей /8, и на пару из сетей /8 пишете дефолт (ip route 0.0.0.0 0.0.0.0 8.0.0.0 например).

     

    итог: есть дефолт, с некстхопом того аплинка, от которого лучше маршрут к 8.0.0.0/8. И если вдруг этот аплинк перестал анонсировать 8/8, то некстхоп дефолта укажет на другого.

     

    П.С: Упс, не дочитал первый пост :)

  15. Периодически выпадают из хант-группы телефоны, в свойствах показывает "huntGroupLogout ". Лечится пересозданием хант-группы, но это как-то неправильно...

    Подскажите, что ещё можно с этим сделать (что бы не выпадали из хант-группы) ?

     

    ephone-12[11] Mac:0014.A92E.8F69 TCP socket:[39] activeLine:0 whisperLine:0 REGISTERED in SCCP ver 11/9 max_streams=0

    mediaActive:0 whisper_mediaActive:0 startMedia:0 offhook:0 ringing:0 reset:0 reset_sent:0 paging 0 debug:0 caps:8

    IP:10.247.214.15 * 50405 Telecaster 7940 keepalive 9 max_line 2 available_line 2 HuntGroupLogout

    button 1: cw:1 ccw:(0 0)

    dn 12 number 2512 CH1 IDLE CH2 IDLE huntGroupLogout

    Preferred Codec: g711ulaw

    Lpcor Type: none

     

     

    !

    voice hunt-group 7 parallel

    list 2512,2516

    pilot 2501

    !

    ephone-dn 12 dual-line

    number 2512

    label 2512

    description Kamenskaya E.A.

    name Kamenskaya E.A.

    call-forward noan 2545 timeout 10

    !

    ephone 12

    device-security-mode none

    mac-address 0014.A92E.8F69

    group phone 1

    type 7940

    button 1:12

    !

  16. Зачем запрещать принимать дефолт? Лучше запретите принимать ваши сети с любой длинной префикса.

    а вот дефолт как раз лучше не принимать, если он нужен (порезанный фулл-вью) - его лучше сделать самому, на сети тирванов например.

     

    пример:

    ip route 0.0.0.0 0.0.0.0 8.0.0.0

    - если сеть 8/8 пришла по бгп от пира - то дефолт будет указывать на этого пира.

  17. У больших операторов практика - терминировать абонентов региона / ФО где-то в одном месте. AS'ки на город не выделяют. Пулы адресов к городам не привязаны. Задача не имеет решения.

    AS-ки на город действительно не выделяют, однако пулы адресов к городам привязывают (приватные и соответствующие им публичные). Некоторые, специально для корректной работы геолокации. Йота, например, делала.

  18. Заканчивается — в смысле в сети реально 16М хостов?

    Или просто адресное пространство распределено неэффективно и прорежено?

    У некоторых во втором октете исторически код региона...

    Поэтому, уже начинают думать, как выдавать абонентам адреса из 100.64.