Automation Alchemist

This is a blog about automation, networking, and software development

Trie Ip

Building a High-Performance IP Prefix Map in Go When working at scale with network devices and BGP peers, efficiently managing and querying IP address information becomes crucial. In this post, I’ll share how we built a high-performance IP prefix map using a Trie data structure in Go, and how it solved real-world problems. The Problem: BGP Peer to Interface Mapping While working at a previous company, we faced an interesting challenge: we needed to quickly determine which interface a BGP peer was associated with. Each network device had multiple interfaces, each with its own subnet, and BGP peers could connect from any of these ranges. Traditional IP lookup methods were either too slow or memory-intensive for our needs. ...

December 12, 2024 · 4 min · 662 words · Jared Henry

Peering Db MCP

In a previous post I talked about MCP and how to use it to integrate with LLMs. In this post I want to talk about how to use MCP to integrate with Peering DB. I am being honest here, this all really opens up a lot of power possibilities and I am barely scratching the surface of what is possible. What is Peering DB? Peering DB is a free and open-source database of network operators and their associated networks. It is a community-driven project that aims to provide accurate and up-to-date information about the internet’s infrastructure. ...

December 11, 2024 · 4 min · 698 words · Jared Henry

Bgpfig - Device Configuration Distribution via BGP

Using BGP for Network Device Configuration Distribution: A Proof of Concept In the world of network automation and configuration management, we’re constantly seeking elegant solutions for distributing configuration changes across our infrastructure. While there are many established tools and protocols for this purpose, I recently explored an unconventional approach: using BGP (Border Gateway Protocol) as a transport mechanism for device configurations. In this post, I’ll share my proof of concept that demonstrates how BGP can be repurposed for configuration distribution. ...

December 11, 2024 · 5 min · 1041 words · Jared Henry

MCP With Pokemon API

Introduction First off I guess we should start off with what is MCP and why do we need it. The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to Large Language Models (LLMs). MCP provides a standardized way to connect AI models to different data sources and tools, making integration seamless and consistent Prior to MCP, there were many different ways to provide context to LLMs. This led to a lot of fragmentation and inconsistency in the way that different applications and tools integrated with LLMs. MCP aims to solve this problem by providing a standardized way to provide context to LLMs. ...

December 10, 2024 · 6 min · 1201 words · Jared Henry