Automation is such a beautiful thing, when done safely.
Automation is such a beautiful thing, when done safely.
Yesterday we upgraded the transmission core switches at Qupra DC - while NorthC in Almere was busy burning down.
Yesterday we took MPLS into service, and are delivering our first 20 or so circuits.
Today we will connect Iron Mountain to Qupra using a DWDM connection. EUNetworks will lose network redundancy with only one uplink left. Then, on Sat/Sun we will move from EUNetworks to Iron Mountain, so the window of risk is only two days.
Scratched an itch that's been bothering me for a while. I created a vpp-pcap tool to serve network engineers working with #VPP who want something akin to #tcpdump.
root@jt-router:~# vpp-pcap -i any --print
2026-05-05 02:27:16.544645919 lan Inbound 192.168.37.1 → 224.0.0.251 MDNS 212 Standard query response 0x0000 SRV, cache flush 0 0 44677 lgwebostv.local NSEC, cache flush lgwebostv.local NSEC, cache flush LG webOS Projector 3D93._hap._tcp.local AAAA, cache flush 2604:2940:4001:172:32b1:b5ff:feb9:232e A, cache flush 10.11.64.235
2026-05-05 02:27:16.568789127 lan Inbound 2602:f90e:10:0:18ff:7059:2bb8:3aac → 2602:f90e:10:0:ffff:ffff:ffff:fffe ICMPv6 90 Neighbor Solicitation for 2602:f90e:10:0:ffff:ffff:ffff:fffe from 16:59:1d:c2:0d:c7
2026-05-05 02:27:16.568827057 bvi100 Outbound 2602:f90e:10:0:ffff:ffff:ffff:fffe → 2602:f90e:10:0:18ff:7059:2bb8:3aac ICMPv6 86 Neighbor Advertisement 2602:f90e:10:0:ffff:ffff:ffff:fffe (rtr, sol, ovr) is at de:ad:00:00:00:64
2026-05-05 02:27:16.568834557 lan.30 Outbound 2602:f90e:10:0:ffff:ffff:ffff:fffe → 2602:f90e:10:0:18ff:7059:2bb8:3aac ICMPv6 90 Neighbor Advertisement 2602:f90e:10:0:ffff:ffff:ffff:fffe (rtr, sol, ovr) is at de:ad:00:00:00:64
2026-05-05 02:27:16.568929957 lan Inbound 2602:f90e:10:0:18ff:7059:2bb8:3aac → 2602:f90e:10:0:ffff:ffff:ffff:fffe ICMPv6 90 Neighbor Solicitation for 2602:f90e:10:0:ffff:ffff:ffff:fffe from 16:59:1d:c2:0d:c7
2026-05-05 02:27:16.568934037 bvi100 Outbound 2602:f90e:10:0:ffff:ffff:ffff:fffe → 2602:f90e:10:0:18ff:7059:2bb8:3aac ICMPv6 86 Neighbor Advertisement 2602:f90e:10:0:ffff:ffff:ffff:fffe (rtr, sol, ovr) is at de:ad:00:00:00:64
2026-05-05 02:27:16.568935527 lan.30 Outbound 2602:f90e:10:0:ffff:ffff:ffff:fffe → 2602:f90e:10:0:18ff:7059:2bb8:3aac ICMPv6 90 Neighbor Advertisement 2602:f90e:10:0:ffff:ffff:ffff:fffe (rtr, sol, ovr) is at de:ad:00:00:00:64
VPP has some very rich tracing tools, but I find them ergonomically challenging to use. I came up as a network engineer in the late 90s and early 2000s - this feels much more natural to me.
The repository is on GitHub. Both a plugin and a small Rust utility are used to provide live access to data passing through the VPP dataplane. It can also be chained with tcpdump, tshark, or wireshark to use those familiar interfaces. Usage details are in the GitHub README.
License is Apache 2.0, so use it as you'd like.
I might experiment with RFC 8925 tomorrow night to signal to clients on my #IPv6 preferred subnet to disable their IPv4 stacks altogether. That might take another patch to the #VPP router advertisement process.
I can disable IPv4 on my Macs and they engage the CLAT based on the PREF64 and RDNSS flags. But Android seems to be stubborn. It won't stay connected without DHCP (v4) on the network. Maybe RFC 8925 will help.
Extending the Vector Packet Processing Engine
I've been building core networking components to leverage VPP more fully as a branch router. Here is an overview of that work.https://enigmatick.social/objects?uuid=b5cfe32e-e1ba-40da-80a1-e6f5bcfb6149

L'oposició denuncia que pot quedar "buida" de contingut "real" després del dictamen del secretari general del ple que advertix que no es pot citar ni regidors ni personal extern