The TOK_NEXT_SERVER case in parse_statement() calls parse_ip_addr_or_hostname(), so I think the next-server option wants a host name, not a domain name:
Index: dhcpd.conf.5 =================================================================== RCS file: /var/cvs/src/usr.sbin/dhcpd/dhcpd.conf.5,v retrieving revision 1.17 diff -u -p -U7 -r1.17 dhcpd.conf.5 --- dhcpd.conf.5 11 Jun 2015 12:48:32 -0000 1.17 +++ dhcpd.conf.5 10 Jan 2017 15:07:27 -0000 @@ -645,15 +645,15 @@ statement The .Ic next-server statement is used to specify the host address of the server from which the initial boot file (specified in the .Ic filename statement) is to be loaded. .Ar server-name -should be a numeric IP address or a domain name. +should be a numeric IP address or a host name. If no .Ic next-server parameter applies to a given client, the DHCP server's IP address is used. .Pp The .Ic fixed-address statement