Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Flatly)
  • No Skin
Collapse
Brand Logo

NetXMS Forum

  1. Home
  2. Support (Russian)
  3. Active Discovery bugs

Active Discovery bugs

Scheduled Pinned Locked Moved Support (Russian)
16 Posts 3 Posters 79.4k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K
    K
    kozlov_ao
    wrote on last edited by
    #2

    Приветствую!
    Нет, это не баг. Просто наверняка имеется какой-либо маршрут и т.п. шляпа, например, на сеть провайдера. В моей практике часто встречаются ситуации, когда сетка провайдера просматривается по SNMP... как то они не беспокоятся о безопасности ))
    Чтобы ловились только твои хосты - пропиши фильтр.

    Чтобы хосты раскидывались по Infrastructure Services - можно создать правила авто-маппинга (properties - automatic bind rules)... ну или в ручную, тыкаешь правой кнопкой по нужной папке и выбираешь "Bind..."

    1 Reply Last reply
    0
    • E
      E
      enp
      wrote on last edited by
      #3

      @kozlov_ao said in Active Discovery bugs:

      Чтобы ловились только твои хосты - пропиши фильтр.

      А в чем тогда разница между Active Discovery Targets и Address Filters?

      @kozlov_ao said in Active Discovery bugs:

      Чтобы хосты раскидывались по Infrastructure Services - можно создать правила авто-маппинга (properties - automatic bind rules)...

      А как написать правило: класть в этот контейнер те ноды, которых нет ни в каких других контейнерах?

      1 Reply Last reply
      0
      • K
        K
        kozlov_ao
        wrote on last edited by
        #4

        В таргет, он прошерстит все что сможет, начиная с указанного диапазона + все зависимости.. это позволит составить карту сети.
        Фильтр ему аппетит немного попортит...

        А как написать правило: класть в этот контейнер те ноды, которых нет ни в каких других контейнерах?

        ммм... ну тут я пас )) ни разу не ходил от обратного 🙂

        1 Reply Last reply
        0
        • E
          E
          enp
          wrote on last edited by
          #5

          Active Discovery Targets - обязательный параметр или достаточно Address Filters?

          1 Reply Last reply
          0
          • E
            E
            enp
            wrote on last edited by
            #6

            А как хотя бы вручную добавить ноду в контейнер, если она видна исключительно в Entire Network? Там у нод ничего похожего по смыслу в контекстном меню я не вижу.

            1 Reply Last reply
            0
            • K
              K
              kozlov_ao
              wrote on last edited by
              #7

              тыкай не по ноде, а по папке в Infrastructure Services

              1 Reply Last reply
              0
              • E
                E
                enp
                wrote on last edited by
                #8

                @kozlov_ao said in Active Discovery bugs:

                тыкай не по ноде, а по папке в Infrastructure Services

                понял, спасибо

                1 Reply Last reply
                0
                • E
                  E
                  enp
                  wrote on last edited by
                  #9

                  @enp said in Active Discovery bugs:

                  Active Discovery Targets - обязательный параметр или достаточно Address Filters?

                  Кстати, ни одного не достаточно. В обоих параметрах у меня 192.168.191.0/24, Filter / Custom script для фильтрации выглядит так:

                  trace(0, "New node address = " . $1->ipAddr);
                  return false;
                  

                  В логе:

                  Dec 20 13:16:17 monitor netxmsd[11538]: New node address = 10.11.80.71
                  

                  Предполагать, что Filter выполняется раньше, чем Active Discovery Targets и Address Filters, вроде глупо - или это так? Я могу, наверное, и в скрипте фильтровать по сети/диапазону - но зачем тогда нужны Active Discovery Targets и Address Filters? Мне бы хотелось, чтобы не интересующие меня сети вообще не опрашивались - это можно сделать?

                  1 Reply Last reply
                  0
                  • K
                    K
                    kozlov_ao
                    wrote on last edited by
                    #10

                    Обязательный Target, Filter - не обязательный...

                    Фильтруй так:


                    111.png

                    1 Reply Last reply
                    0
                    • E
                      E
                      enp
                      wrote on last edited by
                      #11

                      Все правильно, в документации http://wiki.netxms.org/wiki/UM:Network_Discovery написано:

                      "Address Filters" Section

                      In this section you can define address ranges for automatically generated discovery filter. This list has no effect if discovery is off or filter is not set to "Automatically generated script".

                      Т.е. без галочки "Accept node if it is within given range or subnet" писать что-либо в Address Filters нет никакого смысла.

                      Active Discovery Targets нужен только для активного опроса с помощью ICMP. Соответственно, ноды из других подсетей я вижу благодаря обязательным "ARP and routing information". Не помешал бы, кстати, вариант "Active only".

                      С учетом необходимости добавления новых нод в специально выделенный для этих целей контейнер мне, видимо, нужен такой Filter / Custom script:

                      if (AddrInSubnet($1->ipAddr, "192.168.191.0", "255.255.255.0")) {
                      	BindObject(FindObject("Discovered"), $node);
                      	return true;
                      } else {
                      	return false;
                      }
                      
                      1 Reply Last reply
                      0
                      • K
                        K
                        kozlov_ao
                        wrote on last edited by
                        #12

                        Я показал как сделано у меня... как сделаете Вы - решать вам.
                        У меня ноды разных типов раскидываются по разным контейнерам.

                        1 Reply Last reply
                        0
                        • E
                          E
                          enp
                          wrote on last edited by
                          #13

                          @enp said in Active Discovery bugs:

                          С учетом необходимости добавления новых нод в специально выделенный для этих целей контейнер мне, видимо, нужен такой Filter / Custom script:

                          if (AddrInSubnet($1->ipAddr, "192.168.191.0", "255.255.255.0")) {
                          	BindObject(FindObject("Discovered"), $1);
                          	return true;
                          } else {
                          	return false;
                          }
                          

                          Нет, не работает - Function or operation argument is not an object на строчке с BindObject. Подозрение на то, что в $1 попадает экземпляр NewNode, а ожидается Node или NetObj. Можно ли преобразовать NewNode в Node или при выполнении скрипта Node еще не существует и задача нерешаемая?

                          Можно, конечно, сделать иначе: периодически выбирать ноды без контейнеров и их уже складывать в контейнер через Java API - но эта идея мне совсем не нравится.

                          1 Reply Last reply
                          0
                          • E
                            E
                            enp
                            wrote on last edited by
                            #14

                            Я попробовал зайти еще с одной стороны и написал такой скрипт в Automatic Bind Rules для контейнера Discovered:

                            parents = GetNodeParents($node);
                            
                            foreach(p : parents)
                            	trace(1, "Parent object: name='" . p->name . "' id=" . p->id);
                            
                            if (p == null)
                            	return true;
                            else
                            	return false;
                            

                            Еще не успело ничего найтись, как в этот контейнер были добавлена куча нод, принадлежащая другим контейнерам. Т.е. функция GetNodeParents для них вернула null. Что же тогда понимается под родителями нод и есть ли способ узнать, принадлежит ли нода какому-либо контейнеру?

                            1 Reply Last reply
                            0
                            • V
                              V
                              Victor Kirhenshtein
                              wrote on last edited by
                              #15

                              Проверьте что CheckTrustedNodes в настройках сервера выставлен в 0.

                              1 Reply Last reply
                              0
                              • E
                                E
                                enp
                                wrote on last edited by
                                #16

                                @victor said in Active Discovery bugs:

                                Проверьте что CheckTrustedNodes в настройках сервера выставлен в 0.

                                CheckTrustedNodes

                                Нет, как раз CheckTrustedNodes = 1. Спасибо, при следующих попытках попробую поменять.

                                1 Reply Last reply
                                0

                                Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                With your input, this post could be even better 💗

                                Register Login
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                Powered by NodeBB Contributors
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • Users
                                • Groups