SlideShare a Scribd company logo
Interconnection Automation For All - GPF 2023
Agenda
1. Who are we?
2. What are we talking about?
3. What have we learned?
4. What are we doing about it?
5. What can you do to help?
6. What else should be done?
7. Comments thinly veiled as questions.
Chris Grundemann
● 20+ years in networking
● Co-founder of IX-Denver
● OIX Director
● 8 patents in NetTech
● Co-founder and CSO at FullCtl
● 20+ years in software development
● Co-founder of UIX / ChIX
● OIX Director
● PeeringDB Maintainer
● Co-Founder and CTO at FullCtl
Matt “Grizz” Griswold
Sure, but why are you here?
● Age of Interconnection
● BGP is hard (for some)
● Lack of Standardization (for all)
● Lack of Automation (for many)
?
Age of Interconnection
● Peering managers on cruise ships
● Death of peering?
Age of Interconnection
● Cloud
● COVID
● Beyond LAN & WAN
● Digital Equity
● Security
● Reliability
But… BGP is hard (for some)
● For many, it’s a FLW, despite being a TLA
● Traditionally avoided by most
○ Enterprise
○ Public Sector
○ SMB (of course?)
● Also hard to find at
○ WISPS
○ FISPS
○ Electric Co-ops
● And now we have RPKI
Plus: Lack of Standardization
● Most networks heterogeneous
○ And Bespoke
● Unique policy requirements
○ TE, etc.
● Communities in use by ISP/IX/etc
○ More than just RTBH
● How-to request interconnection
○ Coordination can be painful
● LOAs
○ Don’t get us started…
And: Lack of Automation
● Almost nobody has “enough”
● Many lacking SoT
● Most lacking end-to-end flow
● Hard to automate w/out standard(s)
● Tough to test w/out lab (dev env)
So… What are we going to do about it?
● ixCtl
● PeerCtl
● PrefixCtl
● …you get the idea
So… What are we going to do about it?
● ixCtl
● PeerCtl
● PrefixCtl
● …you get the idea
● Taking the best of all of “us” and embedding that knowledge into simple tools
FullCtl Suite
https://github.com/fullctl/
P
r
e
f
i
x
C
t
l
aaaCtl
DeviceCtl
PeerCtl
ixCtl
FullCtl Suite
● modern, modular, Unix philosophy services
● 100% API driven
● manage infrastructure
● automate provisioning
● source of truth for wider automation efforts
https://github.com/fullctl/
Foundations :: aaaCtl
https://github.com/fullctl/aaactl
Granular
Permissions
Fine grained user and role
permissions down to each
object level
Audit logs
Audit logs for other running
services.
Oauth
|
SAML
Integrates
with
existing
aaa
services.
Azure
AD,
Okta,
PeeringDB,
et
al
Oauth | SAML
Integrates with existing
aaa services.
Azure AD, Okta, PeeringDB,
etc
Foundations :: aaaCtl
● Authentication and Authorization gateway
○ Client - integrates with existing directories
○ Provider - can be used as a SoT
● RBAC permissioning
● Audit logging
https://github.com/fullctl/aaactl
Foundations :: DeviceCtl
● Source of truth for devices
● Bidirectional sync to other sources of truth
○ Netbox, Nautobot, Proprietary systems, etc
○ PeeringDB facilities, geoloc data
● Caching and verification
https://github.com/fullctl/devicectl
Metadata :: PrefixCtl
Used as a SoT for prefixes
Bidirectional sync
Attaches and updates metadata
● IRR
● RPKI status
● IP reputation
● Geoloc data
https://github.com/fullctl/prefixctl *OSS coming soon
ixCtl
An automation platform purpose built for internet exchange operators.
● modern, modular application
● 100% API driven
● manage infrastructure
● automate provisioning
● source of truth for wider automation efforts
● connected networks get access to the PeerCtl dashboard
https://github.com/fullctl/ixctl
ixCtl turnkey route servers
1. Click “import” to pull baseline data on connected networks from PeeringDB
2. Hit “configure route server” and add basic info to generate secure
configurations
3. 1 time ansible (VM/BM) or helm (k8s) deploy for managed containers, or curl
into your own setup
4. enjoy karmic bliss, knowing that your route servers are automatically
contributing to the good of the internet!
https://github.com/fullctl/ixctl
ixCtl - Not “Just” Route Servers
● SoT for devices and ports
● Building graphs
● Manage members / IX-F output for PeeringDB, etc
● Allow member access to update mac address, max prefix, etc
https://github.com/fullctl/ixctl
ixCtl - Coming Soon
● Public Portal
● Client Portal
● LOA Generation
● AS112 Configuration
● Advanced Route Server Management
● Automated Switch Configuration
● $your_idea_here
https://github.com/fullctl/ixctl
PeerCtl
Interconnection automation and workflow management.
● modern, modular, Unix philosophy services
● 100% API driven
● manage infrastructure
● automate provisioning
● source of truth for wider automation efforts
● Open Source or As A Service
https://github.com/fullctl/peerctl
PeerCtl
Peering Toolkit
1. You select an IX. PeerCtl shows you all of the possible peers at that location.
2. You select a peer. PeerCtl provides BGP configurations and email templates
to get connected.
3. You want more. PeerCtl shows you all of the other mutual exchanges where
you can interconnect with this peer.
https://github.com/fullctl/peerctl
PeerCtl - but wait, there’s more
● All kinds of “peers”
○ Bilateral, multilateral, PNI, transit, transport
● Source of truth for your Interconnection efforts
○ Sync with third party inventory via DeviceCtl
○ Stay virtual with PDB Ports
● Extensibility
○ PeerCtl BGP configurations are extensible and customizable with templates
○ Templates also allow you to extract peering data for other uses
○ Email templates with override also (and pdb contacts, etc)
● “show BGP summary”
○ View all sessions at once
● Import from network
○ Pull in existing BGP sessions
https://github.com/fullctl/peerctl
PeerCtl - Coming Soon
● Public Peering Portal
○ for third parties to use when requesting peering with your network
● “Where To Peer” Improvements
○ integrating traffic analysis to provide intelligent recommendations
● PeeringDB Integration Improvements
○ enable pushing updates to PeeringDB from PeerCtl
○ enable you to add networks to PeerCtl that are not listed in PeeringDB
● UX Improvements
○ enhanced alerting, along with interface design improvements
https://github.com/fullctl/peerctl
Wanna Play?
https://account.fullctl.io
Contact us about lab demos.
Not Alone
● PeeringDB
● NetBox (& Nautobot)
● Kentik [tooling/telemetry]
● BGPQ4
● Global Traceroute
● IXP Manager
● Peering Manager
● Rancid
https://openpipes.net
What else can we do?
Time for comments thinly veiled as questions...
FullCtl.com

