[Dnsmasq-discuss] read /etc/hosts if DNS disabled

Matus UHLAR - fantomas uhlar at fantomas.sk
Mon Jun 8 13:26:00 BST 2020


Hello,

>> > > > On Fri, May 15, 2020 at 07:53:50PM +0200, Matus UHLAR - fantomas wrote:
>> > > > > I have problems configuring static DHCP using /etc/hosts and /etc/ethers.
>> > > > > It seems that dnsmasq is ignoring /etc/hosts when dns server is disabled
>> > > > > via "-p 0" option.
>> > > > >
>> > > > > Can anyone confirm?
>> > > > > If I'm right, is this bug or a feature?
>> > >
>> > > On 21.05.20 15:03, Geert Stappers wrote:
>> > > > Advice: Describe "the problem" better.

>> > On Thu, May 21, 2020 at 03:35:24PM +0200, Matus UHLAR - fantomas wrote:
>> > > the problem is that DHCP clients listed in /etc/ethers will not be given IP
>> > > addreses specified in /etc/hosts when dnsmasq does not run DNS service
>> > > (-p 0), because /etc/hosts is not read in that case.
>> > >
>> > > the workaround is to run DNS at different port (e.g.  -p 54), so dnsmasq
>> > > reads /etc/hosts and provides IPS configured there do clients from
>> > > /etc/ethers, but I believe /etc/hosts should be read even without DNS,
>> > > unless explicitly disabled.
>>
>> On 21.05.20 18:33, Geert Stappers wrote:
>> > Acknowledge on version 2 of "problem description".
>> >
>> > I partially understand what the expectations are.

>On Thu, May 21, 2020 at 08:42:07PM +0200, Matus UHLAR - fantomas wrote:
>> a litle background:
>>
>> I used dnsmasq on openwrt router using /etc/ethers for machine<>ethernet
>> address conversion and /etc/hosts for host to IP conversion (for both DHCP
>> and DNS).
>>
>> I bought new router with turris (openwrt clone) which uses knot-resolver
>> (which uses /etc/hosts for local DNS) and runs dnsmasq only as DHCP server
>>
>> The problem is that while in this scenario dnsmasq does use the ethers table
>> (I can see that in reservations info), but it does not use hosts table to
>> assign proper IP addresses for those hosts.
>>
>> as a workaround I set dnsmasq to run DNS on another port (I'm thinking on
>> disabling knot-resolvet) so while the DNS is not used, correct IP addresses
>> are assigned.
>>
>> I'd like dnsmasq to read /etc/hosts table for DHCP reservations even when
>> DNS is not used.
>>
>> ... I know I can work around reservations, but I find /etc/ethers and
>> /etc/hosts good standards to use

On 06.06.20 15:52, Geert Stappers wrote:
>For what it worth, dnsmasq.conf.example has
><screenshot>
># If this line is uncommented, dnsmasq will read /etc/ethers and act
># on the ethernet-address/IP pairs found there just as if they had
># been given as --dhcp-host options. Useful if you keep
># MAC-address/host mappings there for other purposes.
>#read-ethers
></screenshot>
>
>I suggest to play with a dnsmasq.conf that has
><screenshot>
># dnsmasq should read /etc/ethers and act on the ethernet-address/IP pairs
># found there just as if they had been given as --dhcp-host options.
># Used for keeping MAC-address/host mappings there for other purposes.
>read-ethers
></screenshot>

I do have "read-ethers" set in config file, and /etc/ethers is loaded (host
names seen in logs are those from ethers, not client provided names).

Unfortunately, when "-p 0" option is used (so dnsmasq does not provide DNS
service), the /etc/hosts seems not to be read, so hosts listed in
/etc/ethers will get random IP addresses from dynamic pool assigned, instead
of static addresses listed in /etc/hosts.

I was able to work around this by using random port (53 is used by different
software on the router), but I was wondering if my observation is correct,
and if so, if it is known, expected/wanted behaviour.

I am not a programmer (although I do understand C a bit), so trying to RTFS
didn't help me much. I'll try again.

P.S.
Thanks for the patience. 
Of course you don't owe me anything - please accept my apology if any of my
mails indicated that. 

-- 
Matus UHLAR - fantomas, uhlar at fantomas.sk ; http://www.fantomas.sk/
Warning: I wish NOT to receive e-mail advertising to this address.
Varovanie: na tuto adresu chcem NEDOSTAVAT akukolvek reklamnu postu.
Windows found: (R)emove, (E)rase, (D)elete



More information about the Dnsmasq-discuss mailing list