<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif; ">
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr"><span style="font-family: arial, sans-serif; font-size: 12.727272033691406px; ">Hello Stackers!</span>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px"><br>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">It is very nice to watch the OpenStack evolution in IPv6! Great job guys!!</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>Thanks!</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px"><br>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px"><br>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">I have another idea:</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px"><br>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">
<div>"<span style="background-color:rgb(255,255,204)">Floating</span> IP" for <span style="background-color:rgb(255,255,204)">IPv6, or just "Floating IPv6"</span></div>
<div><br>
</div>
<div><br>
</div>
<div>With IPv4, as we know, OpenStack have a feature called "<span style="background-color:rgb(255,255,204)">Floating</span> IP", which is basically a 1-to-1 NAT rule (within tenant's Namespace q-router). In IPv4 networks, we need this "<span style="background-color:rgb(255,255,204)">Floating</span> <span style="background-color:rgb(255,255,204)">IP"</span> attached
 to a Instance, to be able to reach it from the <span style="background-color:rgb(255,255,204)">Internet (<font size="1"><u>I don't like it</u></font>)</span>. But, what is the use case for a "<span style="background-color:rgb(255,255,204)">Floating</span> IP"
 when you have <b><u>no NAT*</u></b> (as it is with <span style="background-color:rgb(255,255,204)">IPv6</span>)?!</div>
</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>There are definitely cases for it, and we were planning to address it in a future release.</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">
<div><br>
</div>
<div>At first, when with IPv6, I was planning to disable the "<span style="background-color:rgb(255,255,204)">Floating</span> <span style="background-color:rgb(255,255,204)">IP" feature</span> entirely, by removing it from Dashboard and from APIs (even for
 IPv4, if FWaaS can in somehow, be able to manage q-router IPv4 NAT rules, and not only the "iptables filter table") and, I just had an idea!</div>
<div><br>
</div>
<div>For <span style="background-color:rgb(255,255,204)">IPv6</span>, the "<span style="background-color:rgb(255,255,204)">Floating</span> IP" can still be used to allocate more (and more) IPs to a Instance BUT, instead of creating a NAT rule (like it is for
 IPv4), it will configure the DNSMasq (or something like it) to provide more IPv6 address per MAC / Instance. That way, we can virtually allocate unlimited IPs (v6) for each Instance!</div>
<div><br>
</div>
<div><font face="arial,sans-serif">It will be pretty cool to see the attached "</font><span style="background-color:rgb(255,255,204)">Floating</span><font face="arial,sans-serif"> </font><span style="background-color:rgb(255,255,204)">IPv6", literally "floating
 around" the tenant subnet,</span><font face="arial,sans-serif"> appearing inside the Instances itself (instead of inside the tenant's Namespace), so, we'll be able to see it (the Floating IPv6) with "ip -6 address" command within the attached Instance!</font></div>
<div><br>
</div>
<div>The only problem I see with this is that, for IPv4, the allocated "<span style="background-color:rgb(255,255,204)">Floating</span> IPs" come from the "External Network" (neutron / --allocation-pool) and, for <span style="background-color:rgb(255,255,204)">IPv6</span>,
 it will come from the tenant's <span style="background-color:rgb(255,255,204)">IPv6</span> subnet itself... I think... Right?!</div>
</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>I think the real issue here is how neutron handles these from a network/port perspective.  In the IPv4 case, the IPs are from and entirely separate block.  I think that should probably stay the same for IPv6, since you have twofold problems:</div>
<div><br>
</div>
<ol>
<li>You've already issued an RA on the network for a specific address scope.  Another one, when an interface is already addressed, won't trigger adding a new address.</li><li>Routing.  Which address should be the source address? If it's on the same network, the majority of distributions will ignore further routes and addresses for the purpose of sourcing packets.</li></ol>
<div>Because of the above, it would make sense for floats to end up on a "floating IP" subnet.  However, we'd go back to earlier neutron issues about having multiple subnets on a network.  So then, we end up with a new network, a new subnet and a new port.
  My personal vote is to go this route.</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">
<div><br>
</div>
<div>---</div>
<div>Why I want tons of <span style="background-color:rgb(255,255,204)">IPv6</span> within each Instance?</div>
<div><br>
</div>
<div>A.: Because we can! I mean, we can go back to the days when we had 1 website per 1 public <span style="background-color:rgb(255,255,204)">IP</span> (i.e. using IP-Based Virtual Hosts with Apache - I prefer this approach).</div>
<div><br>
</div>
<div>Also, we can try to turn the "Floating IPv6", in some kind of "Floating IPv6 Range", this way, we can for example, allocate millions of IPs per Instance, like this in DHCPv6: "range6 2001:db8:1:1::1000 2001:db8:1:1000:1000;"...</div>
</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>I'd also argue for security/policy/reserved addressing reasons.  Also, let's not get into the habit of assigning loads of addresses.  Each network needs to be a /64, and going all out means you're back to the exhaustion issue we have in IPv4 ;)</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">
<div>---</div>
<div><br>
</div>
<div>NOTE: I prefer multiple IPs per Instance, instead of 1 IP per Instance, when using VT, unless, of course, the Instances are based on Docker, so, with it, I can easily see millions of tiny instances, each of it with its own IPv6 address, without the overhead
 of virtualized environment. So, with Docker, this "Floating IPv6 Range" doesn't seems to be useful...</div>
<div><br>
</div>
<div><br>
</div>
<div>* I know that there is NAT66 out there but, who is actually using it?! I'll never use this thing. Personally I dislike NAT very much, mostly because it breaks the end-to-end Internet connectivity, effectively kicking you out from the real Internet, and
 it is just a workaround created to deal with IPv4 exhaustion.</div>
</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>As a long-time IPv6 engineer, I will advocate against NAT wherever I possibly can.  +1 to this!</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">
<div><br>
</div>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px"><br>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">BTW, please guys, let me know if this isn't the right place to post "ideas for OpenStack / feature requests"... I don't want to bloat this list with undesirable messages.</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>It absolutely is!  Also, you might want to join the discussions for the IPv6 sub-team: <a href="https://wiki.openstack.org/wiki/Meetings/Neutron-IPv6-Subteam">https://wiki.openstack.org/wiki/Meetings/Neutron-IPv6-Subteam</a></div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px"><br>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px"><br>
</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">Best Regards,</div>
<div style="font-family:arial,sans-serif;font-size:12.727272033691406px">Thiago Martins</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>-Anthony Veiga</div>
</body>
</html>