More Related Content

Similar to Interconnection Automation For All - GPF 2023 (20)

Tranquilizer
TranquilizerTranquilizer
Tranquilizer
Albert DeFusco
 
DDDP 2019 - Brown to Green
DDDP 2019  - Brown to GreenDDDP 2019  - Brown to Green
DDDP 2019 - Brown to Green
John Archer
 
How OpenShift SDN helps to automate
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automate
Ilkka Tengvall
 
Get started with gitops and flux
Get started with gitops and fluxGet started with gitops and flux
Get started with gitops and flux
LibbySchulze1
 
APIs at the Edge
APIs at the EdgeAPIs at the Edge
APIs at the Edge
Red Hat
 
Building a Distributed & Automated Open Source Program at Netflix
Building a Distributed & Automated Open Source Program at NetflixBuilding a Distributed & Automated Open Source Program at Netflix
Building a Distributed & Automated Open Source Program at Netflix
All Things Open
 
Netflix Open Source: Building a Distributed and Automated Open Source Program
Netflix Open Source:  Building a Distributed and Automated Open Source ProgramNetflix Open Source:  Building a Distributed and Automated Open Source Program
Netflix Open Source: Building a Distributed and Automated Open Source Program
aspyker
 
Fluent Bit
Fluent BitFluent Bit
Fluent Bit
Eduardo Silva Pereira
 
BKK16-500K2 CTO talk - The End to End Story
BKK16-500K2 CTO talk - The End to End StoryBKK16-500K2 CTO talk - The End to End Story
BKK16-500K2 CTO talk - The End to End Story
Linaro
 
Integrating Puppet and Gitolite for sysadmins cooperations
Integrating Puppet and Gitolite for sysadmins cooperationsIntegrating Puppet and Gitolite for sysadmins cooperations
Integrating Puppet and Gitolite for sysadmins cooperations
Luca Mazzaferro
 
Hyperledger fabric 3
Hyperledger fabric 3Hyperledger fabric 3
Hyperledger fabric 3
Arvind Sridharan
 
