Categorygithub.com/google/gnxi
repositorypackage
0.0.0-20250814212710-c9e3a4334bfc
Repository: https://github.com/google/gnxi.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# README

License GoDoc Go Report Card Build Status Code coverage master

gNxI Tools

  • gNMI - gRPC Network Management Interface
  • gNOI - gRPC Network Operations Interface

A collection of tools for Network Management that use the gNMI and gNOI protocols.

Summary

Notes about these tools:

  • They are intended for testing and as reference implementation of the protocol.
  • They log to stderr by default, disable with -logtostderr=false.
  • They use glog's log levels, use -v 1 to log proto message exchanges.

gNMI Clients:

gNMI Targets:

gNOI Clients

gNOI Targets

Helpers

Documentation

Getting Started

These instructions will get you a copy of the project up and running on your local machine.

Prerequisites

Install go in your system https://golang.org/doc/install. Requires golang1.14+.

Download sources

go get github.com/google/gnxi
ls $GOPATH/src/github.com/google/gnxi

Building and installing binaries

cd $GOPATH
mkdir bin
# This reads the go modules dependencies for installation
cd src/github.com/google/gnxi
go install ./...
ls -la $GOPATH/bin

Generating certificates

cd $GOPATH/bin
./../src/github.com/google/gnxi/certs/generate.sh

Running a client

cd $GOPATH/bin
./gnoi_reset \
    -target_addr localhost:9339 \
    -target_name target.com \
    -rollback_os \
    -zero_fill \
    -key client.key \
    -cert client.crt \
    -ca ca.crt

Optionally define $GOBIN as $GOPATH/bin and add it to your path to run the binaries from any folder.

export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN

Disclaimer