Some notes on userspace routing

1 · Colin Percival · Nov. 17, 2019, 2 a.m.
For reasons which will be immediately apparent to anyone who has read my earlier blog post about the EC2 Instances Metadata Service (and its use by IAM Roles), I recently decided that I wanted to intercept outgoing IP packets which had a destination of 169.254.169.254; in some cases I want to redirect or block them, and in other cases I want them to proceed unimpeded. To make things harder, I had two more constraints: I don't want to write any new kernel code, since venturing into the kernel i...