Text for IPv6 Scope
Michael Tuexen
Michael.Tuexen at lurchi.franken.de
Sat Jan 5 03:52:58 PST 2008
Dear all,
aren't site-local IPv6 addresses depreceated (RFC 3879)? So shouldn't
the site-local stuff be removed?
Best regards
Michael
On Jan 4, 2008, at 10:56 PM, Crist J. Clark wrote:
> Anyone up for adding text to the scopeid field in the ifconfig(8)
> output for IPv6 addresses? Other OSes do. To avoid too much
> disruption to the current format, the text is appended after the
> currently printed hexadecimal field.
>
> Example:
>
> fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=8<VLAN_MTU>
> inet6 fe80::290:27ff:fe13:2540%fxp0 prefixlen 64 scopeid
> 0x5(site-local)
>
> While we're at it, update the in6.h file to include all scopes
> in RFC4291.
>
> Look OK? Anyone up for applying these?
>
> Patches (diffs off of a not-too-current CURRENT):
>
> Index: sbin/ifconfig/af_inet6.c
> ===================================================================
> RCS file: /ncvs/freebsd/src/sbin/ifconfig/af_inet6.c,v
> retrieving revision 1.5
> diff -u -r1.5 af_inet6.c
> --- sbin/ifconfig/af_inet6.c 3 Feb 2007 03:40:33 -0000 1.5
> +++ sbin/ifconfig/af_inet6.c 4 Jan 2008 21:53:26 -0000
> @@ -290,8 +290,31 @@
> if ((flags6 & IN6_IFF_TEMPORARY) != 0)
> printf("temporary ");
>
> - if (scopeid)
> - printf("scopeid 0x%x ", scopeid);
> + if (scopeid) {
> + printf("scopeid 0x%x", scopeid);
> + switch (scopeid) {
> + case __IPV6_ADDR_SCOPE_INTFACELOCAL:
> + printf("(interface-local) ");
> + break;
> + case __IPV6_ADDR_SCOPE_LINKLOCAL:
> + printf("(link-local) ");
> + break;
> + case __IPV6_ADDR_SCOPE_ADMINLOCAL:
> + printf("(admin-local) ");
> + break;
> + case __IPV6_ADDR_SCOPE_SITELOCAL:
> + printf("(site-local) ");
> + break;
> + case __IPV6_ADDR_SCOPE_ORGLOCAL:
> + printf("(org-local) ");
> + break;
> + case __IPV6_ADDR_SCOPE_GLOBAL:
> + printf("(global) ");
> + break;
> + default:
> + putchar(' ');
> + }
> + }
>
> if (ip6lifetime && (lifetime.ia6t_preferred ||
> lifetime.ia6t_expire)) {
> printf("pltime ");
> Index: sys/netinet6/in6.h
> ===================================================================
> RCS file: /ncvs/freebsd/src/sys/netinet6/in6.h,v
> retrieving revision 1.44
> diff -u -r1.44 in6.h
> --- sys/netinet6/in6.h 28 Mar 2006 12:51:22 -0000 1.44
> +++ sys/netinet6/in6.h 4 Jan 2008 21:44:36 -0000
> @@ -271,6 +271,7 @@
> #define IPV6_ADDR_SCOPE_NODELOCAL 0x01
> #define IPV6_ADDR_SCOPE_INTFACELOCAL 0x01
> #define IPV6_ADDR_SCOPE_LINKLOCAL 0x02
> +#define IPV6_ADDR_SCOPE_ADMINLOCAL 0x04
> #define IPV6_ADDR_SCOPE_SITELOCAL 0x05
> #define IPV6_ADDR_SCOPE_ORGLOCAL 0x08 /* just used in this file */
> #define IPV6_ADDR_SCOPE_GLOBAL 0x0e
> @@ -278,6 +279,7 @@
> #define __IPV6_ADDR_SCOPE_NODELOCAL 0x01
> #define __IPV6_ADDR_SCOPE_INTFACELOCAL 0x01
> #define __IPV6_ADDR_SCOPE_LINKLOCAL 0x02
> +#define __IPV6_ADDR_SCOPE_ADMINLOCAL 0x04
> #define __IPV6_ADDR_SCOPE_SITELOCAL 0x05
> #define __IPV6_ADDR_SCOPE_ORGLOCAL 0x08 /* just used in this file */
> #define __IPV6_ADDR_SCOPE_GLOBAL 0x0e
> --
> Crist J. Clark | cjclark at alum.mit.edu
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>
More information about the freebsd-net
mailing list