Previously I managed my (all-linux) LAN DNS needs by manually updating host files on every machine. This is a giant pain, but I've never run a router that offered to handle it for me semi-automatically (at least in a way that actually worked). I recently moved all my network services over to a Zentyal machine with the aim of correcting problems like that.
I've been able to get fixed IP addresses based on MAC address working. I also have a few clients in that list which had trouble actually picking up an address via DHCP (mostly wireless APs), so I had to set their addresses manually in the client config (but they're still using the same fixed address that DHCP would assign them).
I want to be able to refer to all these machines directly by name from every client, just as I could with a local host file. I don't want to have to type a domain every time. I want this to work whether it's a fixed address handed out by DHCP or one of the ones I had to work around manually. I don't have a problem manually managing the list of all clients & IPs, as long as I only have to do it in one place.
My results so far:
If I create a standard domain (non-dynamic) and create a few hostnames under it, I can't actually resolve those hostnames from any of the clients. It doesn't seem to work at all. For example, new domain "hartman" has hosts "mike" and "steve". I connect to the network with client "bob", get my IP and see that /etc/resolv.conf properly points to the Zentyal box. But pinging "mike", "mike.hartman", "steve" and "steve.hartman" all fail with "unknown host". I can ping their IP addresses fine though.
If I create a dynamic domain (create empty domain, go to dhcp->dynamic dns options, enable it and select that new domain) those machines are now reachable using "mike.hartman" and "steve.hartman", but still not by "mike" or "steve". This is despite the fact that I enter "hartman" as the search domain everywhere I can (dhcp->common options->search domain, network->dns->search domain and I could have sworn one other place that I can't find now).
I've restarted my laptop's connection to the network several times in case it was caching something / not picking up the search domain. Although it seems like one of those search domain settings should be instructions to Zentyal itself on how to look up incoming unqualified hostname requests, rather than just telling Zentyal what search domain to pass along to the clients. Because ideally you don't want to depend on the clients behaving according to your instructions when you have total control over what the DNS returns to them anyway.
So here's my setup:
Zentyal 2.0.21
Modules (a lot installed but plenty not actually being used yet)
Network (running)
Firewall (running)
Antivirus (running)
Apache (running)
VoIP (running)
Certificate Authority (not created)
DHCP (running)
DNS (running)
Events (running)
IDS (running)
Logs (running)
Monitor (running)
VPN (running)
Printer Sharing (running)
File Sharing (running)
HTTP Proxy (disabled)
Traffic Shaping (disabled)
User Corner (running)
Users and Groups (running)
Network->DNS
Domain Name Server Resolver List
127.0.0.1
4.2.2.2
4.2.2.3
Search Domain
hartman
Objects->Objects List
"fixed"
mike - 192.168.1.20 - XX:XX:XX:XX:XX:XX
steve - 192.168.1.21 - YY:YY:YY:YY:YY:YY
bob - 192.168.1.22 - ZZ:ZZ:ZZ:ZZ:ZZ:ZZ
wifia - 192.168.1.30 - AA:AA:AA:AA:AA:AA (wifia doesn't like to get its address from DHCP so it's also hardcoded on the client)
wifib - 192.168.1.31 - BB:BB:BB:BB:BB:BB (wifib doesn't like to get its address from DHCP so it's also hardcoded on the client)
DHCP->Service Configuration->Common Options
Default Gateway - Zentyal
Search Domain - Zentyal domain - Hartman
Primary nameserver - local Zentyal DNS
Secondary nameserver - (blank)
NTP Server - none
WINS Server - none
DHCP->Service Configuration->Dynamic DNS Options
Enabled - yes
Dynamic domain - hartman
Static domain - same as dynamic domain
DHCP->Ranges
"dynamic" - from 192.168.1.100 to 192.168.1.254
DHCP->Fixed Addresses
"fixed"
DNS->List of Domains
"hartman"
hostnames - "ns" - 127.0.0.1
Dynamic? - yes
I can't think of any other settings that should affect this. Any suggestions? Why aren't the search domain settings being properly applied? Why don't static domains seem to work at all?