foundation
v0.18.1
MIT
rustnetconf
Async NETCONF client and CLI for Rust
Async NETCONF client library for Rust with YANG code generation, vendor profiles, connection pooling and a Terraform-like CLI for declarative network config.
About
rustnetconf is a Rust network automation platform: an async NETCONF 1.0/1.1 client library (RFC 6241 over SSH per RFC 6242), YANG code generation and a CLI built on top of them.
It is built on tokio, russh and rustls: pure Rust, no OpenSSL, no libssh2. It is the NETCONF transport under rustez and rustjunosmcp.
Features
- Async NETCONF client library
- YANG model code generation for compile-time config validation
- Terraform-like netconf CLI: plan, apply with confirmed-commit, confirm, rollback, get, validate
- Connection pooling and vendor profiles
- Connect through a jump host or your ~/.ssh/config, or over TLS (RFC 7589); event notifications (RFC 5277)
Quick start
Add the library
[dependencies]
rustnetconf = { git = "https://github.com/mechubsec/rustnetconf.git" }
tokio = { version = "1", features = ["full"] }Use the CLI
netconf init
netconf plan spine-01
netconf apply spine-01