#!/bin/bash IP="$(ip a show scope global \ | grep inet \ | head -1 \ | sed -r 's#.*inet ([0-9]+.[0-9]+.[0-9]+.[0-9]+.)/.*#\1#')" HOSTNAME="$(dig +noall +answer +short -x "$IP" \ | head -1 \ | sed 's/\.$//')" # Set hostname and renew DHCP lease sudo hostnamectl set-hostname "${HOSTNAME}" sudo dhclient -r sleep 1 sudo dhclient