Skip to content

Commit

Permalink
infra/image system-services: Fix DNS forwarder
Browse files Browse the repository at this point in the history
The DNS forwarder is set while deploying the IPA server. This forwarder
might not be correct later on.

The old /etc/resolv.conf is copied to /etc/resolv.conf.fixnet by the
fixnet service and later on the fixipaip service is trying to get the
nameserver from the copied file. If the retrieval failed of if the
namesever is 127.0.0.1, then the nameserver will be set to 8.8.8.8.

After fixing the IP addresses for the forward and reverse zone, also the
forwarder is set for the dnsserver "${HOSTNAME}".
  • Loading branch information
t-woerner committed Aug 7, 2024
1 parent 88dc4c6 commit e2bdbee
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 2 deletions.
9 changes: 8 additions & 1 deletion infra/image/system-service/fixipaip.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,16 @@ if [ -z "${PTR}" ] || [ -n "${PTR//[0-9]}" ]; then
echo "ERROR: Failed to get PTR from IPv4 address: '${PTR}'"
exit 1
fi
FORWARDER=$(grep -s -m 1 ^nameserver /etc/resolv.conf.fixnet | cut -d" " -f 2)
if [ -z "${FORWARDER}" ] || [ "${FORWARDER}" == "127.0.0.1" ]; then
FORWARDER="8.8.8.8"
fi

echo "Fix IPA IP:"
echo "Fix IPA:"
echo " HOSTNAME: '${HOSTNAME}'"
echo " IP: '${IP}'"
echo " PTR: '${PTR}'"
echo " FORWARDER: '${FORWARDER}'"

if ! echo "SomeADMINpassword" | kinit -c "${KRB5CCNAME}"
then
Expand Down Expand Up @@ -77,6 +82,8 @@ for zone in ${ZONES}; do
fi
done

ipa dnsserver-mod "${HOSTNAME}" --forwarder="${FORWARDER}"

kdestroy -c "${KRB5CCNAME}" -A

exit 0
6 changes: 5 additions & 1 deletion infra/image/system-service/fixnet.sh
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,11 @@ else
echo -e "$IP\t${HOSTNAME} ${HOSTNAME%%.*}" >> /etc/hosts
fi

echo "nameserver 127.0.0.1" > /etc/resolv.conf
cp -a /etc/resolv.conf /etc/resolv.conf.fixnet
cat > /etc/resolv.conf <<EOF
search ${HOSTNAME#*.}
nameserver 127.0.0.1
EOF

echo "/etc/hosts:"
cat "/etc/hosts"
Expand Down

0 comments on commit e2bdbee

Please sign in to comment.