Существуют ли формальные связи между базовой функциональностью Orion и IPAM?
Я пытаюсь понять, как таблицы IPAM SolarWinds Orion соотносятся с таблицами Orion. Я знаю, что есть записи на стороне IPAM, которые требуют некоторого внимания и / или очистки. Поэтому я написал несколько запросов, например, где IP-адрес был ключевым:
SELECT DISTINCT
I.IPAddress
, I.DnsBackward
, O.Caption
, O.IP_Address
FROM IPAM.IPNode AS I
LEFT OUTER JOIN Orion.Nodes AS O ON I.IPAddress = O.IP_Address
WHERE I.Status = 1
AND ( I.DnsBackward LIKE '' OR I.DnsBackward IS NULL)
Я получаю много несоответствий, когда пытаюсь связать, используя IP-адрес. Итак, несколько вопросов:
- Есть ли формальная связь (ключ) между этими двумя таблицами?
- Если нет формальной связи, есть ли лучший ключ для соединения?
- Есть ли место, где я могу увидеть связи (ключи) между таблицами Orion и IPAM?
Приведенный выше запрос направлен на поиск записей, в которых отсутствуют записи DNS A и записи PTR. Поэтому я могу добавить их, используя интерфейс PowerShell SDK:
Invoke-SwisVerb $swis IPAM.IPAddressManagement AddDnsARecordWithPtr @("QQQ.TestZone.", "10.11.78.25", "10.199.7.82", "TestZone")
1 ответ
Причина, по которой вы боретесь, состоит в том, что таблицы не связаны.
Таблица Orion.Nodes будет содержать только управляемые устройства в IPAM, обычно это серверы DHCP и DNS, которые настроены (с подходящими учетными данными) для опроса IPAM. Эта таблица использует NodeID в качестве уникальной ссылки. Если вы видите устройство с узлов http: // - IPAM-сервера - / ui / manage /, то оно будет в таблице узлов.
Таблица IPAM.IPNode предназначена для устройств, обнаруженных при сканировании IPAM, это не связанная таблица, и вы найдете соответствующие имена узлов и IP-адреса, но не совпадающие NodeID.
Эта таблица использует IpNodeId в качестве уникальной ссылки.
SELECT IpNodeId,IPAddress,
CASE
WHEN ISNULL(sysname, '') <> '' THEN sysname
WHEN ISNULL(DnsBackward, '') <> '' THEN DnsBackward
WHEN ISNULL(Alias, '') <> '' THEN Alias
ELSE ''
END AS Hostname
FROM IPAM.IPNode
WHERE Status = 1 --IP Address Used