Kernel should configured (and compiled) with
DEBUG and DIAGNOSTIC on. If a kernel debugger
works use it (I have tried kgdb and ddb on Suns,
a collegue is looking for kadb (standard SunOS)).
If your root file-system is big compile with debug ("-g") on.
(makeoptions	DEBUG="-g" on Sparcs)

First verify if your Ethernet board driver has IPv6 support in it
(without you'll get "ndp6_resolve: can't allocate llinfo for ...").
Some drivers are already modified then if the multicast support
is already there it is easy to add the IPv6 support).

Add two definitions in config file
(on FreeBSD look at LINT-new too):

options		INET6
(it should compile without it but without IPv6 too)

IMPORTANT: on FreeBSD you MUST put QUOTES for an option with a digit in it:

options		"INET6"
       		^     ^

pseudo-device	sit	X
(with X >= 1 and X >= "number of used LAN physical interfaces")

pseudo-device	cti	Y
(with Y >= 1, you add more at run time)

Only the LANCE Ethernet driver for Sparc
(arch/sparc/dev/if_le.c) has been modified for IPv6
but it is easy to do the same thing for other LAN
interface drivers.

On multihomed nodes, two more things must be set:

options		MULTI_HOMED=1 or 2

and

pseudo-device	llink

(note: the multihomed stuff is not finished nor its specs!)

UNTESTED stuff (ie DONT'T USE):

options		MROUTING6	# with quotes on FreeBSD !
options		"IP6FIREWALL"	# default filters everything !!
pseudo-device	tug	ZZZ
and some other pseudo-device...