Google's Infrastructure and Specific IoT Services
Google's Infrastructure and Specific IoT ServicesGoogle's Infrastructure and Specific IoT Services
Google's Infrastructure and Specific IoT Services
Intel® Software
 
Hyperledger Project Overview - January 2018.pptx
Hyperledger Project Overview - January 2018.pptxHyperledger Project Overview - January 2018.pptx
Hyperledger Project Overview - January 2018.pptx
Bart652063
 
Cloud-Native: A New Ecosystem for Putting Containers into Production
Cloud-Native:  A New Ecosystem for Putting Containers into ProductionCloud-Native:  A New Ecosystem for Putting Containers into Production
Cloud-Native: A New Ecosystem for Putting Containers into Production
Gordon Haff
 
From leading IoT Protocols to Python Dashboarding_final
From leading IoT Protocols to Python Dashboarding_finalFrom leading IoT Protocols to Python Dashboarding_final
From leading IoT Protocols to Python Dashboarding_final
Lukas Ott
 
Kick starting Network Automation
Kick starting Network AutomationKick starting Network Automation
Kick starting Network Automation
Walid Shaari
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetes
Gabriel Carro
 
Introduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OKIntroduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OK
Kriangkrai Chaonithi
 
Monkey Server
Monkey ServerMonkey Server
Monkey Server
Eduardo Silva Pereira
 
Uni w pachube 111108
Uni w pachube 111108Uni w pachube 111108
Uni w pachube 111108
Paul Tanner
 
DDDP 2019 - Brown to Green
DDDP 2019  - Brown to GreenDDDP 2019  - Brown to Green
DDDP 2019 - Brown to Green
John Archer
 
How OpenShift SDN helps to automate
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automate
Ilkka Tengvall
 
Get started with gitops and flux
Get started with gitops and fluxGet started with gitops and flux
Get started with gitops and flux
LibbySchulze1
 
APIs at the Edge
APIs at the EdgeAPIs at the Edge
APIs at the Edge
Red Hat
 
Building a Distributed & Automated Open Source Program at Netflix
Building a Distributed & Automated Open Source Program at NetflixBuilding a Distributed & Automated Open Source Program at Netflix
Building a Distributed & Automated Open Source Program at Netflix
All Things Open
 
Netflix Open Source: Building a Distributed and Automated Open Source Program
Netflix Open Source:  Building a Distributed and Automated Open Source ProgramNetflix Open Source:  Building a Distributed and Automated Open Source Program
Netflix Open Source: Building a Distributed and Automated Open Source Program
aspyker
 
BKK16-500K2 CTO talk - The End to End Story
BKK16-500K2 CTO talk - The End to End StoryBKK16-500K2 CTO talk - The End to End Story
BKK16-500K2 CTO talk - The End to End Story
Linaro
 
Integrating Puppet and Gitolite for sysadmins cooperations
Integrating Puppet and Gitolite for sysadmins cooperationsIntegrating Puppet and Gitolite for sysadmins cooperations
Integrating Puppet and Gitolite for sysadmins cooperations
Luca Mazzaferro
 
Google's Infrastructure and Specific IoT Services
Google's Infrastructure and Specific IoT ServicesGoogle's Infrastructure and Specific IoT Services
Google's Infrastructure and Specific IoT Services
Intel® Software
 
Hyperledger Project Overview - January 2018.pptx
Hyperledger Project Overview - January 2018.pptxHyperledger Project Overview - January 2018.pptx
Hyperledger Project Overview - January 2018.pptx
Bart652063
 
Cloud-Native: A New Ecosystem for Putting Containers into Production
Cloud-Native:  A New Ecosystem for Putting Containers into ProductionCloud-Native:  A New Ecosystem for Putting Containers into Production
Cloud-Native: A New Ecosystem for Putting Containers into Production
Gordon Haff
 
From leading IoT Protocols to Python Dashboarding_final
From leading IoT Protocols to Python Dashboarding_finalFrom leading IoT Protocols to Python Dashboarding_final
From leading IoT Protocols to Python Dashboarding_final
Lukas Ott
 
Kick starting Network Automation
Kick starting Network AutomationKick starting Network Automation
Kick starting Network Automation
Walid Shaari
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetes
Gabriel Carro
 
Introduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OKIntroduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OK
Kriangkrai Chaonithi
 
Uni w pachube 111108
Uni w pachube 111108Uni w pachube 111108
Uni w pachube 111108
Paul Tanner
 

Recently uploaded (19)

Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHostingTop Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
steve198109
 
Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation TemplateSmart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
yojeari421237
 
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 SupportReliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
steve198109
 
