≡ Menu

Configuring Linux Static DHCP Clients by Sending Host Name

Q. My DHCP server configured to assign static IPs to few Debian / Ubuntu Linux boxes using hostnames. My Windows 2000 and XP client computer sends hostname automatically. How do I send my hostname under Linux using dhcp client?

A. By default, the DHCP server requests the subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers and host-name options. DHCP client configuration allows you to set a hostname using send host-name "hostname" parameter.

Linux dhcpclient configuration - dhclient.conf

dhclient.conf is a configuration file for DHCP client under Linux:

  • Debian / Ubuntu Linux - /etc/dhcp3/dhclient.conf
  • RHEL / Fedora / CentOS Linux - /etc/sysconfig/network-scripts/ifcfg-eth0 (for 1st DHCP network interface)
WARNING! These examples requires correct hostname.

Debian / Ubuntu Linux DHCP Client Configuration

Open configuration file, enter:
$ sudo vi /etc/dhcp3/dhclient.conf
Set hostname as follows:
send host-name "vivek-laptop";
Save and close the file. Test new settings, enter:
$ sudo dhclient eth0
$ sudo dhclient interface-name

RHEL / CentOS / Fedora Linux DHCP Client Configuration

Open configuration file, enter:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
Append hostname, enter:
DHCP_HOSTNAME=vivek-laptop
Save and close the file. Restart network service:
# service network restart
Please refer to dhclient.conf man page for more information, enter:
$ man dhclient.conf

Tweet itFacebook itGoogle+ itPDF itFound an error/typo on this page?

{ 4 comments… add one }

  • Gurce December 5, 2012, 9:47 pm

    Just some additional points when I tried this on Ubuntu 12.10 Server. When editing the “dhclient.conf” file, I also had to comment out the the last two lines (shown below) for the technique above to work:

    send host-name “mypreferredhostname”

    #send host-name = gethostname();

    #send fqdn.fqdn = gethostname();

  • Mr Xhark March 21, 2013, 2:58 pm

    For CentOS/Redhat 5/6, edit /etc/sysconfig/network file
    and put :

    HOSTNAME=myhostnamehere

    and finally
    # /etc/init.d/network restart

  • vm-lin April 20, 2013, 3:36 am

    i set static ip on ubuntu 12.(client)
    how to send hostname to dns server automatically
    thanks

  • xcomptuer August 19, 2013, 2:30 am

    @Mr Xhark

    In CentOS
    /etc/init.d/network [restart/start] or /sbin/service network [start/restart] does not send the hostname when requesting ip, via dhcp, if the variable DHCP_HOSTNAME is not defined in /etc/sysconfig/network-scripts/ifcfg-ethX (where X is a number)

    /sbin/service NetworkManager [restart/start] does send the hostname, even if not defined in ifcfg-ethX.

Leave a Comment