diff --git a/infra/image/system-service/fixipaip.sh b/infra/image/system-service/fixipaip.sh index 599aa15a2b795aa07bc63303409bfdff1f141c8e..2330b016c9b030a58e63be05835d5928d0a79b85 100755 --- a/infra/image/system-service/fixipaip.sh +++ b/infra/image/system-service/fixipaip.sh @@ -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 @@ -77,6 +82,8 @@ for zone in ${ZONES}; do fi done +ipa dnsserver-mod "${HOSTNAME}" --forwarder="${FORWARDER}" + kdestroy -c "${KRB5CCNAME}" -A exit 0 diff --git a/infra/image/system-service/fixnet.sh b/infra/image/system-service/fixnet.sh index e4ee3dff69013a2f40bc91da31546b4d628a4067..0bf6d0369a243bf4b6be26e549d758a78cd832fb 100755 --- a/infra/image/system-service/fixnet.sh +++ b/infra/image/system-service/fixnet.sh @@ -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"