5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx
andani26
 
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC
 
Computers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers NetworksComputers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers Networks
Tito208863
 
highend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptxhighend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptx
elhadjcheikhdiop
 
Best web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you businessBest web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you business
steve198109
 
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
DataProvider1
 
OSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description fOSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description f
cbr49917
 
Perguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolhaPerguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolha
socaslev
 
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry SweetserAPNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC
 
Determining Glass is mechanical textile
Determining  Glass is mechanical textileDetermining  Glass is mechanical textile
Determining Glass is mechanical textile
Azizul Hakim
 
White and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptxWhite and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptx
canumatown
 
(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security
aluacharya169
 
Understanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep WebUnderstanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep Web
nabilajabin35
 
project_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptxproject_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptx
redzuriel13
 
IT Services Workflow From Request to Resolution
IT Services Workflow From Request to ResolutionIT Services Workflow From Request to Resolution
IT Services Workflow From Request to Resolution
mzmziiskd
 
DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)
APNIC
 
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHostingTop Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
steve198109
 
Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation TemplateSmart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
yojeari421237
 
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 SupportReliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
steve198109
 
5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx
andani26
 
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC
 
Computers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers NetworksComputers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers Networks
Tito208863
 
highend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptxhighend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptx
elhadjcheikhdiop
 
Best web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you businessBest web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you business
steve198109
 
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
DataProvider1
 
OSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description fOSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description f
cbr49917
 
Perguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolhaPerguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolha
socaslev
 
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry SweetserAPNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC
 
Determining Glass is mechanical textile
Determining  Glass is mechanical textileDetermining  Glass is mechanical textile
Determining Glass is mechanical textile
Azizul Hakim
 
White and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptxWhite and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptx
canumatown
 
(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security
aluacharya169
 
Understanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep WebUnderstanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep Web
nabilajabin35
 
project_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptxproject_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptx
redzuriel13
 
IT Services Workflow From Request to Resolution
IT Services Workflow From Request to ResolutionIT Services Workflow From Request to Resolution
IT Services Workflow From Request to Resolution
mzmziiskd
 
DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)
APNIC
 

