<div dir="ltr"><div class="gmail_default" style="font-family:"times new roman",serif">I have a setup roughly like the following ASCII-art diagram (numbers and number of VLANs simplified greatly):</div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default"><font face="monospace, monospace">|===== VLAN 1 : <a href="http://10.0.1.0/24">10.0.1.0/24</a>  ======|    |============== VLAN 2: <a href="http://10.0.2.0/24">10.0.2.0/24</a> ==============|</font></div><div class="gmail_default"><font face="monospace, monospace">|                                  |    |                                                 |</font></div><div class="gmail_default"><font face="monospace, monospace">|   |------------------|        |-------------|                                           |</font></div><div class="gmail_default"><font face="monospace, monospace">|   |     admin host   |        |  gateway    |                                           |</font></div><div class="gmail_default"><font face="monospace, monospace">|   |    <a href="http://10.0.1.2/24">10.0.1.2/24</a>   |        | <a href="http://10.0.1.1/24">10.0.1.1/24</a> |       |----------------------------|      |</font></div><div class="gmail_default"><font face="monospace, monospace">|   |------------------|        | <a href="http://10.0.2.1/24">10.0.2.1/24</a> |       |   client host              |      |</font></div><div class="gmail_default"><font face="monospace, monospace">|                               | etc         |       | should get static lease of |      |</font></div><div class="gmail_default"><font face="monospace, monospace">|                               |-------------|       | 10.0.2.x                   |      |</font></div><div class="gmail_default"><font face="monospace, monospace">|                                  |    |             |----------------------------|      |</font></div><div class="gmail_default"><font face="monospace, monospace">|==================================|    |=================================================|</font></div><div><br></div><div><div class="gmail_default" style="font-family:"times new roman",serif">​We have multiple VLANs each of which has its own subnet. They're bridged by a single multi-homed gateway (actually, an HA pair of them, but whatever). The gateway is running dhrelay3 and forwarding DHCP requests to the admin host in the administrative VLAN, which is running dnsmasq with a database of addresses to hand out.​ I would prefer to be able to avoid having to put that database on the gateway and have a bunch of dynamic host configuration on a router. The admin host is single-homed.</div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default" style="font-family:"times new roman",serif">The dnsmasq config looks like the following (I've removed most of the entries and config to simplify the question):</div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default"><font face="monospace, monospace">port = 0</font></div><div class="gmail_default"><div class="gmail_default"><font face="monospace, monospace">dhcp-range=10.0.1.0,static,255.255.255.0</font></div><div class="gmail_default"><font face="monospace, monospace">dhcp-range=10.0.2.0,static,255.255.255.0</font></div><div class="gmail_default"><font face="monospace, monospace">dhcp-option=6,10.0.2.3<br></font></div><div class="gmail_default"><font face="monospace, monospace">dhcp-option=3,10.0.2.1<br></font></div><div class="gmail_default"><font face="monospace, monospace">dhcp-host=00:aa:bb:cc:dd:ee,10.2.0.86</font></div></div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default" style="font-family:"times new roman",serif">Unfortunately, dnsmasq seems to refuse to hand out addresses from a non-directly-connected subnet. When the requests come in from 00:aa:bb:cc:dd:ee, I just get the following logged:</div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default"><div class="gmail_default"><font face="monospace, monospace">dnsmasq: started, version 2.76 DNS disabled</font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq: compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth no-DNSSEC loop-detect inotify</font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: DHCP, static leases only on 10.0.1.0, lease time 1h</font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: DHCP, static leases only on 10.0.2.0, lease time 1h</font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: DHCP, static leases only on 10.0.3.0, lease time 1h</font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: 1302931552 available DHCP subnet: <a href="http://10.0.1.0/255.255.255.0">10.0.1.0/255.255.255.0</a></font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: 1302931552 DHCPDISCOVER(bond0) 00:aa:bb:cc:dd:ee ignored</font></div><div class="gmail_default"><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: 1302931552 available DHCP subnet: <a href="http://10.0.1.0/255.255.255.0">10.0.1.0/255.255.255.0</a></font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: 1302931552 DHCPDISCOVER(bond0) 00:aa:bb:cc:dd:ee ignored</font></div><div class="gmail_default"><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: 4279941416 available DHCP subnet: <a href="http://10.0.1.0/255.255.255.0">10.0.1.0/255.255.255.0</a></font></div><div class="gmail_default"><font face="monospace, monospace">dnsmasq-dhcp: 4279941416 DHCPDISCOVER(bond0) 00:aa:bb:cc:dd:ee ignored</font></div></div></div></div><br></div><div><div class="gmail_default" style="font-family:"times new roman",serif">​Tcpdump of the packets being received by ​the host look roughly like the following:</div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default"><div class="gmail_default"><font face="monospace, monospace">22:23:57.987953 IP (tos 0x0, ttl 64, id 48608, offset 0, flags [DF], proto UDP (17), length 328)</font></div><div class="gmail_default"><font face="monospace, monospace">    10.0.1.1.bootps > admin.bootps: BOOTP/DHCP, Request from 00:aa:bb:cc:dd:ee (oui Unknown), length 300, hops 1, xid 0x4ec4ba20, secs 24, Flags [none]</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre"> </span>  Gateway-IP 10.0.1.1</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">  </span>  Client-Ethernet-Address 00:aa:bb:cc:dd:ee (oui Unknown)</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">      </span>  Vendor-rfc1048 Extensions</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">    </span>    Magic Cookie 0x63825363</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">   </span>    DHCP-Message Option 53, length 1: Discover</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">        </span>    Parameter-Request Option 55, length 13:</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">   </span>      Subnet-Mask, BR, Time-Zone, Classless-Static-Route</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">     </span>      Domain-Name, Domain-Name-Server, Hostname, YD</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">  </span>      YS, NTP, MTU, Option 119</font></div><div class="gmail_default"><font face="monospace, monospace"><span class="gmail-Apple-tab-span" style="white-space:pre">       </span>      Default-Gateway</font></div></div></div><div><br></div><div><div class="gmail_default" style="font-family:"times new roman",serif">​I would like for the admin host (<a href="http://10.0.1.1/24" target="_blank">10.0.1.1/24</a>) to be able to hand out IP addresses to hosts in any VLAN without having to multi-home it. Is this just impossible in dnsmasq, or is there some magic option that will tell it to hand out IP addresses on a non-connected subnet when the request goes through a relay?</div><div class="gmail_default" style="font-family:"times new roman",serif"><br></div><div class="gmail_default" style="font-family:"times new roman",serif">I've attempted to go through the source code, but even once I figured out the idiosyncratic indentation style of rfc2131.c, I still can't figure out precisely where the logic to generate this message lives.</div><br></div><div><div class="gmail_default" style="font-family:"times new roman",serif">​Thanks for any help y'all can provide.​</div></div>-- <br><div><div dir="ltr"><font face="times new roman, serif">James Brown</font><div><font face="times new roman, serif"><div class="gmail_default" style="font-family:"times new roman",serif;display:inline">​Intermittent Network ​</div>Engineer</font></div></div></div>
</div>