mirror of
https://github.com/netbox-community/netbox.git
synced 2026-01-11 21:10:29 +01:00
Add tally of remaining Available IPs in web UI views #3663
Closed
opened 2025-12-29 18:30:26 +01:00 by adam
·
16 comments
No Branch/Tag Specified
main
update-changelog-comments-docs
feature-removal-issue-type
20911-dropdown
20239-plugin-menu-classes-mutable-state
21097-graphql-id-lookups
feature
fix_module_substitution
20923-dcim-templates
20044-elevation-stuck-lightmode
feature-ip-prefix-link
v4.5-beta1-release
20068-import-moduletype-attrs
20766-fix-german-translation-code-literals
20378-del-script
7604-filter-modifiers-v3
circuit-swap
12318-case-insensitive-uniqueness
20637-improve-device-q-filter
20660-script-load
19724-graphql
20614-update-ruff
14884-script
02496-max-page
19720-macaddress-interface-generic-relation
19408-circuit-terminations-export-templates
20203-openapi-check
fix-19669-api-image-download
7604-filter-modifiers
19275-fixes-interface-bulk-edit
fix-17794-get_field_value_return_list
11507-show-aggregate-and-rir-on-api
9583-add_column_specific_search_field_to_tables
v4.5.0
v4.4.10
v4.4.9
v4.5.0-beta1
v4.4.8
v4.4.7
v4.4.6
v4.4.5
v4.4.4
v4.4.3
v4.4.2
v4.4.1
v4.4.0
v4.3.7
v4.4.0-beta1
v4.3.6
v4.3.5
v4.3.4
v4.3.3
v4.3.2
v4.3.1
v4.3.0
v4.2.9
v4.3.0-beta2
v4.2.8
v4.3.0-beta1
v4.2.7
v4.2.6
v4.2.5
v4.2.4
v4.2.3
v4.2.2
v4.2.1
v4.2.0
v4.1.11
v4.1.10
v4.1.9
v4.1.8
v4.2-beta1
v4.1.7
v4.1.6
v4.1.5
v4.1.4
v4.1.3
v4.1.2
v4.1.1
v4.1.0
v4.0.11
v4.0.10
v4.0.9
v4.1-beta1
v4.0.8
v4.0.7
v4.0.6
v4.0.5
v4.0.3
v4.0.2
v4.0.1
v4.0.0
v3.7.8
v3.7.7
v4.0-beta2
v3.7.6
v3.7.5
v4.0-beta1
v3.7.4
v3.7.3
v3.7.2
v3.7.1
v3.7.0
v3.6.9
v3.6.8
v3.6.7
v3.7-beta1
v3.6.6
v3.6.5
v3.6.4
v3.6.3
v3.6.2
v3.6.1
v3.6.0
v3.5.9
v3.6-beta2
v3.5.8
v3.6-beta1
v3.5.7
v3.5.6
v3.5.5
v3.5.4
v3.5.3
v3.5.2
v3.5.1
v3.5.0
v3.4.10
v3.4.9
v3.5-beta2
v3.4.8
v3.5-beta1
v3.4.7
v3.4.6
v3.4.5
v3.4.4
v3.4.3
v3.4.2
v3.4.1
v3.4.0
v3.3.10
v3.3.9
v3.4-beta1
v3.3.8
v3.3.7
v3.3.6
v3.3.5
v3.3.4
v3.3.3
v3.3.2
v3.3.1
v3.3.0
v3.2.9
v3.2.8
v3.3-beta2
v3.2.7
v3.3-beta1
v3.2.6
v3.2.5
v3.2.4
v3.2.3
v3.2.2
v3.2.1
v3.2.0
v3.1.11
v3.1.10
v3.2-beta2
v3.1.9
v3.2-beta1
v3.1.8
v3.1.7
v3.1.6
v3.1.5
v3.1.4
v3.1.3
v3.1.2
v3.1.1
v3.1.0
v3.0.12
v3.0.11
v3.0.10
v3.1-beta1
v3.0.9
v3.0.8
v3.0.7
v3.0.6
v3.0.5
v3.0.4
v3.0.3
v3.0.2
v3.0.1
v3.0.0
v2.11.12
v3.0-beta2
v2.11.11
v2.11.10
v3.0-beta1
v2.11.9
v2.11.8
v2.11.7
v2.11.6
v2.11.5
v2.11.4
v2.11.3
v2.11.2
v2.11.1
v2.11.0
v2.10.10
v2.10.9
v2.11-beta1
v2.10.8
v2.10.7
v2.10.6
v2.10.5
v2.10.4
v2.10.3
v2.10.2
v2.10.1
v2.10.0
v2.9.11
v2.10-beta2
v2.9.10
v2.10-beta1
v2.9.9
v2.9.8
v2.9.7
v2.9.6
v2.9.5
v2.9.4
v2.9.3
v2.9.2
v2.9.1
v2.9.0
v2.9-beta2
v2.8.9
v2.9-beta1
v2.8.8
v2.8.7
v2.8.6
v2.8.5
v2.8.4
v2.8.3
v2.8.2
v2.8.1
v2.8.0
v2.7.12
v2.7.11
v2.7.10
v2.7.9
v2.7.8
v2.7.7
v2.7.6
v2.7.5
v2.7.4
v2.7.3
v2.7.2
v2.7.1
v2.7.0
v2.6.12
v2.6.11
v2.6.10
v2.6.9
v2.7-beta1
Solcon-2020-01-06
v2.6.8
v2.6.7
v2.6.6
v2.6.5
v2.6.4
v2.6.3
v2.6.2
v2.6.1
v2.6.0
v2.5.13
v2.5.12
v2.6-beta1
v2.5.11
v2.5.10
v2.5.9
v2.5.8
v2.5.7
v2.5.6
v2.5.5
v2.5.4
v2.5.3
v2.5.2
v2.5.1
v2.5.0
v2.4.9
v2.5-beta2
v2.4.8
v2.5-beta1
v2.4.7
v2.4.6
v2.4.5
v2.4.4
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.3.7
v2.4-beta1
v2.3.6
v2.3.5
v2.3.4
v2.3.3
v2.3.2
v2.3.1
v2.3.0
v2.2.10
v2.3-beta2
v2.2.9
v2.3-beta1
v2.2.8
v2.2.7
v2.2.6
v2.2.5
v2.2.4
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.6
v2.2-beta2
v2.1.5
v2.2-beta1
v2.1.4
v2.1.3
v2.1.2
v2.1.1
v2.1.0
v2.0.10
v2.1-beta1
v2.0.9
v2.0.8
v2.0.7
v2.0.6
v2.0.5
v2.0.4
v2.0.3
v2.0.2
v2.0.1
v2.0.0
v2.0-beta3
v1.9.6
v1.9.5
v2.0-beta2
v1.9.4-r1
v1.9.3
v2.0-beta1
v1.9.2
v1.9.1
v1.9.0-r1
v1.8.4
v1.8.3
v1.8.2
v1.8.1
v1.8.0
v1.7.3
v1.7.2-r1
v1.7.1
v1.7.0
v1.6.3
v1.6.2-r1
v1.6.1-r1
1.6.1
v1.6.0
v1.5.2
v1.5.1
v1.5.0
v1.4.2
v1.4.1
v1.4.0
v1.3.2
v1.3.1
v1.3.0
v1.2.2
v1.2.1
v1.2.0
v1.1.0
v1.0.7-r1
v1.0.7
v1.0.6
v1.0.5
v1.0.4
v1.0.3-r1
v1.0.3
1.0.0
Labels
Clear labels
beta
breaking change
complexity: high
complexity: low
complexity: medium
needs milestone
netbox
pending closure
plugin candidate
pull-request
severity: high
severity: low
severity: medium
status: accepted
status: backlog
status: blocked
status: duplicate
status: needs owner
status: needs triage
status: revisions needed
status: under review
topic: GraphQL
topic: Internationalization
topic: OpenAPI
topic: UI/UX
topic: cabling
topic: event rules
topic: htmx navigation
topic: industrialization
topic: migrations
topic: plugins
topic: scripts
topic: templating
topic: testing
type: bug
type: deprecation
type: documentation
type: feature
type: housekeeping
type: translation
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/netbox#3663
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @schmitmd on GitHub (May 9, 2020).
Environment
Note: I'm aware that 2.7.11 is not the latest stable version, but the functionality being requested is not in the latest version of the code either. If I need to deploy 2.8.3 to see the same and update this issue, I can do that.
Proposed Functionality
Add a count of the number of remaining Available IPs in Prefix views (and any others that seem logical). For instance, this could be under https://netbox.example.com/ipam/prefixes/1/ in a field, but it would also be nice to have a tally next to the Utilization percentage bar in the https://netbox.example.com/ipam/prefixes/ listing view as well.
Use Case
Showing a prefix to a particular user or tenant with a tally of remaining available IPs would make understanding the data easier and simpler without the need to look through the Prefix definition to find out how many are available. I understand that this is easily done in the API, but the UI is all that some of my consumers see.
Database Changes
As far as I'm aware, this would not require a database change.
External Dependencies
As far as I'm aware, this would not require any external dependencies.
@kobayashi commented on GitHub (May 10, 2020):
I think total cound of available ips is almost same as Utilization. So putting either one is okay but both may redundant.
@jeremystretch commented on GitHub (May 11, 2020):
I don't follow. NetBox already display the utilization of each prefix as a percentage. Are you proposing to display this same information as an absolute count as well? I agree with @kobayashi; seems redundant, especially for larger prefixes. For example, IMO it makes sense to say that a /16 is 32% utilized but not that it has 44,564 IPs available.
@fgadot commented on GitHub (May 11, 2020):
It's a little redundant, but some people are not comfortable with maths. Typical scenario, someone has to add 327 new servers, and the view shows "88% used". -> We know that 12% is free, but how much IPs is this really? Just my 2 cents.
@schmitmd commented on GitHub (May 11, 2020):
I hear you on the redundancy comments and I think you're right. In my particular use case though, I actually would indeed prefer to see "44,564 available" next to a /16 instead of "32%"
Do you think maybe a setting toggle would be workable? Something that shows count or percentage based on something in configuration.py (or the new user settings functionality, maybe)?
@fgadot commented on GitHub (May 11, 2020):
Just do something easy:
"Utilization of IP range: 50% (2,345 out of 4,690)"
This presents two good points:
a percentage, because it is easier in the human brain to represent portions of things in percentages. 50% for example is quicker to assimilate to the brain than "2,345 out of 4,690)
A number, because when we already have a number in our head about the numbers of IP we are going to need (for example "I need to assign 382 IPs to a rack tomorrow", it is easier to see that 328 can work with "2,235 IP left" versus "12% of 900 is free"
@DanSheps commented on GitHub (May 12, 2020):
I can see a benefit to this, but I do agree most of the time it will be redundant. the "IP Addresses" tab already has this mostly available. I imagine we could make get_utilization return a tuple(percentage, used, total) instead of just the percentage.
@fgadot commented on GitHub (May 12, 2020):
@DanSheps Yes, that would help @schmitmd
@schmitmd commented on GitHub (Jun 8, 2020):
I think fgadot and DanSheps' feedback is in line with what I was hoping to get out of this. Are we still looking for additional feedback? Looks like almost a month since discussion stopped.
@AllenEllis commented on GitHub (Jul 22, 2020):
Just to chime in, perhaps a tooltip is a way to achieve this result without crowding the UI.
Most web applications that I interact with these days that show relative dates ("6 days ago") will show the full date/time as a tooltip when you hover over them.
Example with GitHub:
That sets a precedent for a similar behavior here. Keep the existing UI as just showing "33% used", as it's a predictable & compact size. When you hover it would say "44,564 available out of 65,534 total"
@stale[bot] commented on GitHub (Sep 7, 2020):
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Please see our contributing guide.
@schmitmd commented on GitHub (Sep 7, 2020):
Is there anything I can do to be helpful toward this? I'm not much of a Python dev, but I could give it a shot, maybe? I might be able to set get_utilization to return a tuple, but I don't even know where I'd start if the tooltip is the way to go.
@jvanderaa commented on GitHub (Oct 21, 2020):
@jeremystretch this is one that I think I could take some work to do so.
@jeremystretch commented on GitHub (May 21, 2021):
With configure tables now in place, this can easily be implemented by adding an optional column to display the number of available IP addresses.
@github-actions[bot] commented on GitHub (Jul 21, 2021):
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Please see our contributing guide.
@schmitmd commented on GitHub (Jul 21, 2021):
I would still like to see this feature implemented, but I understand if it's too low-pri.
@jeremystretch commented on GitHub (Sep 1, 2021):
See #7044 for a proposed alternative implementation.