We log search terms to improve our documentation. For more information, read our Privacy Policy.

Cloud-Hosted Hostname Solution

Last modified: 2026 July 8


Overview

To configure VPS deployments, many cloud hosting providers use the dhclient script, which includes the configuration of the instance’s hostname.

The dhclient script may not preserve the locally-configured hostname, so hosting providers use scripts to work around this issue. For example, the Google Cloud Platform™ service uses the google_set_hostname script.

The workaround scripts may interfere with WHM’s Change Hostname feature (WHM » Home » Networking Setup » Change Hostname), which causes hostname configuration issues and a locked cPanel & WHM license.

The solution

To resolve this issue, you must create a dhclient exit hook script to set the hostname properly.

Create the zzz-set-hostname file with the following contents in the /etc/dhcp/dhclient-exit-hooks.d/ directory, where hostname.example.com represents your server’s new hostname:

#!/bin/sh
hostname hostname.example.com
/scripts/fixetchosts

You can also create the file with the following command, where hostname.example.com represents your server’s new hostname:

mkdir -p /etc/dhcp/dhclient-exit-hooks.d/ && echo -ne '#!/bin/sh\nhostname hostname.example.com\n/scripts/fixetchosts\n' > /etc/dhcp/dhclient-exit-hooks.d/zzz-set-hostname && chmod +x /etc/dhcp/dhclient-exit-hooks.d/zzz-set-hostname
Warning:

Make certain that you set the zzz-set-hostname file with 0755 permissions. If you don’t perform this action, the script won’t run.

Additional Documentation