<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - networkd: Please add support for an [addrlabel] section"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=90029">90029</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>networkd: Please add support for an [addrlabel] section
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>systemd
          </td>
        </tr>

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

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

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

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

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

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

        <tr>
          <th>Reporter</th>
          <td>cb@lathspell.de
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>systemd-bugs@lists.freedesktop.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I'm looking for a way to configure the following command line via systemd's
networkd:

  ip addrlabel add prefix 2001:1111:0:222:33::/128 label 666
  ip addrlabel add prefix 2001:1111::/32           label 666

My suggestion would be the following addtion to
/etc/systemd/network/foo.network

  ...
  [address]
  address = 2001:1111:0:111:44::/128

  [address]
  address = 2001:1111:0:222:33::/128

  [addrlabel]
  prefix = 2001:1111:0:222:33::/128
  label = 666

  [addrlabel]
  prefix = 2001:1111::/32
  prefix = 666

Background:
When searching for a source IP, the Kernel prefers those that have the same 
label as the destination network. Packets to 2001:1111::/32, which is labeled
with 666, would thus originate from 2001:1111:0:222:33::/128, which also has
the label 666. All other IPv6 targets would have the default address label "0"
and thus be originate with the address 2001:1111:0:111:44::/128 which also has
the default label "0". This is useful to have a static IP for company internal
targets and a temporary random address (-> IPv6 privacy extension) for
everything else.

Current workaround:
Using a service unit that waits for the interface to come up and then executes
/sbin/ip as suggested in
<a href="http://lists.freedesktop.org/archives/systemd-devel/2015-April/030725.html">http://lists.freedesktop.org/archives/systemd-devel/2015-April/030725.html</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>