enable IPv6 after update to Solaris 10 6/06 on x86_64?

I upgraded my Sun W2100z workstation to Solaris 10 6/06 from 1/06 in early July. I remember that the updater asked me if I wanted to enable IPv6 support, and I thought I said "yes", but I'm not certain.

We're ready to begin testing IPv6 in our environment. I'm reading through the Sun Solaris 10 "System Administration Guide: IP Services", and wanted to try enabling inet6 on my workstation's built in (bge0) interface, following example 7-1 on page 149 of the IP Services

guide. Here's what I get:

#ifconfig -a

lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1

inet 127.0.0.1 netmask ff000000

bge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2

inet 134.129.NNN.NNN netmask ffffff00 broadcast 134.129.NNN.255

ether 0:a:e4:31:a2:a6

iprb0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3

inet 172.17.110.23 netmask fffffe00 broadcast 172.17.111.255

ether 0:2:b3:15:6f:12

#ifconfig inet6 bge0 plumb up

ifconfig: bge0: bad address

#ifconfig inet6 iprb0 plumb up

ifconfig: iprb0: bad address

I'm guessing this means that ipv6 support is not loaded. That leads me to two questions:

- how can I tell, after the fact, if IPv6 support was loaded when a Solaris 10 box was

installed or updated? Is there a set of pkgs I should look for, or some other clue?

- assuming that IPv6 support was not selected at install/update time, how does one go

about getting it added to Solaris 10 after the install/update has finished? Load some

pkgs and reboot?

If this is covered in a guide or FAQ I've missed, please point me at it.

Thanks!

Tim

[1778 byte] By [Enchanter] at [2007-11-26 10:38:53]
# 1

> #ifconfig inet6 bge0 plumb up

> ifconfig: bge0: bad address

> #ifconfig inet6 iprb0 plumb up

> ifconfig: iprb0: bad address

Wrong syntax. The interface should always be the first argument. (it's trying to interpret 'iprb0' as an IPv6 hostname and telling you that's a bad address).

[...]

CONFIGURING IPv6 INTERFACES

When an IPv6 physical interface is plumbed and configured

"up" with ifconfig, it is automatically assigned an IPv6

link-local address for which the last 64 bits are calculated

from the MAC address of the interface.

ifconfig le0 inet6 plumb up

[...]

> I'm guessing this means that ipv6 support is not

> loaded.

It's not configured.

> - how can I tell, after the fact, if IPv6 support was

> loaded when a Solaris 10 box was

> installed or updated? Is there a set of pkgs I

> should look for, or some other clue?

I don't believe there's any way not to install it.

> - assuming that IPv6 support was not selected at

> install/update time, how does one go

> about getting it added to Solaris 10 after the

> install/update has finished? Load some

> pkgs and reboot?

Just ifconfig or set the /etc/hostname.<int>6 files the way you want.

--

Darren

Darren_Dunham at 2007-7-7 2:50:15 > top of Java-index,General,Installation...
# 2

> > #ifconfig inet6 bge0 plumb up

> > ifconfig: bge0: bad address

> > #ifconfig inet6 iprb0 plumb up

> > ifconfig: iprb0: bad address

>

> Wrong syntax. The interface should always be the

> first argument. (it's trying to interpret 'iprb0' as

> an IPv6 hostname and telling you that's a bad

> address).

Hey Darren! It seems you and I frequent the same haunts.

I was using that syntax because that's exactly what the "System Administration Guide: IP Services" for Solaris 10 shows in numerous places. I did eventually figure out that the guide is wrong in many places (it gets it correct in other places).

> > - assuming that IPv6 support was not selected at

> > install/update time, how does one go

> > about getting it added to Solaris 10 after the

> > install/update has finished? Load some

> > pkgs and reboot?

>

> Just ifconfig or set the /etc/hostname.<int>6 files

> the way you want.

It's actually /etc/hostname6.<int>, and we tried that, multiple different ways. We tried

setting the (short) hostname in /etc/hostname6.bge0 and the IPv4 and IPv6 addresses that map to that hostname in /etc/inet/ipnodes, and that didn't work. At boot, I would get a

"Failed to configure IPv6 interface: bge0" message, and later would also see an error from "t_optmgmt". I could get a link-local address, but no other address.

I also tried setting the full ipv6 address (instead of the hostname) in /etc/hostname6.bge0, and that produced a similar result.

Using a combination of the man pages and the guide, we were eventually able to figure out how to get a particular persistent IPv6 address assigned to a particular interface (using auto-configuration to get the site prefix portion and "token" for the host id portion of the address - see chapter 7 page 159 of the aforementioned IP Services guide for Solaris 10).

Thanks,

Tim Mooney

Enchanter at 2007-7-7 2:50:15 > top of Java-index,General,Installation...
# 3

> > > #ifconfig inet6 iprb0 plumb up

> > > ifconfig: iprb0: bad address

> >

> > Wrong syntax. The interface should always be the

> > first argument. (it's trying to interpret 'iprb0'

> as

> > an IPv6 hostname and telling you that's a bad

> > address).

>

> Hey Darren! It seems you and I frequent the same

> haunts.

Uh oh... I'm not sure which haunts you're referring to. :-) I have the feeling I should be remembering something.(ZFS? Networker?)

> I was using that syntax because that's exactly what

> the "System Administration Guide: IP Services" for

> Solaris 10 shows in numerous places. I did

> eventually figure out that the guide is wrong in many

> places (it gets it correct in other places).

Ahh. Haven't used that guide. I just tried a few things on my machine and later found the man page agreed with me.

> > Just ifconfig or set the /etc/hostname.<int>6

> files

> > the way you want.

>

> It's actually /etc/hostname6.<int>,

Ooops. Yep, that was the one thing I just typed in without going back to verify.

and we tried

> that, multiple different ways. We tried

> setting the (short) hostname in /etc/hostname6.bge0

> and the IPv4 and IPv6 addresses that map to that

> hostname in /etc/inet/ipnodes, and that didn't work.

Hmm. I'm afraid I know a bit about what the scripts do around there, but not what IPv6 configuration files are supposed to look like.

Aside from the ifconfig error above, you're on your own!

(Glad you've got it working).

--

Darren

Darren_Dunham at 2007-7-7 2:50:15 > top of Java-index,General,Installation...