<div dir="ltr">After some further googling around, I finally found some hints to this in the Mellanox Flexboot guide, but to save someone else the same amount of searching, I thought I'd summarize here. <div><br></div><div>The Client ID for the IB interfaces is made up of a prefix (ff:00:00:00:00:00:02:00:00:02:c9:00) combined with the last 8 hex pairs from the hardware address (/sys/class/net/ib0/address). A quick hack to create dnsmasq dhcp-host entries from an IB host (assuming the IB interfaces have already gotten an IP by some other means) is:</div><div><br></div><div><div>#!/bin/bash</div><div>HWADDR=$(</sys/class/net/ib0/address)<br></div><div>PREFIX=ff:00:00:00:00:00:02:00:00:02:c9:00</div><div>SUFFIX=$(echo $HWADDR | sed 's#..:..:..:..:..:..:..:..:..:..:..:..:\(..:..:..:..:..:..:..:..\)#\1#g')</div><div>MACADDR=$(echo $HWADDR | sed 's#..:..:..:..:..:..:..:..:..:..:..:..:\(..:..:..:\)..:..:\(..:..:..\)#\1\2#g')</div><div>IPADDR=$(ip -o addr show ib0 | grep " inet " | sed 's#.*inet \([0-9\.]*\)/.*#\1#g')</div><div>HOSTNAME=$(hostname -s)</div><div>echo "$MACADDR,id:$PREFIX:$SUFFIX,$IPADDR,$HOSTNAME,1d"<br></div></div><div><br></div><div>Below is a rough offering for an additional entry about this in the dnsmasq.conf.example file.</div><div><br></div><div>Thanks again for a great tool,<br></div><div><br></div><div>jbh</div><div><br></div><div><div>--- dnsmasq.conf.example.orig<span class="" style="white-space:pre"> </span>2015-05-26 08:25:15.230230969 +0300</div><div>+++ dnsmasq.conf.example<span class="" style="white-space:pre"> </span>2015-05-26 08:45:31.207683552 +0300</div><div>@@ -251,6 +251,13 @@</div><div> # the IP address 192.168.0.60</div><div> #dhcp-host=id:01:02:02:04,192.168.0.60</div><div> </div><div>+# Always give the Infiniband interface with hardware address </div><div>+# 80:00:00:48:fe:80:00:00:00:00:00:00:f4:52:14:03:00:28:05:81 the </div><div>+# ip address 192.168.0.61. The client id is derived from the prefix</div><div>+# ff:00:00:00:00:00:02:00:00:02:c9:00 and the last 8 pairs of </div><div>+# hex digits of the hardware address.</div><div>+#dhcp-host=id:ff:00:00:00:00:00:02:00:00:02:c9:00:f4:52:14:03:00:28:05:81,192.168.0.61</div><div>+</div><div> # Always give the host with client identifier "marjorie"</div><div> # the IP address 192.168.0.60</div><div> #dhcp-host=id:marjorie,192.168.0.60</div><div>@@ -645,4 +652,4 @@</div><div> #conf-dir=/etc/dnsmasq.d,.bak</div><div> </div><div> # Include all files in a directory which end in .conf</div><div>-#conf-dir=/etc/dnsmasq.d/*.conf</div><div>\ No newline at end of file</div><div>+#conf-dir=/etc/dnsmasq.d/*.conf</div></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, May 25, 2015 at 3:16 PM, John Hanks <span dir="ltr"><<a href="mailto:griznog@gmail.com" target="_blank">griznog@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Moshe,<div><br></div><div>Thank you, that works perfectly. </div><div><br></div><div>jbh</div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, May 25, 2015 at 3:12 PM, Moshe Levi <span dir="ltr"><<a href="mailto:moshele@mellanox.com" target="_blank">moshele@mellanox.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Hi John,<u></u><u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">The Infiniband dhcp is using client –id option as identifier so your host file should be
<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#ffc000">00:11:75:78:d6:7e,id:ff:00:00:00:00:00:02:00:00:02:c9:00:00:11:75:00:00:78:d6:7e</span>,set:pxemenu,192.168.22.1,db711-02-1,1d<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Let me know if that helps.
<u></u><u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Thanks,<u></u><u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"> Moshe Levi<u></u><u></u></span></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><b><u></u> <u></u></b></p>
<p class="MsoNormal"><b><u></u> <u></u></b></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Dnsmasq-discuss [mailto:<a href="mailto:dnsmasq-discuss-bounces@lists.thekelleys.org.uk" target="_blank">dnsmasq-discuss-bounces@lists.thekelleys.org.uk</a>]
<b>On Behalf Of </b>John Hanks<br>
<b>Sent:</b> Monday, May 25, 2015 2:26 PM<br>
<b>To:</b> <a href="mailto:dnsmasq-discuss@lists.thekelleys.org.uk" target="_blank">dnsmasq-discuss@lists.thekelleys.org.uk</a><br>
<b>Subject:</b> [Dnsmasq-discuss] Infiniband IBoIP support<u></u><u></u></span></p><div><div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">Hello,<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">I'm trying to hand out addresses to my Infiniband adapters using dnsmasq, but doing the naive configuration doesn't seem to work. In my dhcp-hostsfile I have this entry:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">ff:00:00:00:00:00:02:00:00:02:c9:00:00:11:75:00:00:78:d6:7e,set:pxemenu,192.168.22.1,db711-02-1,1d<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">When I attempt to bring up the ib0 interface on this node, I see this in the dnsmasq log:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">717987360 available DHCP subnet: <a href="http://192.168.16.0/255.255.240.0" target="_blank">
192.168.16.0/255.255.240.0</a><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">717987360 DHCPDISCOVER(ib0) ff:00:00:00:00:00:02:00:00:02:c9:00:00:11:75:00:00:78:d6:7e ignored<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">717987360 available DHCP subnet: <a href="http://192.168.16.0/255.255.240.0" target="_blank">
192.168.16.0/255.255.240.0</a><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">717987360 DHCPDISCOVER(ib0) ff:00:00:00:00:00:02:00:00:02:c9:00:00:11:75:00:00:78:d6:7e ignored<u></u><u></u></p>
</div>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">How do I get dnsmasq to hand out addresses to these requests? My searching hasn't turned up much other than some rpms for a mellanox version of dnsmasq, which I haven't yet tried as I am hoping to just use a vanilla DNSmasq for this project.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Thanks,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">jbh<u></u><u></u></p>
</div>
</div>
</div></div></div>
</div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>