Interconnection Automation For All - GPF 2023

  • 2. Agenda 1. Who are we? 2. What are we talking about? 3. What have we learned? 4. What are we doing about it? 5. What can you do to help? 6. What else should be done? 7. Comments thinly veiled as questions.
  • 3. Chris Grundemann ● 20+ years in networking ● Co-founder of IX-Denver ● OIX Director ● 8 patents in NetTech ● Co-founder and CSO at FullCtl ● 20+ years in software development ● Co-founder of UIX / ChIX ● OIX Director ● PeeringDB Maintainer ● Co-Founder and CTO at FullCtl Matt “Grizz” Griswold
  • 4. Sure, but why are you here? ● Age of Interconnection ● BGP is hard (for some) ● Lack of Standardization (for all) ● Lack of Automation (for many) ?
  • 5. Age of Interconnection ● Peering managers on cruise ships ● Death of peering?
  • 6. Age of Interconnection ● Cloud ● COVID ● Beyond LAN & WAN ● Digital Equity ● Security ● Reliability
  • 7. But… BGP is hard (for some) ● For many, it’s a FLW, despite being a TLA ● Traditionally avoided by most ○ Enterprise ○ Public Sector ○ SMB (of course?) ● Also hard to find at ○ WISPS ○ FISPS ○ Electric Co-ops ● And now we have RPKI
  • 8. Plus: Lack of Standardization ● Most networks heterogeneous ○ And Bespoke ● Unique policy requirements ○ TE, etc. ● Communities in use by ISP/IX/etc ○ More than just RTBH ● How-to request interconnection ○ Coordination can be painful ● LOAs ○ Don’t get us started…
  • 9. And: Lack of Automation ● Almost nobody has “enough” ● Many lacking SoT ● Most lacking end-to-end flow ● Hard to automate w/out standard(s) ● Tough to test w/out lab (dev env)
  • 10. So… What are we going to do about it? ● ixCtl ● PeerCtl ● PrefixCtl ● …you get the idea
  • 11. So… What are we going to do about it? ● ixCtl ● PeerCtl ● PrefixCtl ● …you get the idea ● Taking the best of all of “us” and embedding that knowledge into simple tools
  • 13. FullCtl Suite ● modern, modular, Unix philosophy services ● 100% API driven ● manage infrastructure ● automate provisioning ● source of truth for wider automation efforts https://github.com/fullctl/
  • 14. Foundations :: aaaCtl https://github.com/fullctl/aaactl Granular Permissions Fine grained user and role permissions down to each object level Audit logs Audit logs for other running services. Oauth | SAML Integrates with existing aaa services. Azure AD, Okta, PeeringDB, et al Oauth | SAML Integrates with existing aaa services. Azure AD, Okta, PeeringDB, etc
  • 15. Foundations :: aaaCtl ● Authentication and Authorization gateway ○ Client - integrates with existing directories ○ Provider - can be used as a SoT ● RBAC permissioning ● Audit logging https://github.com/fullctl/aaactl
  • 16. Foundations :: DeviceCtl ● Source of truth for devices ● Bidirectional sync to other sources of truth ○ Netbox, Nautobot, Proprietary systems, etc ○ PeeringDB facilities, geoloc data ● Caching and verification https://github.com/fullctl/devicectl
  • 17. Metadata :: PrefixCtl Used as a SoT for prefixes Bidirectional sync Attaches and updates metadata ● IRR ● RPKI status ● IP reputation ● Geoloc data https://github.com/fullctl/prefixctl *OSS coming soon
  • 18. ixCtl An automation platform purpose built for internet exchange operators. ● modern, modular application ● 100% API driven ● manage infrastructure ● automate provisioning ● source of truth for wider automation efforts ● connected networks get access to the PeerCtl dashboard https://github.com/fullctl/ixctl
  • 19. ixCtl turnkey route servers 1. Click “import” to pull baseline data on connected networks from PeeringDB 2. Hit “configure route server” and add basic info to generate secure configurations 3. 1 time ansible (VM/BM) or helm (k8s) deploy for managed containers, or curl into your own setup 4. enjoy karmic bliss, knowing that your route servers are automatically contributing to the good of the internet! https://github.com/fullctl/ixctl
  • 20. ixCtl - Not “Just” Route Servers ● SoT for devices and ports ● Building graphs ● Manage members / IX-F output for PeeringDB, etc ● Allow member access to update mac address, max prefix, etc https://github.com/fullctl/ixctl
  • 21. ixCtl - Coming Soon ● Public Portal ● Client Portal ● LOA Generation ● AS112 Configuration ● Advanced Route Server Management ● Automated Switch Configuration ● $your_idea_here https://github.com/fullctl/ixctl
  • 22. PeerCtl Interconnection automation and workflow management. ● modern, modular, Unix philosophy services ● 100% API driven ● manage infrastructure ● automate provisioning ● source of truth for wider automation efforts ● Open Source or As A Service https://github.com/fullctl/peerctl
  • 23. PeerCtl Peering Toolkit 1. You select an IX. PeerCtl shows you all of the possible peers at that location. 2. You select a peer. PeerCtl provides BGP configurations and email templates to get connected. 3. You want more. PeerCtl shows you all of the other mutual exchanges where you can interconnect with this peer. https://github.com/fullctl/peerctl
  • 24. PeerCtl - but wait, there’s more ● All kinds of “peers” ○ Bilateral, multilateral, PNI, transit, transport ● Source of truth for your Interconnection efforts ○ Sync with third party inventory via DeviceCtl ○ Stay virtual with PDB Ports ● Extensibility ○ PeerCtl BGP configurations are extensible and customizable with templates ○ Templates also allow you to extract peering data for other uses ○ Email templates with override also (and pdb contacts, etc) ● “show BGP summary” ○ View all sessions at once ● Import from network ○ Pull in existing BGP sessions https://github.com/fullctl/peerctl
  • 25. PeerCtl - Coming Soon ● Public Peering Portal ○ for third parties to use when requesting peering with your network ● “Where To Peer” Improvements ○ integrating traffic analysis to provide intelligent recommendations ● PeeringDB Integration Improvements ○ enable pushing updates to PeeringDB from PeerCtl ○ enable you to add networks to PeerCtl that are not listed in PeeringDB ● UX Improvements ○ enhanced alerting, along with interface design improvements https://github.com/fullctl/peerctl
  • 27. Not Alone ● PeeringDB ● NetBox (& Nautobot) ● Kentik [tooling/telemetry] ● BGPQ4 ● Global Traceroute ● IXP Manager ● Peering Manager ● Rancid https://openpipes.net
  • 28. What else can we do? Time for comments thinly veiled as questions... FullCtl.com