Really Persistent Connections

A little background: a month or so ago, I set up a 6to4 IPv6 tunnel at home, and set up IPv6 addressing on my home LAN. All the machines on my home LAN are routable on the IPv6 internet now. I put a corresponding tunnel on the router of my development network at work (yes, I properly firewalled both networks).

So, here’s the progression of events today:

  1. My MacBook is on the dev network at work via wired ethernet. I ssh to my laptop at home on my LAN through the IPv6 tunnel.

  2. Later, I need to go to a meeting, so I unplug the ethernet cable and turn wireless on, connecting to our corporate WLAN, which has no IPv6 support at all, and connects to the internet via a completely different pipe than the dev network.

  3. I’m in the conference room downstairs for a half hour during the meeting.

  4. I come back to my desk, switch off wireless, and plug the original ethernet cable back in.

  5. A bit later, I switch back to iTerm, and notice the terminal with the ssh session open, which hasn’t timed out on my end yet. Not too surprising, so I go to hit enter a few times to see if it’ll die before I take the more drastic action of closing the window and opening a new one.

  6. I press enter, and… the other end responds! The ssh session is still alive, despite the fact that I’ve been on another network for a good 30 minutes.

Say what?