nanog mailing list archives

[NANOG] Re: The Network CLI -- Love it ? Hate it? Needed?


From: Chris Woodfield via NANOG <nanog () lists nanog org>
Date: Wed, 19 Mar 2025 09:19:40 -0700

Coming in after lots of great comments.

For me, the crucial difference between the choice of CLI vs API (I prefer to pretend Web UIs don’t exist) is whether 
the client is human or not. 

For hands-on troubleshooting, nothing beats a CLI, mainly because you can decide in the moment which metrics/state you 
want to interrogate, and make on-the-fly config changes if needed to resolve an outage quickly. Obviously this gets 
problematic if a device config diverges from a SoT, but reasonable people can disagree on whether it’s worth extending 
downtime to push config updates through SoT-to-device automation.

For normal configuration/provisioning work, best to use an API if you can, even if it’s ncclient to push blocks of text 
configs to a device. We’ve all copy-pasted blocks of config into devices, but we’ve also all missed a line when doing 
so and broken a network. And as these configs changes tend to be far more common (and likely more easily templatable), 
I just don’t see the benefit of doing this sort of work manually if it can be avoided.*

That said, I take an expansive view of the definition of automation - expect/paramiko scripts (yes, the CLI can be an 
API if it’s a machine talking to it), as well as load merging templated config files counts in my opinion. Anyone 
telling you that only ,say, gNMI counts as a “real” automation solution needs to be ignored with prejudice.

-Chris

On Mar 18, 2025, at 12:05, Mark Prosser via NANOG <nanog () lists nanog org> wrote:

Hi NANOG community,

I posed this question in several chat groups, but I'd like to get your opinions.

Do you love the CLI? Do you hate the CLI? Would you -- or do you already -- enjoy a world where you never need to 
touch the CLI, to manage your network?

This applies to both provisioning and troubleshooting; to which, you may have different answers.

So far, I've seen a variety of replies around the usual "should/must/must not/should not".

Warm regards,

-- 
Mark Prosser
// E: mark () zealnetworks ca
// W: https://zealnetworks.ca

_______________________________________________
NANOG mailing list https://lists.nanog.org/archives/list/nanog () lists nanog 
org/message/GNZX57LVD4XP2VIZTEQFBRGARHH6DVJC/

_______________________________________________
NANOG mailing list 
https://lists.nanog.org/archives/list/nanog () lists nanog org/message/3LBB3R3T7AM3MZWO6KPOMTBIC4KDKIOW/

Current thread: