Re: [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549

<> Tue, 25 June 2019 15:12 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id EA9BB120372; Tue, 25 Jun 2019 08:12:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.297
X-Spam-Status: No, score=-4.297 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id nVf3ydo5IcnI; Tue, 25 Jun 2019 08:12:23 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 024101200FF; Tue, 25 Jun 2019 08:12:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;;; q=dns/txt; s=dtag1; t=1561475541; x=1593011541; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=xjr65G49Mog7nmkO9VwKpVgAGK8JHB18T871boPTX58=; b=y6LQFYIVW+GqryWByS82zU5yQ1TbjrNmoOTRNBTaHkriuc+AB2bXdCCh iQzKNXGUg4Xr9/93/H+o9VQqaBJ6KAhyve1eiT9iybCgn8G3di+rA2cx/ gukunyG+kARjGJhi53bb3/pOZNM9nlW7sOGJCxKRREEL+k5txb90NS/Al mVg7CAh9ojEIbf/7eFxRRv3ajKwaeSl8amhyM/bD4cpI0KB3K6DkYIsEc dI7rmT2hBxaaP5cD4S2ZD6k9cLZLEuyA3d/FiZWIMfNdawHkI8T9aWuHS v5j/nDkA3snrdCKHzlznSoeNP44smAI8auSskjkdJx3ImkAybAyDauncX w==;
Received: from ([]) by with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Jun 2019 17:12:18 +0200
X-MGA-submission: MDEdipuzwK46jcFvf/nVeuu2JNmT5q1jv/NsNmNC3+Gd4j7QysQMNipJ3WTcVjvhkPx6fZktiOlRo+5eRDnNyX7lx3OLXSMRfoGePNlIGt0J2m5mkwlqqfiW/n/wIV209jPzvCHsli8tYWxTsDYYKHNeWSrfor1cpswKgMfovSwMpg==
Received: from ([]) by with ESMTP/TLS/AES256-SHA; 25 Jun 2019 17:12:19 +0200
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1473.3; Tue, 25 Jun 2019 17:12:19 +0200
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Tue, 25 Jun 2019 17:12:19 +0200
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1473.3; Tue, 25 Jun 2019 17:12:17 +0200
Received: from LEXPR01MB0189.DEUPRD01.PROD.OUTLOOK.DE ( by LEXPR01MB1215.DEUPRD01.PROD.OUTLOOK.DE ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2008.16; Tue, 25 Jun 2019 15:12:18 +0000
Received: from LEXPR01MB0189.DEUPRD01.PROD.OUTLOOK.DE ([fe80::70a5:6b2d:cf8e:10f6]) by LEXPR01MB0189.DEUPRD01.PROD.OUTLOOK.DE ([fe80::70a5:6b2d:cf8e:10f6%2]) with mapi id 15.20.2008.017; Tue, 25 Jun 2019 15:12:17 +0000
Thread-Topic: [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549
Thread-Index: AdUoywhLB5bsk43hQOStVculmHkjLwBunIeAADCC7YAADGdwgA==
Date: Tue, 25 Jun 2019 15:12:17 +0000
Message-ID: <>
References: <> <> <>
In-Reply-To: <>
Accept-Language: en-GB, en-US
Content-Language: en-US
user-agent: Microsoft-MacOutlook/10.10.b.190609
authentication-results: spf=none (sender IP is );
x-originating-ip: [2003:1c09:21:c00:500a:7881:468:516]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 416529ab-e0ea-40d0-5be6-08d6f97f8360
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:LEXPR01MB1215;
x-ms-traffictypediagnostic: LEXPR01MB1215:
x-ms-exchange-purlcount: 1
x-microsoft-antispam-prvs: <LEXPR01MB121545D888301D057C9B8DD0FCE30@LEXPR01MB1215.DEUPRD01.PROD.OUTLOOK.DE>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 0079056367
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(396003)(376002)(136003)(366004)(346002)(199004)(189003)(52396003)(7736002)(81166006)(81156014)(66476007)(66446008)(8676002)(2501003)(8936002)(66574012)(16799955002)(5660300002)(476003)(46003)(2616005)(64756008)(446003)(11346002)(53936002)(76116006)(68736007)(73956011)(66946007)(66556008)(86362001)(54906003)(6116002)(110136005)(33656002)(74482002)(6306002)(486006)(229853002)(236005)(316002)(36756003)(54896002)(58126008)(102836004)(76176011)(53546011)(71200400001)(6246003)(966005)(606006)(71190400001)(14454004)(256004)(478600001)(186003)(2906002)(75402003)(4326008)(518174003); DIR:OUT; SFP:1101; SCL:1; SRVR:LEXPR01MB1215; H:LEXPR01MB0189.DEUPRD01.PROD.OUTLOOK.DE; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None ( does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: OC2BJj4cMPdGL9AildtbOA/hXIrIS00/gtQrUNfteZcwRP1fpPH/LYY5AnEX0fh2ZOkx/nJopTEpjMn4/KzYu0iSLg8a4hgX1Ru+T7lY/WiHVm4IGR4T4iMVpqehNdKImAKOiWHJdLISxuen4EQiH9IBGaDOgUPzeU+6eA+XpJ524pFfCZkf+xyqfyULKT5yWqSJR8hH83Q2i3Fs3PpdvdXnSQVJV2QysIZZt8L9A1lncKigRw8V9gEoKaRGIufB1XcZmmHgyEpZR3wJLT3T6DFtgAixwDwCMm2Q+rxrXvdUxz1BkbuUIs/18SfqNMl7WtelnkBxXZjYop6qEtDmTj1jWp6j1Mv1K7TUdAUvCUMPqr+mEMYUPKZbqjRoJ2MLERvJhyLuvqEpGYxlOqyPoLske2REo/6oca7SVCPhpMI=
Content-Type: multipart/alternative; boundary="_000_B577834D401042DFAF28690A1BD2A5ACtelekomde_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 416529ab-e0ea-40d0-5be6-08d6f97f8360
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jun 2019 15:12:17.9476 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bde4dffc-4b60-4cf6-8b04-a5eeb25f5c4f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LEXPR01MB1215
Archived-At: <>
Subject: Re: [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: BGP-Enabled ServiceS working group discussion list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 25 Jun 2019 15:12:27 -0000

Hi Shunwan,

I’ve just re-checked RFC5539, and the referenced section 3 of RFC2545 and I can find nothing about using VPN-IPv6 for encoding the next-hop. Section 3 of RFC5539 is very clear that it’s a 16-byte GU IPv6 address or 32-bytes with a GU and LL address.

Can you point me to the text that gives you the impression that VPN-IPv6 is correct?

Note – I see that there is reported Errata on RFC5549, (not verified) saying that the length should be 24 or 48 to include the RD. However, as mentioned above, the supporting text in multiple places in the RFC and its references support the use of an IPv6 address (or 2) with no RD at 16 or 32 bytes, so this does seem to be the intention of the document as written.


From: Softwires <> on behalf of Zhuangshunwan <>
Date: Tuesday, 25. June 2019 at 13:18
To: "" <>
Cc: "" <>, "" <>
Subject: Re: [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549

Hi Ian,

Thanks for your response!

The opinion I have collected is:
Per RFC4634, the IPv4-VPN routes shall carry the V4 Next-hop, beginning with an 8-octet RD and ending with a 4-octet IPv4 address.
Per RFC4659, the IPv6-VPN routes shall carry the V6 Next-hop, beginning with an 8-octet RD and ending with a 16-octet IPv6 address.
When we start to implement the IPv4 VPN over IPv6 Core,  it is a natural way to encode the IPv4-VPN routes with VPN-IPv6 next-hop (i.e. beginning with an 8-octet RD and ending with a 16-octet IPv6 address) .

I believe this is not just a minority opinion, and some of the current implementations are also doing this way.

I hope that the WGs can give a consistent opinion on this issue and avoid interoperability problem in the future.


From: []
Sent: Monday, June 24, 2019 8:08 PM
To: Zhuangshunwan <>
Subject: Re: [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549


My reading of Section 3 of RFC5549 is that the v6 next-hop is encoded as an IPv6 address:

   The BGP speaker receiving the advertisement MUST use the Length of
   Next Hop Address field to determine which network-layer protocol the
   next hop address belongs to.  When the Length of Next Hop Address
   field is equal to 16 or 32, the next hop address is of type IPv6.

It’s also worth noting that RFC4659 Section 2 states:

A VPN-IPv6 address is a 24-octet quantity, beginning with an 8-octet
   "Route Distinguisher" (RD) and ending with a 16-octet IPv6 address.

So, not 16 or 32 bytes.


On 22. Jun 2019, at 09:59, Zhuangshunwan <<>> wrote:

Dear authors and WGs,

RFC5549 Section 6.2 says:

. 6.2.  IPv4 VPN over IPv6 Core
.    The extensions defined in this document may be used for support of
.    IPV4 VPNs over an IPv6 backbone.  In this application, PE routers
.    would advertise VPN-IPv4 NLRI in the MP_REACH_NLRI along with an IPv6
.    Next Hop.
.    The MP_REACH_NLRI is encoded with:
.    o  AFI = 1
.    o  SAFI = 128
.    o  Length of Next Hop Network Address = 16 (or 32)
.    o  Network Address of Next Hop = IPv6 address of Next Hop
.    o  NLRI = IPv4-VPN routes

Regarding IPv4-VPN routes, RFC4634 Section 4.3.2 says:

. 4.3.2.  Route Distribution Among PEs by BGP
.    When a PE router distributes a VPN-IPv4 route via BGP, it uses its
.    own address as the "BGP next hop".  This address is encoded as a
.    VPN-IPv4 address with an RD of 0.  ([BGP-MP] requires that the next
.    hop address be in the same address family as the Network Layer
.    Reachability Information (NLRI).)  It also assigns and distributes an
.    MPLS label.  (Essentially, PE routers distribute not VPN-IPv4 routes,
.    but Labeled VPN-IPv4 routes.  Cf. [MPLS-BGP].)  When the PE processes
.    a received packet that has this label at the top of the stack, the PE
.    will pop the stack, and process the packet appropriately.

RFC5549 defines "IPv4 VPN over IPv6 Core", When a PE router distributes a VPN-IPv4 route with an IPv6 Next-Hop via BGP, should the IPv6 Next-Hop be encoded as an VPN-IPv6 address with an RD of 0 ?

Softwires mailing list<>