summaryrefslogtreecommitdiffstats
path: root/modules.d
diff options
context:
space:
mode:
Diffstat (limited to 'modules.d')
-rwxr-xr-xmodules.d/slx-network/scripts/udhcpc-trigger.stage38
1 files changed, 7 insertions, 1 deletions
diff --git a/modules.d/slx-network/scripts/udhcpc-trigger.stage3 b/modules.d/slx-network/scripts/udhcpc-trigger.stage3
index 402670d0..5833c0b4 100755
--- a/modules.d/slx-network/scripts/udhcpc-trigger.stage3
+++ b/modules.d/slx-network/scripts/udhcpc-trigger.stage3
@@ -121,9 +121,14 @@ fi
if [ -n "$hostname" ]; then
if [ -n "$SLX_PXE_HOSTNAME" ] && [ "$hostname" != "$SLX_PXE_HOSTNAME" ]; then
echo "KCL and DHCP hostnames differ... assuming some KCL hack."
- echo "Prefering KCL: '$SLX_PXE_HOSTNAME'."
+ echo " -> Prefering KCL: '$SLX_PXE_HOSTNAME'."
hostname="$SLX_PXE_HOSTNAME"
fi
+ if [ -n "$fqdn_hostname" ] && [ "$hostname" != "$fqdn_hostname" ]; then
+ echo "DHCP hostname differs from DNS hostname."
+ echo " -> Prefering DNS: '$fqdn_hostname'."
+ hostname="$fqdn_hostname"
+ fi
else
echo "No hostname specified in DHCP, checking DNS record."
# We ignore the corner case where DHCP didn't supply a hostname but
@@ -140,6 +145,7 @@ else
else
# no fallback hostname from DNS, use IP address
hostname="noname-${ip//./-}"
+ fqdn="${hostname}.invalid"
fi
if [ -n "$domain" ]; then
fqdn="${hostname}.${domain%% *}" # in case domain is a list