I managed to solve this particular issue, although my IPv6 is still not working, for other reasons.
First of all, I uninstalled ZoneAlarm Free Firewall. I'm not sure if it was causing this problem but I've read about it causing problems with IPv6.
The Microsoft Teredo Tunneling Adapter was in fact missing. I have no idea how it got missing, other than perhaps ZoneAlarm removed it. This I solved as follows:
- Run Device Manager as admin.
- Right-click on the computer's name at the top of the tree view and pick "Add legacy hardware."
- Opt to manually select the device.
- Choose Network adapters, then Microsoft, then "Microsoft Teredo Tunneling Adapter."
- Complete the wizard to install the adapter.
At this point you shouldn't see Microsoft Teredo Tunneling Adapter in Device Manager unless you check View->"Show hidden devices." However, for me, once I got the driver installed, it did show and with a yellow exclamation icon, revealing the error "this device cannot start (code 10)."
It turns out this was due to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\Parameters\DisabledComponents having been set (in the registry) to a non-zero value. I had previously set it to zero and double-checked this, so somewhere along the line either removing ZoneAlarm or installing the Teredo Tunneling Adapter caused this setting to get overwritten automatically.
Once I set DisabledComponents back to 0 and rebooted, the Teredo adapter enabled uneventfully into enterpriseclient mode using the commands stated in the question.
There are some detailed notes on Teredo which may prove useful once the Teredo adapter is enabled, here:
http://yorickdowne.wordpress.com/2008/01/26/ipv6-at-home-part-1-overview-teredo/