<p>Recently in the <a href="https://terragraph.com/">Terragraph</a> project I work on we changed from RPM to OPKG to removes some dependencies (e.g. perl) and make our overall image size smaller. I've never driven OPKG, but know RPM, so I made this cheat sheet for my shit memory.</p> <p>I'm cheap so I don't have a Table plugin – [ View Post… ]
Ansible + Handy PyPI CLI Tools
I often use a lot of PyPI CLI tools. Here is an example of how to get them easily installed and kept up to date via Ansible on Ubuntu >= 18.04. Install base pip via apt then run pip: – name: Get Python3 pip package: name: python3-pip state: latest – name: Add some handy Python [ View Post… ]
IPv6 + Flow labels
Recently a teammate and I have come across a frame forwarding issue with ECMP on a hardware ASIC in a device I work on where the use of Flow labels are used in the ECMP hash. This was interesting as we found iperf was not setting the Flow label at all, unless you specify the -L [ View Post… ]
NXOS Simple IPv6 BGP Peering
It took me far to long to find out how to config this, so I’m sharing it to be more searching on the Internets. Scenario: – NXOS BGP ‘upsteam’ / ‘north bound’ peer sharing the default route only – Linux box runs Quagga sharing it’s /56 routable behind it Nexus Conf feature bgp router bgp [ View Post… ]
Python pip ‘editable’ installing
From time to time I get asked (and I even have to ask a coworker) for the best way to install a Python modules (especially ones with entry points) into a virtualenv and still edit / develop with them. It seems pip install’s ‘-e’ is very unknown. pip install -e /path/you/are/editing Will allow you to develop [ View Post… ]
BitBucket + hg + branch merges
Ever have to update/merge a PR on BitBucket with Mercurial? I couldn’t find documentation anywhere, so doing so here: hg up BOOKMARK_NAME hg merge [–preview] -r REV If EDITOR is not set: export EDITOR=vim hg resolve –all hg commit -m “Merge with default” hg push –allow-anon
Python 3.7 – The best Python Release Ever!
Especially because: https://github.com/python/cpython/commit/47320a652e872003f3dd3a9db4243067b09dd316#diff-c6a3fa0ad7b17f8e32f340835a4e5353 🙂
GitHub + Rebasing from upstream/master to origin/master
So, every now and then on a PR I need to rebase and fix things so I can retest etc. – I always forget this so blogging it to remember. Scenario: I have a diff on origin/master on my forked repo and I need a rebase from upstream/master (where I forked from). Process: Github recommends [ View Post… ]
IPv6 Tacacs+ Support (tac_plus)
Recently @ Facebook we found that we required IPv6 access to TACACS for auth (AAA) for the majority of our production Network Equipment. Tacacs+ (tac_plus) is an old daemon released by Cisco in the late 90s. It still works (even at our scale) and the config was doing what we required, so it was decided that we [ View Post… ]
30 Levels of NAT Lab #2 – Juniper SRX100s
Well, I had the chance again to play with lots of Firewalls, so I did. A customer had ordered > than 30 SRX100s for clustered branch deployments so I took the opportunity to ask for permission to pull 30 of them out of boxes and reproduce my 30 levels of NAT lab. It\’s never the [ View Post… ]