# # License: GNU General Public License v2 # # Author: thl-cmk[at]outlook[dot]com # URL : https://thl-cmk.hopto.org # Date : 2023-10-16 # File : nvdct.toml # see https://toml.io/en/ # # contains the user data and settings for nvdct.py # # list of (additional to -s/--seed-devices) seed devices SEED_DEVICES = [ "HP-2920-24G" # "CORE01", # "LOCATION01", # "LOCATION02", ] # drop neighbours with invalid names (only L2 Topologies (i.e. CDP, LLDP, CUSTOM) DROP_HOSTS = [ # "not advertised", # "a nother invalid name", ] # drop neighbours with invalid names by regex (only L2 Topologies (i.e. CDP, LLDP, CUSTOM) DROP_HOSTS_REGEX = [ # "^(([0-9a-fA-F]){2}[:.-]?){5}([0-9a-fA-F]){2}$", ] # hosts will be ignored in L3v4 topology L3V4_IGNORE_HOSTS = [ # "host1", # "host2", ] # drop IP address that match network L3V4_IGNORE_IP = [ # "192.168.100.231", # "192.168.100.0/16", # "192.168.150.0/255.255.255.0", ] # ignore IPs by wildcard # if comparing an ip address: # each 0 bit in the wildcad has to be exacly as in the pattern # each 1 bit in the wildacrd will be ignored L3V4_IRNORE_WILDCARD = [ # [ pattern , wildcard ] # ["172.17.0.1", "0.0.255.0"], # ignore all IPs ending with 1 from 172.17.128.0/16 # ["172.17.128.0", "0.0.127.3"], # ignore all IPs ending with 0-3 from 172.17.128.0/17 ["172.17.128.3", "0.0.127.0"], # ignore all IPs ending with 3 from 172.17.128.0/17 ] # networks to summarize L3V4_SUMMARIZE = [ # "10.193.172.0/24", # "10.194.8.0/23", # "10.194.12.0/24", # "10.194.115.0/255.255.255.0", ] # topologies will not be deleted by "--keep" PROTECTED_TOPOLOGIES = [ # "2023-10-17T14:08:05.10", # "your_important_topology" ] # user defined static connections # connections will be added from host to neighbour and in reverese # hosts/neighbours in this section will be added to SEED_DEVICES STATIC_CONNECTIONS = [ # ["cmk_host1", "local-port1", "neighbour-port1", "neighbour1", "label"], # ["cmk_host1", "local-port2", "neighbour-port2", "neighbour2", "label"], ] # optional custom layers use option -l/--layers CUSTOM to include this layers # don't use --pre-fetch without a host_label that matches all host you want to add CUSTOM_LAYERS = [ # { path = "path,in,inventory", columns = "columns from inventory", label = "label for the layer", host_label = "CMK host label to find matching hosts" }, # { path = "networking,lldp_cache,neighbours", columns = "neighbour_name,local_port,neighbour_port", label = "custom_LLDP", host_label = "nvdct/has_lldp_neighbours" }, # { path = "networking,cdp_cache,neighbours", columns = "neighbour_name,local_port,neighbour_port", label = "custom_CDP", host_label = "nvdct/has_cdp_neighbours" }, ] [MAP_SPEED_TO_THICKNESS] # must be sorted from slower to faster speed # use only one entry to have all conections with the same thickness # bits per second = thickness # 2000000 = 1 # 2 mbit # 5000000 = 2 # 5 mbit # 1e7 = 3 # 10 mbit # 51e7 = 4 # 51 mbit 1e8 = 1 # 100 mbit 1e9 = 3 # 1 gbit 1e10 = 5 # 10 gbit # map inventory neighbour name to Checkmk host name [HOST_MAP] # inventory_neighbour1 = "cmk_host1" # inventory_neighbour2 = "cmk_host2" # inventory_neighbour3 = "cmk_host3" [EMBLEMS] # can use misc icons from CMK or upload your own in the misc category # for built-in icons use "icon_" as prefix to the name from CMK # max size 80x80px # "host_node" = "icon_missinc" # "ip_address" = "ip-address_80" # "ip_network" = "ip-network_80" # "l3v4_replace" = "icon_plugins_cloud" # "l3v4_summarize" = "icon_aggr" # "service_node" = "icon_missing" # replace network objects (takes place after summarize) [L3V4_REPLACE] # "10.193.172.0/24" = "MPLS" # "10.194.8.0/23" = "MPLS" # "10.194.12.0/24" = "MPLS" # "10.194.115.0/24" = "MPLS" [SETTINGS] # api_port = 80 # backend = "MULTISITE" # default = false # dont_compare = false # keep = 0 # keep_domain = false layers = ["LLDP"] # layers = ["LLDP", "CDP", "STATIC", "CUSTOM", "L3v4"] # log_file = "~/var/log/nvdct.log" # log_level = "WARNING" # log_to_stdout = false # lowercase = false # min_age = 0 # new_format = false # output_directory = '' # prefix = "" # pre_fetch = false # quiet = true # skip_l3_if = false # skip_l3_ip = false # time_format = "%Y-%m-%dT%H:%M:%S.%m" # uppercase = false