Re: I-D Action: draft-gont-6man-ipv6-universal-extension-header-01.txt

Brian E Carpenter <brian.e.carpenter@gmail.com> Tue, 06 May 2014 02:11 UTC

Return-Path: <brian.e.carpenter@gmail.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3E13D1A01F9 for <ipv6@ietfa.amsl.com>; Mon, 5 May 2014 19:11:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id czoJKZchNvJ9 for <ipv6@ietfa.amsl.com>; Mon, 5 May 2014 19:11:28 -0700 (PDT)
Received: from mail-ie0-x22b.google.com (mail-ie0-x22b.google.com [IPv6:2607:f8b0:4001:c03::22b]) by ietfa.amsl.com (Postfix) with ESMTP id 2D8F81A0114 for <ipv6@ietf.org>; Mon, 5 May 2014 19:11:28 -0700 (PDT)
Received: by mail-ie0-f171.google.com with SMTP id to1so9111966ieb.2 for <ipv6@ietf.org>; Mon, 05 May 2014 19:11:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:organization:user-agent:mime-version:to:cc :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=/jtzjxQQNJ8EPnRobHkshJUYQCYMwNXXoI5czHMszjA=; b=vM8WJhGF74ZQ7basudWcj1pLcORY7i+6yUETuiyvkpNyPS0N3qVuuYTDbEO6vKNt+2 v+EfQ7RIc5JsPkNcEI+5lo6d1Fxx5B8fUfZx37kI/Kso3cnChtLBR8AdEQ0oLgXnKdlP BXCwuGHNBzqScKjsPe3w+iPm6Qws3G22mT525jNPiueVkOkJdMP+J8Srpnur2WVeEdka z4NOFFTLSJo6MY9d2IssORWmdrttBhXz44PMbL49oSpNBC3JQhtjwN+tsN+C9pEWYBuU 0o+YRzjUY1pN6NWFYEtD3I/ucgDcWodd925A6Kd/Opjx3Q8SW34sZHg9qYfWqcA3kjs2 LUaA==
X-Received: by 10.50.72.50 with SMTP id a18mr28600735igv.35.1399342284552; Mon, 05 May 2014 19:11:24 -0700 (PDT)
Received: from [192.168.178.20] (117.193.69.111.dynamic.snap.net.nz. [111.69.193.117]) by mx.google.com with ESMTPSA id x7sm11485372igw.1.2014.05.05.19.11.22 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 05 May 2014 19:11:23 -0700 (PDT)
Message-ID: <536844CC.9060706@gmail.com>
Date: Tue, 06 May 2014 14:11:24 +1200
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Organization: University of Auckland
User-Agent: Thunderbird 2.0.0.6 (Windows/20070728)
MIME-Version: 1.0
To: "C. M. Heard" <heard@pobox.com>
Subject: Re: I-D Action: draft-gont-6man-ipv6-universal-extension-header-01.txt
References: <20140408103907.23507.46057.idtracker@ietfa.amsl.com> <536317AE.1090500@gmail.com> <Pine.LNX.4.64.1405031048580.14081@shell4.bayarea.net>
In-Reply-To: <Pine.LNX.4.64.1405031048580.14081@shell4.bayarea.net>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Archived-At: http://mailarchive.ietf.org/arch/msg/ipv6/YnNUuVdCuAKwWZioVAGfpi9ShRY
Cc: 6man <ipv6@ietf.org>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 06 May 2014 02:11:30 -0000

On 04/05/2014 07:12, C. M. Heard wrote:
> On Fri, 2 May 2014, Brian E Carpenter wrote:
>> I've finally understood what's been bothering me about this draft.
>> Actually, two things:
>>
>> 1. If a node (regardless of whether it's the destination host,
>> or an intermediate node such as a firewall) has a policy
>> of discarding packets with an unknown extension header
>> or an unknown transport protocol, it *doesn't matter* that
>> it can't distinguish them. The packet is discarded anyway.
>>
>> Comment on that: In either case, this discard by a host is
>> consistent with RFC2460 (even as updated by RFC7045). In either
>> case, it's what we would expect a firewall to do if it has the
>> usual sort of paranoid policy, and that again is consistent
>> with RFC7045.
> 
> What motivated the draft was work on L2 middlebox functions that are 
> not required to have the usual paranoid "default deny" policy in 
> order to accomplish the intended purpose.  One was RA-Guard (see 
> http://tools.ietf.org/html/rfc7113); the other was DHCPv6-Shield 
> (http://tools.ietf.org/html/draft-ietf-opsec-dhcpv6-shield).  For 
> those functions extension headers do not matter so long as the 
> transport header can be found and inspected; the implementation 
> advice for the RA-Guard and DHCPv6-Shield filters is to pass 
> everything that can be positively identified as NOT being a 
> forbidden RA message or DHCPv6 message.
> 
> That being said, if Brian is correct in his assertion that we should 
> expect typical filtering middleboxes to agressively apply a "default 
> deny" policy to unknown extension headers, then I'd have to agree 
> with his conclusion that UEH (or a reserved range of next header 
> values) would fail to achieve its intended purpose, which is to get 
> them to skip over unknown extention headers.  On the other hand, I 
> have gotten the impression from much of the discussion here and on 
> v6ops that the usual aim of filtering middeboxes is to inspect 
> transport headers, not specifically extension headers, and apply a 
> "default deny" policy to transport protocols.  If the reason packets 
> with extension headers get dropped is because the middleboxes lack 
> the ability to find the transport header, then UEH (or a reserved 
> range of next header values) could help.

The scenario would be, for example, a load balancer or QoS classifier
that needs to find the transport header in order to extract port numbers.
And yes, I think you're right, if we have to cope with the risk of both
unknown extension headers (presumed to conform to RFC 6564) *and*
unknown transport protcols (about which we can presume nothing).

>> 2. Given that argument, I think this draft should consider a 4th 
>> possible solution: Do Nothing. I think it's a valid option.
> 
> If "do nothing" means make no changes to the normative 
> specifications in 7045 and 6564, then yes, that is a valid option.
> 
> That being said, there has in the past been an impression that RFC 
> 6564 guaranteed that it would be possible to skip over unknown 
> extension headers -- see, e.g., the changes in the above-referenced 
> DHCPv6-Shield draft in going from -01 to -02.
> 
> In order to clear up thus confusion, it would probably be useful to 
> at least publish advice to implementors of middleboxes that any 
> unrecognized Next Header value SHOULD be treated as if it indicates 
> the presence of an unknown upper-layer header, because it is unsafe 
> to treat it as if it were a new extension header with the TLV format 
> defined by RFC 6564.  

Right, because even if they use the complete IANA list of extension
headers, as specified in RFC 7045, it might be out of date.

> It would also be good to remind them that they 
> MUST provide a configuration option to allow packets containing such 
> values, as specified in RFC 7045, noting that a side-effect of 
> allowing all unrecognized extension headers is that unrecognized 
> transport protocols will be allowed also.

Yes. Whatever we decide about this draft and UEH, I think an
implementation guide is sorely needed.

    Brian