Comprehensive Guide to DHCP Client OS Support for Option 119 (Domain Suffix Search List)


2 views

DHCP Option 119, the Domain Suffix Search List option, allows DHCP servers to provide clients with a prioritized list of domain suffixes for DNS resolution. This is particularly useful in enterprise environments where multiple internal domains exist.

  • Windows: Supported since Windows 2000 (all subsequent versions including Win10/11 and Server editions)
  • Linux:
    • Distros using dhclient (v3.0+): Ubuntu, Debian, RHEL/CentOS 7+
    • Systemd-networkd (v230+): Modern Arch, Fedora, openSUSE
  • macOS: Supported since Mac OS X 10.2 (Jaguar)
  • BSD: FreeBSD 4.3+, OpenBSD 3.4+, NetBSD 2.0+
  • Mobile: Android 4.0+, iOS 3.0+

For Linux systems using dhclient, check the lease file:

cat /var/lib/dhcp/dhclient.leases | grep domain-search

Windows systems can verify with:

ipconfig /all | findstr "Suffix"

ISC DHCP Server configuration:

option domain-search "corp.example.com", "example.com";

Windows Server DHCP configuration (PowerShell):

Set-DhcpServerv4OptionValue -OptionId 119 -Value "corp.example.com,example.com"
  • Ensure clients request the option: Check for request domain-search in dhclient.conf
  • Verify option length: Maximum of 255 bytes total for all domains
  • Check for DNS resolution issues after implementation

For Linux systems that don't natively process Option 119, you can use a dhclient exit hook:

#!/bin/bash
if [ -n "$new_domain_search" ]; then
  echo "search $new_domain_search" > /etc/resolv.conf
fi

DHCP Option 119 (Domain Suffix Search List) allows DHCP servers to provide clients with a prioritized list of domain suffixes for DNS resolution. This eliminates the need for manual domain suffix configuration and enables seamless network access across multiple domains. The option's format consists of a compressed list of domain names using name compression as specified in RFC 1035.

Early implementations showed limited support across operating systems. Windows clients prior to Windows 7 and Linux distributions before 2009 typically lacked native support, requiring manual workarounds or third-party DHCP clients.

Windows Family

Fully supported in:

  • Windows 7 and later (including Server 2008 R2+)
  • Windows 10/11 all versions
  • Windows Server 2012 R2 through 2022

Linux Distributions

Support varies by DHCP client implementation:

# Example dhclient.conf configuration for Option 119
interface "eth0" {
    request domain-search;
    require domain-search;
}

Supported in:

  • ISC dhclient 4.1+ (common in RHEL/CentOS 6+, Ubuntu 12.04+)
  • systemd-networkd 230+ (default in recent Debian/Ubuntu)
  • NetworkManager 1.4+ with dhclient backend

macOS and BSD Variants

  • macOS 10.6 (Snow Leopard) and later
  • FreeBSD 8.0+ with ISC dhclient
  • OpenBSD 5.5+ using dhcpleased

Mobile Platforms

  • Android 4.0+ (implementation varies by vendor)
  • iOS 5.0+

Windows Verification

PS C:\> Get-DnsClient | Select-Object ConnectionSpecificSuffixSearchList

Linux Verification

$ cat /etc/resolv.conf
# Generated by dhclient
search example.com corp.example.com

When implementing Option 119 in mixed environments:

  • Test legacy client fallback behavior
  • Monitor DNS query patterns after deployment
  • Consider combining with Option 15 (Domain Name) for backward compatibility

Common issues include:

  • Option 119 being ignored due to client misconfiguration
  • Conflicts with manually configured search domains
  • Maximum search list length limitations (typically 256 bytes total)

ISC DHCP Server

option domain-search code 119 = domain-list;
option domain-search "example.com", "corp.example.com";

Windows DHCP Server

Configure through DHCP Manager under Server Options:

  1. Right-click "Server Options"
  2. Select "Configure Options"
  3. Check option 119 and enter domain suffixes

Emerging implementations include:

  • DHCPv6 Option 24 support for IPv6-only networks
  • Cloud-init integration for cloud instances
  • Container runtime support in Kubernetes CNI plugins