- Router OS Diff - Can diff two configs and give you the commands needed to bring the existing config up to date with the desired config. It's certainly not perfect, but a starting point of anyone needs something like this. [1]
- Netbox Routeros – A netbox plugin for updating the config of RouterOS devices directly from the Netbox interface. [2]
It has been many years since I touched these, but perhaps they will be of interest to someone.
Aside from that, I have had excellent experience with Mikroik. Everywhere from in-datacenter to it running in an off-grid hut on a mountainside. I've even heard reports of people finding rain streaming through a CRS and it just happily ticking along.
But using “export terse” is far easier to do a standard “diff”
Any page can be easily converted into Markdown by appending .md to the URL. I mention this because in my experience, the agent is much more accurate when it has access to the docs.
Thankfully at least LLMs could figure out things t help me setup SXT LTE 7
The biggest challenges that most of us networking people have are around velocity (how fast we can build and scale networks) and how effectively we can operate them (avoid defects, fix them fast when something breaks).
LLMs are great in both areas. AI helps with deployment challenges by speeding up tooling development and the creation of workflows on orchestration platforms. A manual process step today, say - reserving an IP address in an IP DB — is automated the next day instead of on a backlog for years. This post is an example of that (config-gen/config-deploy).
Operations use-cases are more interesting, IMO, and address the “too many signals” problems that we face. Network substrate telemetry, overlay telemetry, service host metrics, service metrics, customer metrics, recent change data, prior alarms - the list goes on. Being a network operator is not for the faint of heart and is under-mentioned on high stress job lists. AI makes AMAZINGLY good network operations triage agents, since they are able to immediately process so many signals.
Exciting times!
Nuance. LLMs are just going to report that they cant SSH to an endpoint, after delivering your vibeconfig, and throw it back to you to resolve connectivity. Your velocity with LLMs will stall at break fix every time.
>AI makes AMAZINGLY good network operations triage agents, since they are able to immediately process so many signals.
I have seen a lot of tokens spent on solutions that could have just been grafana.
It was already easy enough and straightforward to deploy a network because we had built so many CLI tools to handle what we needed, but it still required a bit of a human touch to validate outputs and feed those to different tools. Thanks to skills with helper scripts, we're pretty close to one click deployments these days. So much of our maintenances or operations can even be handled from our phones. We can just tell an agent that there's a new version, or AMI, and we can reliably trust them to safely update the fleet from end to end without causing service disruptions. When customers need updates made, agents draft the PRs and I just review, and they deploy after I approve.
I would argue that most of what makes this possible though isn't LLMs themselves, but having invested in robust network design, consistent standards (snowflake setups or configs will cause you problems), proper observability, and detailed docs/runbooks. While I have my doubts that someone will ever be able to vibe code that knowledge and experience, you can certainly use agents to amplify an already strong engineering foundation.
I switched recently to OpenWrt from MT, which code agents are also good at. I'd wager most issues are going to be related to the user not specifying what they want clearly enough. The translation from network concepts to RouterOS config is pretty 'fat-free', so there's not much room for hallucinations beyond syntax errors, which can be verified via the API.
Networking can be complex. Standards allow interoperability but they do not magically make everything work with no configuration.
Just because standards like DNS, NAT64, OSPF, ARP, etc, exist doesn't means its easy to get these things to communicate.
Ubiquiti isn't exactly known for being the best in terms of standard adherence, especially with their historically week IPv6 support.
It does pretty well, but you need to iterate. I was trying to get it to disallow internet access for non-DHCP clients, and in the end there were so many limits to what was possible that it wasn't worth it. But it did it, and when I was testing I found them.
So like everything for best results you need to know what you're doing so you can test effectively...but it saves you from learning the syntax etc.
In other news, Meraki has an AI assistant feature now.
[0] https://pfrest.org/api-docs/ [1] https://docs.opnsense.org/development/api.html
You can take this one step further and have the agent write Terraform configs [1]. I did this (including having the agent import all the initial resources from the live device), works great and is generally more robust than a script.
[1] https://github.com/terraform-routeros/terraform-provider-rou...
I can’t see any reason to have agents do what a script can do. If the operation is deterministic then why pay every time it gets done? This is why MCP seems so pointless to me.
And perhaps it's significantly easier on other routers, but I would not have gotten VLANs working without claude doing it for me...
Winbox having a Linux and Mac version is really nice... I'll have to try the Linux one at some point... hopefully it works as good as the Windows version did under wine.
There is also a terraform provider. Not sure if there is a safe mode here. I normally test via ssh safe mode and import the changes afterwards.
Super light, right now testing on my own set up (was using mktxp before):
https://github.com/jutaz/TikTelemetry
Comments/feedback welcome!
Bugs, random drops, poor performance on some machines. It is not set and forget and I gave up on it.
It's nowadays the default not to export any credentials when exporting MT configs, and even doing that yourself is trivial. Since the equipment is pretty packed with functionality and very flexible, benefits of LLM assistance is big.
As for "sending network configurations" it's a risk everyone needs to consider individually. Having that private may make attackers job harder, but security by obscurity ain't no replacement for a secure setup.
Perfect job for a local LLM!
Really? Its standard point and click engineer stuff. The biggest issues with Mikrotik are the features not implemented in the gui, or the way config is interpreted between versions. Also the term of hardware support, and generally flaky code in general.
>The point I’m trying to make is yeah, networking can just be hard. I’ve been half-networking, amateur-ishly, for a while now - setting up networks for friends and friends’ offices, making cables, patching small panels etc. I almost certainly couldn’t pass an official “Certified Routing Engineer” cert - well, not without studying a lot (believe in yourself).
Ok so just a hobbyist perspective.
It seems like this article is just "Point an LLM at your mikrotik api, have fun"?
For example, the most common reason I want to connect to my home router is to see what devices are connected, what their IP addresses are, and perhaps make their DHCP leases static. In a good UI that sort of common activity would be front and centre - in MikroTik it's buried under 3 levels of menu.
Under the IP menu is 26 alphabetically sorted options, of which I have to click "DHCP Server". Then the default page is to create a new DHCP server - why would I want to do that? How many users run multiple DHCP servers? I have to click on the "Leases" tab, and then I can see a list of my connected devices.
Every other home router I've used knows that users care about the connected devices, so show it front and centre.
It's an alternative webUI for Mikrotik routers, coded with LLM assistance.
Really. UI is easy. CLI is easy. But system exposes everything to you. It doesn't hide any complexity. So you need to actually know what you are doing, as happily clicking randomly won't produce any reasonable result.
> Ok so just a hobbyist perspective.
No need to diminish those experiences. That's how most of us got into the job. And enterprise experience ain't exactly a guarantee of wide knowledge.