$Id: isatap.html,v 1.20 2012/03/12 15:09:21 momose Exp $
ISATAP(Intra-Site Automatic Tunneling Addressing Protocol) is a technology that provides IPv6 reachablity for dual stack nodes on IPv4 network. See RFC5214 for more details.
In this page, ISATAP client for Mac OS X is introduced. Current Mac OS X has only 6to4 for IPv6 transition, though, it can't be used in the most Intra-Site networks (or enterprise networks). ISATAP is desgined to work on such intra-site if the site has IPv6 connectivity on it's border. (And ISATAP router should be put on the border.)
This implemenation is derived from KAME works. But a lot of fixes were needed to make it work as a Mac OS X kernel extention.
This is quite pre-alpha quality. You must be sure that you may get serious damage with this kext. Please backup your Mac before trying this software.
In addition, functions provided by this software are very primitive. For example, if your ipv4 address was changed due to moving another network, dhcp lease expiring, so on, IPv6 addresses attached to the isatap interface wouldn't be updated automatically. That might irritate you since the ipv6 reachability would be hung up suddenly. These shortcomings will be improved at times.
I confirmed it works on 64 bit mode.
I don't claim any license of this work. All the license terms are belong to the original holder. i.e., The code from KAME have WIDE project license(almost same as BSD's one).
Note that this implementation is pre-alpha quality yet, thus, there is no cool installer nor nice looking gui. You need to operate it by hand in the terminal shell.
The following procedure should be done once when you install this package at fist.
% cd /usr/local % sudo tar xfz ~/Downloads/macosx-isatap-0.4.tar.gz
Normally, a kext is installed at /System/Library/Extensions. However, since additional operations are also required to configure ISATAP besides loading kext, this page doesn't recommend to put it on the default directory. But, it doesn't prohibit. If you'd like to install it there, do as you like. the following scripts would work properly such case. I'm glad to hear from you how it should be.
The operation described below is almost same as How to use ISATAP on KAME. But some operations are put into shell scripts.
% cd /usr/local/isatap % sudo ./config-ist.sh en1With this operation, kext is loaded, linklocal address is assigned based on your reachable IPv4 address.
% sudo ./ifconfig ist0 isataprtr 192.168.0.254if your site defines "isatap.your-domain", you can use update-isataprtr.sh.
% sudo ./update-isataprtr.sh <your-domain>This script should be execute periodically somehow to update the isatap router list.
% sudo ./rtsold.sh &Note that the built-in rtsold(8) doesn't send RA periodically.
If your outgoing IPv4 address was changed as moved to another network, execute config-ist.sh again.
If your isatap router was no longer available, change the address as follows:
% sudo ./ifconfig ist0 deleteisataprtr <old isatap router address> % sudo ./ifconfig ist0 isataprtr <new isatap router address>
If you don't want to use ISATAP any more, just down the ist0 interface.
% sudo ifconfig ist0 down
You can use the ISATAP again when you up the ist0 interface.
or, just unload the kext.
% sudo kextunload isatap.kext
Of cource, this is perfectly open source. But I can't prepare the source to be published yet. It will put on this site soon.
There shouldn't be any serious problems. Belows are a list of what should be advanced.
Leave comment via facebook