Best Of Me

  • user warning: Out of memory (Needed 260200 bytes) query: SELECT r.* FROM role r INNER JOIN permission p ON r.rid = p.rid WHERE p.perm LIKE '%post comments%' ORDER BY r.name in /htdocs/drupal-5.23/includes/database.mysql.inc on line 174.
  • user warning: Out of memory (Needed 260176 bytes) query: SELECT node.nid, rand() AS random_sort, node.title AS node_title, node.changed AS node_changed FROM node node WHERE (node.status = '1') AND (node.type IN ('image')) ORDER BY random_sort ASC LIMIT 0, 1 in /htdocs/drupal-5.23/includes/database.mysql.inc on line 174.

NAT's a funny thing, as it turns out.
For the first time in a long time, I actually enjoyed doing something at work...
One of our ongoing projects from last year gave me the opportunity to route a subnet to a customer whom was migrating from another service provider.
Having convinced the Senior IT staff of said customer that routing them their subnet was a good plan, I began setting it up in short order.
So, the end result was they get an extra IP address, and are running a routing protocol to advertise their shiny new subnet into our network.
But now there's a private IP range between said customer, and our Aggregation Routers over which public internets needs to be available.
It never occurred to me previously that because NAT just modifies the IP headers and creates a state, you can do something funny like NAT to an IP address that doesn't exist!
"Seriously... will this actually work?"
So....

  • Translate packets to the non-existent IP, create a state
  • Send translated packets towards the internet
  • Replies are happily forwarded to the router advertising ownership of it's subnet.
  • State table is referenced, NAT reversal happens, and life goes on.

Meanwhile, never-mind the fact that the IP address doesn't actually exist anywhere, except in the form of a promise that it might be somewhere in the subnet being advertised.
I found this whole experience preposterous, and yet strangely droll both at once.

Also, this is made of epic win. GNS3, in a Ubuntu Virtual Machine, ready to rock!

Hmm... I really, *really* need to do something about all these youtube videos...