Support for IPv6 was added to OS X with version 10.2. It is possible to access the IPv6BONE from any host connected to the Internet (provided it isn't behind a firewall blocking IP protocol number 41, IPv6 over IPv4).
This is possible thanks to "anycast 6to4 Relays". These are routers connected to both the Internet and the 6BONE. They advertise their presence by announcing the prefix 192.88.99.1 to other Internet routers. Computers with only IPv4 Internet connectivity can send IPv6 traffic to and from the 6BONE by defaulting to the 6to4 address for the 192.88.99.1 anycast prefix.
Substitute your IPv4 address in the following script, and then runit as root using sudo. Test connectivity with an IPv6 ping like the following:
[ross-Computer:~] ross% ping6 www.kame.net
PING6(56=40+8+8 bytes) 2002:9f86:c423::1 --> 3ffe:501:4819:2000:210:f3ff:fe03:4d0
16 bytes from 3ffe:501:4819:2000:210:f3ff:fe03:4d0, icmp_seq=0 hlim=58 time=349.581 ms
16 bytes from 3ffe:501:4819:2000:210:f3ff:fe03:4d0, icmp_seq=1 hlim=59 time=335.102 ms
16 bytes from 3ffe:501:4819:2000:210:f3ff:fe03:4d0, icmp_seq=2 hlim=59 time=337.292 ms
16 bytes from 3ffe:501:4819:2000:210:f3ff:fe03:4d0, icmp_seq=3 hlim=59 time=332.33 ms
^C
--- apple.kame.net ping6 statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 332.330/338.576/349.581 ms
Read the rest of the article for the script...
Create using your favorite editor and remember to chmod 755 it to make it executable...
#!/bin/sh
# substitute your IPv4 address here
stf_interface_ipv4addr="192.168.100.1"
###############################################
#
# Copyright (c) 2000 The KAME Project
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
#
# $FreeBSD: src/etc/rc.network6,v 1.5.2.13 2001/03/19 09:33:59 ume Exp $
#
IFS="$IFS"
IFS=".$IFS"
set ${stf_interface_ipv4addr}
IFS="$OIFS"
ipv4_in_hexformat=`printf "%x:%x\n" $(($1*256 + $2)) $(($3*256 + $4))`
# Set-up 6to4 interface
ifconfig stf0 inet6 2002:${ipv4_in_hexformat}::1 prefixlen 16
# Default route to 6to4 address for anycast 192.88.99.0/24 prefix
route add -inet6 default 2002:c058:6301::
# disallow packets to malicious 6to4 prefix
route add -inet6 2002:e000:: -prefixlen 20 ::1 -reject
route add -inet6 2002:7f00:: -prefixlen 24 ::1 -reject
route add -inet6 2002:0000:: -prefixlen 24 ::1 -reject
route add -inet6 2002:ff00:: -prefixlen 24 ::1 -reject
[robg adds: I have not tested this script...]
Mac OS X Hints
http://hints.macworld.com/article.php?story=2003031617180651