[ds6] Re: Application tool to acquire all ipv6 addresses on a specified int erface

Donald McLachlan don at mainframe.dgrc.crc.ca
Mon May 9 09:49:31 CEST 2005



> From owner-users at ipv6.org Sun May  8 11:03:56 2005
> Subject: Re: Application tool to acquire all ipv6 addresses on a specified
> 	int erface
> 
> On Fri, 2005-05-06 at 08:29 -0400, Bellino, Phil wrote:
> > Hello,
> > I am running 2.6.11 linux and have IPv6 addresses on eth0, eth1, tun6to4,
> > etc.
> > 
> > I am looking for a tool that my applcation can use that will give me back
> > all of the IPv6 addresses that are on a specified interface.
> > I am trying to prevent having to execute a shell command(such as "ip" or
> > "ifconfig") and then having to parse all that is returned for the IPv6
> > addresses in question.
> > 
> > Does anyone know of such a tool?
> 
> It is called 'cat', or grep if you want a single entry
> 
> jeroen at purgatory:~$ cat /proc/net/if_inet6 
> 00000000000000000000000000000001 02 80 10 80       lo
> fe800000000000000a002bfffee702b3 03 40 20 80     eth1
> 200107b8000500100f71000000000002 03 50 00 80     eth1
> 200107b803000000029027fffe24c19f 01 40 00 80     eth0
> fe80000000000000029027fffe24c19f 01 40 20 80     eth0
> 
> Notez bien, this will only work on linux and not any other platform.
> Then again doing it crossplatform is I guess almost impossible anyway
> except if one codes a part for every separate OS.
> 
> Greets,
>  Jeroen


That give the interface names, not the addresses, as was requested.
RFC 3493 shows if_nameindex() will provide the list of available interfaces
in a portable manner.  The problem from the original quesiton is how to get
the addresses associated with the names without using ip or ifconfig.

Don


More information about the ds6 mailing list