Skip to content

Instantly share code, notes, and snippets.

❯ make
../makefile-install.include:32: warning: overriding recipe for target `docker-pre-build'
../makefile.include:18: warning: ignoring old recipe for target `docker-pre-build'
Makefile:22: warning: overriding recipe for target `docker-build-image-copy'
../makefile.include:21: warning: ignoring old recipe for target `docker-build-image-copy'
for IMAGE in vmx-bundle-20.2R1.10.tgz; do \
echo "Making $IMAGE"; \
make IMAGE=$IMAGE docker-build; \
done
Making vmx-bundle-20.2R1.10.tgz
@hellt
hellt / demo.sh
Created January 13, 2021 10:30
crpd
[edit]
root@crpd# show
## Last changed: 2021-01-13 10:28:09 UTC
version 20200609.165031.6_builder.r1115480;
system {
root-authentication {
encrypted-password "$6$lB5c6$Zeud8c6IhCTE6hnZxXBl3ZMZTC2hOx9pxxYUWTHKW1oC32SATWLMH2EXarxWS5k685qMggUfFur1lq.o4p4cg1"; ## SECRET-DATA
}
}
interfaces {
@hellt
hellt / get.sh
Created January 12, 2021 20:48
get latest version from github releases
curl -L -I -s -o /dev/null -w %{url_effective} https://github.com/openfaas/faas/releases/latest | cut -d "/" -f 8
0.20.4
Jan 11 16:41:18.932376 Received OSPF packet of type and wire_length 1, 60
Jan 11 16:41:18.932378 OSPF rcvd Hello 192.168.0.2 -> 224.0.0.5 (eth1 IFL 5770 area 0.0.0.0)
Jan 11 16:41:18.932382 Version 2, length 48, ID 2.2.2.2, area 0.0.0.0
Jan 11 16:41:18.932392 checksum 0x0, authtype 0
Jan 11 16:41:18.932394 mask 255.255.255.0, hello_ivl 10, opts 0x12, prio 128
Jan 11 16:41:18.932400 dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0
Jan 11 16:41:18.932401 neighbor 1.1.1.1
Jan 11 16:41:18.932405 OSPF restart signaling: Received hello with LLS data from nbr ip=192.168.0.2 id=2.2.2.2.
Jan 11 16:41:18.932408 OSPF packet ignored: our router ID received from 192.168.0.2 on intf eth1 area 0.0.0.0
Jan 11 16:41:27.641822 task_process_events_internal: recv ready for OSPF I/O./var/run/ppmd_control
@hellt
hellt / tkng_prereq_ubuntu20.4.sh
Created December 24, 2020 20:49
tkng lab bootstrap script
#!/bin/bash
#####
#
# This bash script installs latest docker-ce, kubectl and helm software on Ubuntu 20.4 Linux AMD64
#
#####
TMP_DIR="$(mktemp -d)"
########################
@hellt
hellt / cisco.md
Last active October 22, 2020 14:21
gnmic and Cisco IOS-XR

Starting the lab

Start Model Driven Telemetry Lab.

Installing gNMIc

Login into the devbox VM inside this lab and clone the gnmic-bin repo to have the gnmic binary available inside the lab:

git clone https://github.com/hellt/gnmic-bin.git
mv gnmic-bin/gnmic ~/gnmic
@hellt
hellt / readme.md
Last active August 31, 2020 11:44
IOS-XR gNMI issue in MDT sandbox

IOS-XR gNMI list filtering issue in the devnetsandbox MDT lab

As of August 2020 The Model-Driven telemetry lab ships with IOS-XR 6.5.3

This XR version has some issue with the gNMI server that prevents it from accepting YANG list keys without extra quotes around key names.

Problem statement

If one would want to get the interfaces information using the openconfig models they would do this like:

gnmic -a 10.10.20.35:57400 -u admin -p Cisco123 --insecure -e JSON_IETF get --path "openconfig-interfaces:interfaces/interface"
@hellt
hellt / arista.all.json
Created July 26, 2020 07:43
a full dump of vEOS 4.24.1.1F config/state retrieved with gNMI
{
"source": "10.2.0.21:6030",
"time": "1970-01-01T02:00:00+02:00",
"updates": [
{
"Path": "",
"values": {
"": {
"arista-exp-eos:arista": {
"eos": {
@hellt
hellt / sros.md
Last active March 5, 2021 14:03
sros bootstrap

Documentation

SR OS documentation can be fetched from this handy site: https://bit.ly/iondoc Open the 7750 section and choose the needed version.

Documents which require login are marked with "key" icon. The rest can be opened by anyone.

vSIM installation guide provides the details on how to launch virtualized SR OS and its configuration options.

Create disk images

To save on disk space the guide uses libvirt backing store technique, which allows a user to use a common disk image for every guest and each gues will have its own disk image with deltas only.

❯ ~/go/bin/errcheck ./...
cmd/capabilities.go:50:20: go reqCapability(ctx, target, wg, lock)
cmd/capabilities.go:111:17: viper.BindPFlag("version", capabilitiesCmd.Flags().Lookup("version"))
cmd/get.go:146:25: getCmd.MarkFlagRequired("path")
cmd/get.go:150:17: viper.BindPFlag("get-path", getCmd.Flags().Lookup("path"))
cmd/get.go:151:17: viper.BindPFlag("get-prefix", getCmd.Flags().Lookup("prefix"))
cmd/get.go:152:17: viper.BindPFlag("get-model", getCmd.Flags().Lookup("model"))
cmd/get.go:153:17: viper.BindPFlag("get-type", getCmd.Flags().Lookup("type"))
cmd/listen.go:79:26: server.grpcServer.Serve(server.listener)
cmd/listen.go:90:17: viper.BindPFlag("max-concurrent-streams", listenCmd.Flags().Lookup("max-concurrent-streams"))