Categorygithub.com/nicklasfrahm/netadm
modulepackage
0.3.4
Repository: https://github.com/nicklasfrahm/netadm.git
Documentation: pkg.go.dev

# README

netadm 🔍

Go Report Card Release Go Reference

A CLI and client library to manage network devices written in Go.

CLI 🦾

Make sure to have Go installed and follow the instructions below to install it.

# go >= 1.17
# Using `go get` to install binaries is deprecated.
# The version suffix is mandatory.
go install github.com/nicklasfrahm/netadm@latest

# go < 1.17
go get github.com/nicklasfrahm/netadm

Below you may find the usage text of the command line interface.

A command line interface to manage network devices
via different protocols.

Note:
  To achieve a consistent behavior all operations
  are executed twice and the results are merged.
  This is done to work around operations that do
  not succeed if the device needs to refresh its
  ARP cache by performing a MAC address lookup of
  the host via the host IP. This happens on the
  the first interaction or, I assume, when the
  cache expires naturally, which appears to be
  every 5 minutes or so.

Usage:
  netadm [flags]
  netadm [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  get         Read configuration keys
  help        Help about any command
  if          List network interfaces
  keys        List available configuration keys
  scan        Scan for devices
  set         Write configuration keys

Flags:
  -h, --help               display help for command
  -r, --retries uint       number of retries to perform (default 1)
  -t, --timeout duration   timeout per attempt (default 100ms)

Use "netadm [command] --help" for more information about a command.

Configuration Items 🔧

IDNAMEEXAMPLE
0x0001modelGS308E
0x0003nameswitch-0
0x0004mac33:0b:c9:5e:51:3a
0x0006ip192.168.0.253
0x0007netmask255.255.255.0
0x0008gateway192.168.0.254
0x000Apasswordpassword
0x000Bdhcpfalse
0x000Dfirmware1.00.10
0x0014passwordencryptionHash64
0x0017passwordnonce[1 2 3 4]
0x001Apasswordhash[1 2 3 4]
0x0C00portspeeds[1:1G 2:Down]
0x1000portmetrics[1:64/32/0]
0x1C00cabletestresult[0 0 0 0 0 119 30 183 118]
0x2000vlanengineDisabled
0x2400vlansport[1:1+2+3+4+5+6+7+8]
0x2800vlans802q[1t1+2u3+4+5+6+7+8]
0x3000pvids[1:2 2:2 3:1 4:1 5:1 6:1 7:1 8:1]
0x3400qosengineDSCP
0x3800qospolicies[1:Normal 2:High]
0x4C00bandwidthlimitsin[1:256Mbps 2:None]
0x5000bandwidthlimitsout[1:256Mbps 2:None]
0x5400broadcastfilterfalse
0x5800broadcastlimits[1:256Mbps 2:None]
0x5C00portmirroring1:2+3
0x6000portcount5
0x6800igmpsnoopingvlan1
0x6C00multicastfilterfalse
0x7000igmpheadervalidationfalse
0x9000loopdetectionfalse

References 🔗

Below, you may find a list of useful references that were used for this implementation.

License 📄

This project is licensed under the terms of the MIT license.

# Packages

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