Re: 'ipv6' type in /etc/protocols ?

From: Juan Rodriguez Hervella (jrh_at_it.uc3m.es)
Date: 01/14/04

  • Next message: Andre Oppermann: "Re: kern/61215: off-by-one error likely in ip_fragment()"
    To: Luigi Rizzo <rizzo@icir.org>, net@freebsd.org
    Date: Wed, 14 Jan 2004 15:06:10 +0100
    
    

    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
    _______________________________________________
    freebsd-net@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-net
    To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
    

  • Next message: Andre Oppermann: "Re: kern/61215: off-by-one error likely in ip_fragment()"