Supporting IPv6 in twisted

It turns out that adding IPv6 support to the twisted library is rather straightforward. Originally, I just hacked up a few changes to get my prototype running with teredo, resulting in a few lines of changes to the twisted networking code (patch available). It turns out that the resulting code seems fully backwards-compatible with IPv4. Unintended, but highly welcome ;-) YAY (IPv6 required)!

Anyhow -- if you're a hacker, give teredo a try. Turn your laptop into a server in a few minutes. It's a sexy piece of technology which I think will greatly change the way we think about and work with the internet.

One thing to keep in mind are security issues: teredo provides you with a globally visible IP address, meaning you're directly addressable worldwide. NATs and many in-between firewalls are tunnelled through. If you're using a mac, add something like the following ipfw firewall ruleset (thanks POL) to your miredo startup command (see /etc/miredo.conf) to protect you from unsolicited and possibly dangerous traffic:


exec > "$LOGFILE" 2>&1

echo "Starting miredo hook for setting up firewall rules...."
echo "$0: $$" echo "uid: $UID"
killall -HUP lookupd DirectoryService

/sbin/ip6fw add 1000 allow log tcp from any to any 6221
/sbin/ip6fw add 1001 deny log tcp from any to any
 Permalink twisting values since 1994