<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - systemd-networkd: networkd can't create bond from 2 auto configured interfaces post-boot"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=80007">80007</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>systemd-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>systemd-networkd: networkd can't create bond from 2 auto configured interfaces post-boot
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>systemd-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>major
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>spkane00@gmail.com
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>general
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>systemd
          </td>
        </tr></table>
      <p>
        <div>
        <pre>CoreOS related bug filing: 
<a href="https://github.com/coreos/bugs/issues/36">https://github.com/coreos/bugs/issues/36</a>

Using cloud-init to setup network and netdev units for bonded interfaces does
not work as expected, since networkd does not ifdown interfaces that it did not
setup.

This means that a physical system with 2 nics that is netbooted with a plain
CoreOS image will have those interfaces setup during boot automatically by
udev(?) and when cloud-init sets up a bond and then restarts networkd,
networkd, does not ifdown eno1 and eno2, which means they can not be enslaved
to the bond and things fail to come up properly.

networkd could likely continue to ignore devices it knows nothing about, but
assume that it is safe to down interfaces that it now has configuration for,
even if it didn't initially bring them up.

A bit more documentation:
<a href="https://gist.github.com/spkane/8f117f67533822b2481f">https://gist.github.com/spkane/8f117f67533822b2481f</a></pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>