Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Jan 2004 15:06:10 +0100
From:      Juan Rodriguez Hervella <jrh@it.uc3m.es>
To:        Luigi Rizzo <rizzo@icir.org>, net@freebsd.org
Subject:   Re: 'ipv6' type in /etc/protocols ?
Message-ID:  <200401141506.11400.jrh@it.uc3m.es>
In-Reply-To: <20040114012913.A91612@xorpc.icir.org>
References:  <20040114012913.A91612@xorpc.icir.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 14 January 2004 10:29, Luigi Rizzo wrote:
> hi,
> in implementing ipv6 support for ipfw2, i hit the following
> problem: /etc/protocols has an entry:
>
> 	ipv6    41      IPV6            # ipv6
>
> which is somewhat confusing for the parser -- if you
> type something like
>
> 	ipfw add allow ipv6 from foo to bar
>
> the "ipv6" will match in the call to getprotobyname() and
> the above will be translated into a rule that matches packets with
> ip->ip_proto == 41 (6 is TCP, 17 is UDP, etc.), while i presume
> that what one would really want with the above notation is to
> match IPv6 packets, i.e.
>
>   + layer2 packets with mac-type 0x86dd (ipv6)
>   + layer3 packets with ip->ip_v == 6
>
> Now, i can put a special case for the keyword 'ipv6', but
> I wonder, what do we do with ip->ip_proto == 41 ? Does it
> make sense to handle this request ? 

I think that it makes sense if you want to parse IPv6 in IPv4
packets.

> And in this case,
> what name do we use for it to avoid conflicts ?

Ipv6-encap ? ipv6-in-ipv4 ? ipv64 ? .....I dont know...
I agree with you that if somebody
specifies the word "Ipv6", what he/she wants to is to get
normal IPv6 packets, not IPv6 in IPv4 packets....imho.

> Looking at /sys/netinet/in.h, it appears that
> ip_proto == 4 and 41 refer to encapsulations of ipv4 and ipv6
> into ip...

You are right.

-- 
******
JFRH
******

In seeking the unattainable, simplicity only gets in the way.
		-- Epigrams in Programming, ACM SIGPLAN Sept. 1982



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401141506.11400.jrh>