interfaces: ifctl link for nameserver.sh

Not sure about nameserver.sh name and scope yet so try to
hide it under a link.  We can always change the name later
although having .sh suffix helps us lint the script more easily.
This commit is contained in:
Franco Fichtner 2022-03-11 10:50:04 +01:00
parent 321f3101d9
commit 6446a4ccfa
7 changed files with 16 additions and 19 deletions

1
plist
View File

@ -1724,6 +1724,7 @@
/usr/local/opnsense/www/themes/opnsense/build/images/icon-logo.svg
/usr/local/sbin/carp_service_status
/usr/local/sbin/configctl
/usr/local/sbin/ifctl
/usr/local/sbin/opnsense-beep
/usr/local/sbin/opnsense-importer
/usr/local/sbin/opnsense-installer

View File

@ -2780,15 +2780,15 @@ REQUEST)
for NAMESERVER in \${new_domain_name_servers}; do
ARGS="\${ARGS} -a \${NAMESERVER}"
done
/usr/local/opnsense/scripts/interfaces/nameserver.sh \${ARGS}
/usr/local/sbin/ifctl \${ARGS}
ARGS="-i ${wanif} -6sd \${new_domain_name:+"-a \${new_domain_name}"}"
/usr/local/opnsense/scripts/interfaces/nameserver.sh \${ARGS}
/usr/local/sbin/ifctl \${ARGS}
/usr/local/sbin/configctl -d interface newipv6 {$wanif}
;;
EXIT|RELEASE)
/usr/bin/logger -t dhcp6c "dhcp6c \$REASON on {$wanif} - running newipv6"
/usr/local/opnsense/scripts/interfaces/nameserver.sh -i ${wanif} -6nd
/usr/local/opnsense/scripts/interfaces/nameserver.sh -i ${wanif} -6sd
/usr/local/sbin/ifctl -i ${wanif} -6nd
/usr/local/sbin/ifctl -i ${wanif} -6sd
rm -f /tmp/{$wanif}_pdinfov6
/usr/local/sbin/configctl -d interface newipv6 {$wanif}
;;

View File

@ -220,11 +220,11 @@ add_new_resolv_conf() {
ARGS="${ARGS} -a ${nameserver}"
done
/usr/local/opnsense/scripts/interfaces/nameserver.sh ${ARGS}
/usr/local/sbin/ifctl ${ARGS}
ARGS="-i ${interface} -4sd ${new_domain_name:+"-a ${new_domain_name}"}"
/usr/local/opnsense/scripts/interfaces/nameserver.sh ${ARGS}
/usr/local/sbin/ifctl ${ARGS}
return 0
}

View File

@ -76,14 +76,14 @@ while getopts 46a:di:ns OPT; do
MD="searchdomain"
;;
*)
echo "Unknown option: ${OPT}" >&2
echo "Usage: man ${0##*/}" >&2
exit 1
;;
esac
done
if [ -z "${IF}" ]; then
echo "Missing option: -i" >&2
echo "Usage: man ${0##*/}" >&2
exit 1
fi

View File

@ -20,8 +20,7 @@ if [ "${AF}" = "inet" ]; then
route delete -${AF} default "${GW}"
fi
/usr/local/opnsense/scripts/interfaces/nameserver.sh -i ${IF} -4 -d
/usr/local/sbin/ifctl -ni ${IF} -4 -d
rm -f /tmp/${IF}_router
elif [ "${AF}" = "inet6" ]; then
if [ -s "/tmp/${IF}_defaultgwv6" ]; then
@ -33,15 +32,14 @@ elif [ "${AF}" = "inet6" ]; then
route delete -${AF} default "${GW}"
fi
/usr/local/opnsense/scripts/interfaces/nameserver.sh -i ${IF} -6 -d
rm -f /tmp/${IF}_routerv6
# remove previous SLAAC addresses as the ISP may
# not respond to these in the upcoming session
ifconfig ${IF} | grep -e autoconf -e deprecated | while read FAMILY ADDR MORE; do
ifconfig ${IF} ${FAMILY} ${ADDR} -alias
done
/usr/local/sbin/ifctl -ni ${IF} -6 -d
rm -f /tmp/${IF}_routerv6
fi
/usr/local/sbin/configctl -d dns reload

View File

@ -2,7 +2,6 @@
export PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin
DNS1=
if echo "${6}" | grep -q dns1; then
DNS1="-a $(echo "${6}" | awk '{print $2}')"
@ -20,8 +19,7 @@ if [ "${2}" = "inet" ]; then
rm -f /tmp/${1}_router
fi
/usr/local/opnsense/scripts/interfaces/nameserver.sh -i ${1} -4 -d ${DNS1} ${DNS2}
/usr/local/sbin/ifctl -ni ${1} -4 -d ${DNS1} ${DNS2}
/usr/local/sbin/configctl -d interface newip ${1}
elif [ "${2}" = "inet6" ]; then
if [ -n "${4}" ]; then
@ -31,8 +29,7 @@ elif [ "${2}" = "inet6" ]; then
rm -f /tmp/${1}_routerv6
fi
/usr/local/opnsense/scripts/interfaces/nameserver.sh -i ${1} -6 -d ${DNS1} ${DNS2}
/usr/local/sbin/ifctl -ni ${1} -6 -d ${DNS1} ${DNS2}
/usr/local/sbin/configctl -d interface newipv6 ${1}
fi

1
src/sbin/ifctl.link Normal file
View File

@ -0,0 +1 @@
../opnsense/scripts/interfaces/nameserver.sh