<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Anthony and Robert,<br>
    <br>
    Thanks for your reply. I don't know if the arping is there for NAT,
    but I am pretty sure it's for HA setup to broadcast the router's own
    change since the arping is controlled by "send_arp_for_ha" config.
    By checking the man page of arping, you can find the "arping -A" we
    use in code is sending out ARP REPLY instead of ARP REQUEST. This is
    like saying "I am here" instead of "where are you". I didn't
    realized this either until Brain pointed this out at my code review
    below. <br>
    <br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="http://linux.die.net/man/8/arping">http://linux.die.net/man/8/arping</a><br>
    <br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a
href="https://review.openstack.org/#/c/114437/2/neutron/agent/l3_agent.py">https://review.openstack.org/#/c/114437/2/neutron/agent/l3_agent.py</a><br>
    <br>
    Thoughts?<br>
    <br>
    Xu Han<br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 08/27/2014 10:01 PM, Veiga, Anthony
      wrote:<br>
    </div>
    <blockquote
      cite="mid:D0235C60.2554%25anthony_veiga@cable.comcast.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <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 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>
              Hi Xuhan,</div>
            <div><br>
            </div>
            <div>What I saw is that GARP is sent to the gateway port and
              also to the router ports, from a neutron router. I’m not
              sure why it’s sent to the router ports (internal network).
              My understanding for arping to the gateway port is that it
              is needed for proper NAT operation. Since we are not
              planning to support ipv6 NAT, so this is not
              required/needed for ipv6 any more?</div>
          </div>
        </blockquote>
      </span>
      <div><br>
      </div>
      <div>I agree that this is no longer necessary.</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 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>
            <div>There is an abandoned patch that disabled the arping
              for ipv6 gateway port:  <a moz-do-not-send="true"
href="https://review.openstack.org/#/c/77471/3/neutron/agent/l3_agent.py">https://review.openstack.org/#/c/77471/3/neutron/agent/l3_agent.py</a></div>
            <div><br>
            </div>
            <div>thanks,</div>
            <div>Robert</div>
            <div><br>
            </div>
            <span id="OLK_SRC_BODY_SECTION">
              <div>
                <div>On 8/27/14, 1:03 AM, "Xuhan Peng" <<a
                    moz-do-not-send="true"
                    href="mailto:pengxuhan@gmail.com">pengxuhan@gmail.com</a>>
                  wrote:</div>
              </div>
              <div><br>
              </div>
              <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">As a follow-up action of yesterday's
                      IPv6 sub-team meeting, I would like to start a
                      discussion about how to support l3 agent HA when
                      IP version is IPv6. 
                      <div><br>
                      </div>
                      <div style="">This problem is triggered by bug [1]
                        where sending gratuitous arp packet for HA
                        doesn't work for IPv6 subnet gateways. This is
                        because neighbor discovery instead of ARP should
                        be used for IPv6.</div>
                      <div style=""><br>
                      </div>
                      <div style="">My thought to solve this problem
                        turns into how to send out<font color="#000000"
                          face="sans-serif"> neighbor advertisement for
                          IPv6 routers just like sending ARP reply for
                          IPv4 routers after reading the comments on
                          code review [2].</font></div>
                      <div style=""><font color="#000000"
                          face="sans-serif"><br>
                        </font></div>
                      <div style=""><font color="#000000"
                          face="sans-serif">I searched for utilities
                          which can do this and only find a utility
                          called ndsend [3] as part of vzctl </font><span
style="color:rgb(0,0,0);font-family:sans-serif">on ubuntu. I could not
                          find similar tools on other linux
                          distributions. </span></div>
                      <div style=""><br>
                      </div>
                      <div style="">There are comments in yesterday's
                        meeting that it's the new router's job to send
                        out RA and there is no need for neighbor
                        discovery. But we didn't get enough time to
                        finish the discussion. </div>
                    </div>
                  </div>
                </div>
              </blockquote>
            </span></div>
        </blockquote>
      </span>
      <div><br>
      </div>
      <div>Because OpenStack runs the l3 agent, it is the router.
         Instead of needing to do gratuitous ARP to alert all clients of
        the new MAC, a simple RA from the new router for the same prefix
        would accomplish the same, without having to resort to a special
        package to generate unsolicited NA packets.  RAs must be
        generated from the l3 agent anyway if it’s the gateway, and
        we’re doing that via radvd now.  The HA failover simply needs to
        start the proper radvd process on the secondary gateway and
        resume normal operation.</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 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;">
            <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=""><br>
                      </div>
                      <div style="">Can you comment your thoughts about
                        how to solve this problem in this thread,
                        please?</div>
                      <div style=""><br>
                      </div>
                      <div style="">[1] <a moz-do-not-send="true"
                          href="https://bugs.launchpad.net/neutron/+bug/1357068">https://bugs.launchpad.net/neutron/+bug/1357068</a></div>
                      <div style=""><br>
                      </div>
                      <div style="">[2] <a moz-do-not-send="true"
                          href="https://review.openstack.org/#/c/114437/">https://review.openstack.org/#/c/114437/</a></div>
                      <div style=""><br>
                      </div>
                      <div style="">[3] <a moz-do-not-send="true"
                          href="http://manpages.ubuntu.com/manpages/oneiric/man8/ndsend.8.html">
http://manpages.ubuntu.com/manpages/oneiric/man8/ndsend.8.html</a></div>
                      <div style=""><br>
                      </div>
                      <div style="">Thanks,</div>
                      <div style="">Xu Han </div>
                    </div>
                  </div>
                </div>
              </blockquote>
            </span></div>
        </blockquote>
      </span>
      <div><br>
      </div>
      <div><br>
      </div>
      <div>-Anthony</div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
OpenStack-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>