I have been struggling with this for a few days now, and am really at my wit's end. Our infrastructure is very heterogeneous with a mix of hardware devices and virtual machines running a variety of operating systems. This issue is present in situations where "fixing it on the client" is simply not an option, so please, no answers in that vein.
The TL;DR is that I cannot figure out how to simply enter a DHCP reservation with a MAC, IP, & hostname that is "static" for lack of a better word. Nothing I do will allow the DHCP server to create the DNS record while also preventing the DHCP client from changing it.
For example, our fiber channel array controllers have dual NICs for redundancy, with auto-generated hostnames that cannot be manually configured. In our old setup, I simply made DHCP reservations for their MAC addresses with host names such as "array1ctrl1" and "array1ctrl2". The name & IP were automatically entered into DNS with a matching address when the DHCP reservation was created.
The Microsoft DHCP server works differently. It does not create a matching DNS record until the DHCP client requests the lease, and when that happens, it updates both the reservation & DNS with the (unwanted) client supplied hostname.
There are similar issues with other bits of hardware and software that all boil down to the same overall issue -- the seeming inability to create a DHCP reservation with a specified hostname and have it remain as entered regardless of how the DHCP client identifies itself.
After a lot of trial and error, and as much google searching as I was able to stomach, it's starting to appear that this is simply impossible to do in a MS DHCP server. If that's the case, so be it, but I'd like to know for certain if so.
Thanks in advance!