<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Aptos;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:12.0pt;
        font-family:"Aptos",sans-serif;
        mso-ligatures:standardcontextual;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#467886;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Aptos",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-AU" link="#467886" vlink="#96607D" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">I have two systems where I need them to assign link-local addresses in a 169.254.4/24 subnet, regardless of any other addresses configured. I’m using a /24 subnet because I have multiple interfaces on the system that require link-local
 addresses; I was placing them in their own subnets. <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">From <a href="https://www.freedesktop.org/software/systemd/man/latest/systemd.network.html#:~:text=If%20an%20IPv4%20link%2Dlocal%20address%20(169.254.0.0/16)%20is%20specified%2C%20IPv4%20Address%20Conflict%20Detection%20(RFC%205227)%20is%20enabled%20for%20the%20address.">
this comment</a> in the man page, I was expecting I could configure the interface address identically on both systems and leave it to collision detection to pick an appropriate available address.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The 1<sup>st</sup> interface assigns its link-local address (169.254.4.2/24). Unfortunately, the next interface to start doesn’t assign any link-local address. I’ve tried to get more debug information by increasing log-level to debug, but
 I get no indications around the address assignments.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">As an experiment, I change the 2<sup>nd</sup> system to use a different host address in the same subnet, and it gets assigned correctly.  I guess that collision detection is preventing the address assignment.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">How do I achieve this or how can I get more debug information?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The relevant snippet from the network config file is:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">[Network]<o:p></o:p></p>
<p class="MsoNormal">Address=169.254.4.2/24<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Full contents of the network configuration follows:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">$ networkctl cat 10-eno0.network<o:p></o:p></p>
<p class="MsoNormal"># /etc/systemd/network/10-eno0.network<o:p></o:p></p>
<p class="MsoNormal">[Match]<o:p></o:p></p>
<p class="MsoNormal">KernelCommandLine=!nfsroot<o:p></o:p></p>
<p class="MsoNormal">Name=eno0<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">[DHCP]<o:p></o:p></p>
<p class="MsoNormal">ClientIdentifier=mac<o:p></o:p></p>
<p class="MsoNormal">RouteMetric=10<o:p></o:p></p>
<p class="MsoNormal">UseDomains=yes<o:p></o:p></p>
<p class="MsoNormal">UseHostname=yes<o:p></o:p></p>
<p class="MsoNormal">UseMTU=yes<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">[IPv6AcceptRA]<o:p></o:p></p>
<p class="MsoNormal">UseRedirect=no<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">[Link]<o:p></o:p></p>
<p class="MsoNormal">RequiredForOnline=no<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">[Network]<o:p></o:p></p>
<p class="MsoNormal">DHCP=yes<o:p></o:p></p>
<p class="MsoNormal">Domains=labs.company.net<o:p></o:p></p>
<p class="MsoNormal">NTP=10.10.135.123<o:p></o:p></p>
<p class="MsoNormal"># LinkLocalAddressing=yes<o:p></o:p></p>
<p class="MsoNormal"># IPv4LLStartAddress=169.254.1.1<o:p></o:p></p>
<p class="MsoNormal">Address=169.254.4.2/24<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"># /usr/lib/systemd/network/10-eno0.network.d/10-network.conf<o:p></o:p></p>
<p class="MsoNormal">[Network]<o:p></o:p></p>
<p class="MsoNormal">MulticastDNS=yes<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Regards,<o:p></o:p></p>
<p class="MsoNormal">Matt.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>