Source of truth and network automation platform for network infrastructure management.
—
Service provider circuit management including circuits, providers, and circuit terminations. Manages external network connectivity and carrier services.
Service provider and network management.
class Provider:
"""
Service providers for circuit management.
Attributes:
name (str): Provider name
slug (str): URL-safe slug
asn (int): Autonomous System Number
account (str): Account number
portal_url (str): Customer portal URL
noc_contact (str): NOC contact information
admin_contact (str): Administrative contact
comments (str): Comments
tags (list): Associated tags
"""
class ProviderNetwork:
"""
Provider networks for service delivery.
Attributes:
name (str): Network name
provider (Provider): Associated provider
description (str): Network description
service_id (str): Service identifier
comments (str): Comments
tags (list): Associated tags
"""Circuit definitions and management.
class CircuitType:
"""
Circuit type definitions.
Attributes:
name (str): Circuit type name
slug (str): URL-safe slug
description (str): Type description
"""
class Circuit:
"""
Service provider circuits.
Attributes:
cid (str): Circuit ID
provider (Provider): Service provider
type (CircuitType): Circuit type
status (Status): Circuit status
tenant (Tenant): Tenant assignment
install_date (date): Installation date
commit_rate (int): Committed rate in Kbps
description (str): Circuit description
comments (str): Comments
tags (list): Associated tags
"""
class CircuitTermination:
"""
Circuit endpoints/terminations.
Attributes:
circuit (Circuit): Associated circuit
term_side (str): Termination side (A or Z)
location (Location): Termination location
provider_network (ProviderNetwork): Provider network
port_speed (int): Port speed in Kbps
upstream_speed (int): Upstream speed in Kbps
xconnect_id (str): Cross-connect ID
pp_info (str): Patch panel information
description (str): Termination description
"""from nautobot.circuits.models import Provider, ProviderNetwork
# Create provider
provider = Provider.objects.create(
name="Acme Telecom",
asn=65001,
account="ACCT-12345",
portal_url="https://portal.acme-telecom.com",
noc_contact="noc@acme-telecom.com"
)
# Create provider network
network = ProviderNetwork.objects.create(
name="MPLS-Core",
provider=provider,
description="Core MPLS network"
)from nautobot.circuits.models import Circuit, CircuitType, CircuitTermination
from nautobot.dcim.models import Location
# Create circuit type
circuit_type = CircuitType.objects.create(
name="MPLS",
description="MPLS VPN Service"
)
# Create circuit
circuit = Circuit.objects.create(
cid="MPLS-001",
provider=provider,
type=circuit_type,
commit_rate=100000, # 100 Mbps
description="Primary MPLS connection"
)
# Create circuit terminations
site_a = Location.objects.get(name="New York")
site_z = Location.objects.get(name="Chicago")
term_a = CircuitTermination.objects.create(
circuit=circuit,
term_side="A",
location=site_a,
port_speed=100000
)
term_z = CircuitTermination.objects.create(
circuit=circuit,
term_side="Z",
location=site_z,
port_speed=100000
)Install with Tessl CLI
npx tessl i tessl/pypi-nautobot