Mar. 19, 2025
One of the very few things that irritates me about TailScale is that it uses ULA addressing and doesn’t allow for custom address block definitions (i.e., I can’t use my own GUA block). While this is definitely a “me problem”, it is something that is irksome to me nonetheless. So, in order to get access to my systems over TailScale, over IPv6, I created this python script to grab the v6 addresses and put them into a format conducive to, say, an internal BIND view, or pihole (v5).
Mar. 14, 2025
IPv6 address planning can be a trial-and-error endeavor. There are useful tools for subnetting, but I couldn;t find anything that would just take a prefix, subnet length, and provide a simple list of the prefixes. (Now, this does exist, and I just simply missed it). I wrote some really simple python that does a few things:
Accepts an IPv6 prefix and a new prefix length to generate subnet allocations.
Feb. 28, 2025
From time to time most network and / or security engineers will need to normalize the output of a set of URLs to either IP literals or a formatted list of DNS names. This can be particularly useful for feeding intelligence feeds or creating block/allow lists.
There are probably 10,000 other scripts to do this, but this one is mine.
Potential use cases:
Building custom pihole block / allow lists Building intelligence feeds Creating ACL lists Creating feeds for BGP filters Probably other stuff Benefits / Features