mirror of
https://github.com/netbox-community/netbox.git
synced 2026-01-11 21:10:29 +01:00
Enable tracking of AS numbers and assignments #91
Closed
opened 2025-12-29 15:32:29 +01:00 by adam
·
15 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
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/netbox#91
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 @ryanmerolle on GitHub (Jun 29, 2016).
Function: AS Number tracking & assignments
Use Case: Start off with being able to assign and track ASNs.
Further workflow and linkage of peering ASNs, advertised/received subnets, and etc could happen in future enhancements.
@bellwood commented on GitHub (Jun 30, 2016):
Not sure if this applies to your request, but, it would have been nice if the software would allow you to enter an ASN and have it populate aggregates.
@doon commented on GitHub (Jun 30, 2016):
@bellwood where would these aggregates come from? BGP? Routing Registry (ALA RadDB?)
@bellwood commented on GitHub (Jun 30, 2016):
RIR like Arin list all the NETS associated to an ASN or ORG...
@ryanmerolle commented on GitHub (Jun 30, 2016):
I forgot there is an ASN field associated to sites. What was the use case / thought process there?
@x-zeroflux-x commented on GitHub (Jul 1, 2016):
If you are a carrier like ourselves - it would be handy to be able to add the customer ip space in the ipam section and link this to an AS number.
We have been using phpipam for a long period of time, while this does not support this either we got around it by using custom fields section.
Discussion? Thoughts?
@afenioux commented on GitHub (Jul 8, 2016):
It would be great to have an ASN object "containing" the list of prefixes declared in ROUTE(6) objects from IRR (RADb should be an option, but not the only one).
A field with AS-SET for v4 and v6 would also be needed, and having a separated list of ROA (RPKI/ROA) would be nice.
I'm not really keen on having these prefixes created in the IPAM section, because these are only customer prefixes, not the ones of my company.
IMHO, adding some attributes in the ASN object with a list of comma (or space) separated prefixes would enough.
@ryanmerolle commented on GitHub (Jul 8, 2016):
Adding some data modeling discussions from irc today:
Due to historical reasons, acquisition, regional segregation, & whatever other reason, providers may have multiple ASNs that they could use. As such, it may be good to map ASNs in the IPAM tool. We can associate them to providers/organizations/3rd parties (I would perfer we rename this given its not just providers). We could then strip out ASNs from the providers table and roll up all ASNs mapped to a provider page kind of like we do for sites and number of racks.
When associating ASNs to circuits, bgp peers, or whatever else we decide to associate them to, you could assign the provider and then a qualified drop down would display showing the possible ASNs, with the default being empty or some ASN the user set as default in IPAM. This would again be sort of like how rack creation allow you to select a rack group in a site after you select a site to associate the rack to.
@LukeDRussell commented on GitHub (Jul 11, 2016):
I'm interested in tracking our private AS use and assigning them to sites.
@Krytical13 commented on GitHub (Jul 15, 2016):
I could be misunderstanding the usage of ASN's as I am trying to use Netbox to manage and document our own international network and not a customer network.
From the docs:
Replicate the Real World
Careful consideration has been given to the data model to ensure that it can accurately reflect a real-world network. For instance, IP addresses are assigned not to devices, but to specific interfaces attached to a device, and an interface may have multiple IP addresses assigned to it.
Following this model,
Maybe add more types of interfaces to be assigned to devices like BGP/OSPF/??
Or the maybe the simplest change, add BGP/OSPF information as additional information to the IP address information that you would normally assign to an interface.
That way you assign the interfaces to the devices as per usual, but you are then also managing the ASN's on the routers where they are actually used.
Provided you have the routers in a site, it should be easy to allow sorting the ASN's by site or customer.
I would think documenting the ASN's connections to peers/circuits etc should go somewhere else like on the specific peer/circuit... or on the same page, but different tab as the Ethernet and power connections.
@daemian commented on GitHub (Jan 30, 2017):
I would likewise like to be able to track ASN's. For our use, we would need to have multiple ASNs per VRF (we could also have 1 or more prefix's assigned to an ASN). We are a service provider and for some products we manage the customers' mpls vpn environments (managing CPEs). We need to track with private ASNs we are using inside of their MPLS VPN so we know which one to assign to the next site we bring online.
EDIT: Just realized you can assign and ASN to a site, which can be assigned to a tenant. This is exactly what I need. Nevermind!
@darrelclute commented on GitHub (Feb 2, 2017):
We need to be able to track an ASN per device as we are using eBGP in a Clos based layer 3 network, a la RFC 7938. We also have some local ASN overrides inside VRFs on a device so having the ability to have ASN assignment per VRF on a device would be useful as well.
@hslabbert-dw commented on GitHub (Mar 15, 2017):
Use case here would be ASN assignment with an eBGP Clos network, so ASN per switch, basically.
@InsaneSplash commented on GitHub (May 22, 2017):
Maybe the management of a Private ASN could be implemented in the same way as VLAN and VLAN groups as a start?
@rsaturns commented on GitHub (Jun 16, 2017):
The goal is today I track all private ASN numbers in a spreadsheet then say ASN X is assigned to site Y. Today ASN is a free form field at the site level and doesn't tell me what the next available ASN would be or which ones are in use. It would be nice to be able to import the entire private range of ASNs and then attach them to the site. So I could readily see what is assigned and what is available.
@jeremystretch commented on GitHub (Dec 6, 2018):
Reading through all the comments here again after more than a year of inactivity, it's evident that there are several different use cases being intertwined. Most of these are probably solved by the recently-introduced config context functionality, wherein users can assign arbitrary data to resources however they please.
I'm going to close this out as no specific model for this feature was agreed on. If someone would like to propose a specific use case involving ASN assignment and its accompanying data model, please do so in a new ticket using the current feature request template.