Giter VIP home page Giter VIP logo

netadm's Introduction

Raspberry Pi and all the others

Hi, I am Nicklas and I โค๏ธ to ๐Ÿš€ to single board computers. No, matter if it is a

  • Raspberry Pi 4
  • Odroid HC2
  • Rock Pi X
  • Cubieboard 3

I โค๏ธ the ๐Ÿ’ก of single board computers, low โšก consumption and low ๐Ÿ’ฐ. In my spare โฒ๏ธ I write code for infrastructure automation or explore the Kubernetes ecosystem.

๐Ÿšฉ Quick facts

  • ๐ŸŒฑ Iโ€™m currently learning netbooting, baremetal provisioning and Go.
  • ๐Ÿ’ฌ Ask me about Kubernetes, Linux, networking, embedded software development, PCB design and IoT.
  • ๐Ÿ˜„ Pronouns: he/him
  • โšก Fun fact: I broke my first computer, a used Dell Dimension 4550, because curious 12-year-old me took the CPU out of the socket. This is when computer science and engineering got a hold of me.

๐Ÿš€ Production-ready projects

๐Ÿงช Experimental projects

๐Ÿ”– Bookmarks

๐Ÿ“ˆ Statistics

Nicklas' GitHub stats Nicklas' GitHub top languages

netadm's People

Contributors

dependabot[bot] avatar nicklasfrahm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

netadm's Issues

Usage on set

Hi!

I tried netadm and can read out things from my switch (JGS524Ev2). But i don't seem to understand how to set values.
I'd like to use it to enable and disable specific ports via portspeeds.

I don't understand the usage how to set key/value pairs like portspeeds or even name.

Example

$ netadm set 192.168.1.10 "name=switch" -i enp2s0 -p password 
Error: operation failed with status code 0x0200

Can anyone give me a hint how to use the set option, e.g. set Port 20 to Down and Auto in portspeeds?

Make internals transport and protocol agnostic

Currently, the CLI is only able to communicate with Netgear switches via the Netgear Switch Discover Protocol. At its core, the communication with devices can always be seperated into two things:

  • Encoding
    The action, either read or write, alongside the desired attributes to be read or written are encoded into a message with a payload. Currently, the library supports TLV (tag-length-value) encoding only.
  • Transport
    The encoded message is transmitted over the network using a common network protocol. Currently, the library supports two mechanism, UDP broadcast and UDP unicast. The ports for this are currently hardcoded.

The first step towards improving this is to create the pkg/driver, which defines high-level interfaces. The current idea is to set up multiple RPC services based on the feature, such that there would be the following services for example:

  • VLAN: Set up Virtual Local Area Networks
  • BandwidthLimit: Limit ingress or egress network bandwidth
  • Links: Show status information about network links

POE on/off?

Hello,

What does this cli support so far? It's not obvious because I haven't receive my Netgear POE managed switch yet.

Can this cli turn on/off POE ports? If not, is it a lot of work to add? I can look into it but I'm no Go programmer.

Thanx.

Document hardware support

The README.md has to document which hardware is supported. This could be separated into tested and compatible.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.