Printers not getting discovered and difference b/w cmdb_ci_ip_address and discovery_range_item table
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
4 weeks ago
We have a Discovery Schedule that runs every Sunday with 79 IP ranges for printers. However my CMDB team shared a list of additional printer IP addresses which are missing in cmdb_ci_printer table.
Later we figured it out those ranges are not part of the printer Discovery Schedule.
When I checked, some of these printer IPs exist in the cmdb_ci_ip_address table but not in the discovery_range_item table.
I have a few questions to clarify this:
What is the difference between cmdb_ci_ip_address and discovery_range_item tables and are they interconnected?
- Few missing IPs from the printers exist in the cmdb_ci_ip_address table and they come from Tanium integration.
- What’s the correct way to make sure all these missing printers are included in Discovery , should I add new ranges or check something else?
Thank you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
For the second question, you need to add specific conditions in the Tanium integration to ensure that certain devices are correctly classified under the Printer class.
Examples:
If Manufacturer contains HP and Model contains LaserJet → cmdb_ci_printer
Thanks and Regards
Sai Venkatesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
1. Difference Between cmdb_ci_ip_address and discovery_range_item
| Table | Purpose | Populated By | Typical Use |
|---|---|---|---|
| cmdb_ci_ip_address | Stores IP address configuration items (CIs) discovered or imported into the CMDB. Each record represents an IP that belongs to a device (like a printer, server, router). | Populated by Discovery, Import Sets, or Integrations (e.g., Tanium, SCCM) | Used to track IPs linked to Configuration Items (like Printers, Servers, etc.) |
| discovery_range_item | Stores the list of IP addresses or ranges configured in Discovery Schedules. Each record defines which IPs Discovery should attempt to scan. | Populated when you define IP Ranges under Discovery Schedules or Discovery Ranges | Used by Shazzam Probe to determine which IPs to scan |
In short:
-
cmdb_ci_ip_address = “What we already know about.”
-
discovery_range_item = “What we plan to discover.”
They are not directly linked, but Discovery can populate cmdb_ci_ip_address after scanning IPs listed in discovery_range_item.
2. Why Printers Exist in cmdb_ci_ip_address but Not Discovered
You mentioned that some IPs exist in cmdb_ci_ip_address (from Tanium) but not in discovery_range_item.
That means:
-
Tanium integration imported these IPs as part of endpoint inventory.
-
But Discovery has never scanned these IPs because they’re not in any defined Discovery range.
Hence, Discovery has no visibility to actually probe those IPs — so no entries appear in cmdb_ci_printer.
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
YouTube: https://www.youtube.com/@learnservicenowwithravi
LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 weeks ago
Thank you for your response. Now I’ve got some clarity between the IP ranges and IP address tables.
But here’s the twist , few printer IPs exist in cmdb_ci_ip_address (from Tanium), but when I opened those records, they belong to cmdb_ci_computer with the same IP address. I guess this means it has nothing to do with printers. Please correct me if I’m wrong, is it possible for printers and computers to have the same IP addresses?
That makes sense. In this case, are we supposed to create new IP ranges by setting the start and end points for those printers in the discovery schedule? Also is there any way to test these ranges manually once they’re configured in sub-prod?
