[cgl_discussion] IPv6 MIBs/SNMP requirements/support

Venkata Jagana jagana at us.ibm.com
Thu Feb 20 14:14:03 PST 2003

Zou, Randy:

See include/net/snmp.h file. This is a common file for both v4 and v6.

snmp.h file defines the entire set of mib objects and the corresponding
set of variables for both IPv4 and IPv6. This is where you need to define
additional MIB objects (that haven't been implemented yet for IPv6.
Unless you wanted to create a separate snmp file (snmp6.h) for IPv6,
you have to use the existing snmp.h file.

All of the ipv4 snmp mib object elements are output to /proc/net/snmp.
Similarly for IPv6, it will be in /proc/net/snmp6. Within the kernel,
you need to provid proc support for all of these object elements.

This all works quite well for SNMP get commands since snmp agent can
this info directly from /proc/net/snmp[4/6] file.

However, if you wanted to 'set' any object elements, you need to implement
them through sysctl control mechanism provided by linux. You have to
the corresponding sysctl mechanism in kernel within ipv6 to change
the parameters. So, the bottomline - you don't need to use conventional
ioctl mechanisms to set/change these parameters but use sysctl mechanism.

As far as changes in the net-snmp package goes, for Linux, it needs
to use these methods (/proc/net/snmp* and /proc/sys/net/ipv[4/6]).

Hope this clarifies of how you have to go about for implementing these
objects for IPv6.


                      "Zou, Yixiong"                                                                                              
                      <yixiong.zou at inte        To:       "'Randy.Dunlap'" <rddunlap at osdl.org>                                     
                      l.com>                   cc:       Venkata Jagana/Beaverton/IBM at IBMUS, cgl_discussion at osdl.org              
                                               Subject:  RE: [cgl_discussion] IPv6 MIBs/SNMP requirements/support                 
                      02/20/2003 12:11                                                                                            

> Hi,
> At first glance this (ioctls needed) looked like valuable info.
> However, I don't see Linux supporting _any_ IOCTLs for access to
> network statistics, so we'll need to clear up this point first.
> Did I overlook them somewhere?
> If not, I don't expect to add any ioctl's.
> Some other method of reading the network statistics will be
> needed, such as reading from /proc/net/* or whatever is currently
> done.
> --
> ~Randy

I was hoping that kernel would provide the ioctl() calls and we can
just use the current implementation in NET-SNMP. If this is not the
case for linux, then basically we need to implemented the whole ipv6
MIBs set for NET-SNMP. That will be a lot more work. :)

Does the 2.5 kernel also provide things in "tcp6.h" that's in FreeBSD?
If so, what header file is that?

Yixiong Zou (yixiong.zou at intel.com)
(503) 677-4988

All views expressed in this email are those of the individual sender.

More information about the cgl_discussion mailing list