aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/network/ipv6/ds-lite/Makefile4
-rwxr-xr-xpackage/network/ipv6/ds-lite/files/dslite.sh11
2 files changed, 13 insertions, 2 deletions
diff --git a/package/network/ipv6/ds-lite/Makefile b/package/network/ipv6/ds-lite/Makefile
index 4a3d1b38cd..79b49feec3 100644
--- a/package/network/ipv6/ds-lite/Makefile
+++ b/package/network/ipv6/ds-lite/Makefile
@@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ds-lite
-PKG_VERSION:=4
+PKG_VERSION:=5
PKG_RELEASE:=1
PKG_LICENSE:=GPL-2.0
@@ -17,7 +17,7 @@ include $(INCLUDE_DIR)/package.mk
define Package/ds-lite
SECTION:=net
CATEGORY:=Network
- DEPENDS:=+kmod-ipv6 +kmod-ip6-tunnel
+ DEPENDS:=+kmod-ipv6 +kmod-ip6-tunnel +resolveip
TITLE:=Dual-Stack Lite (DS-Lite) configuration support
MAINTAINER:=Steven Barth <steven@midlink.org>
PKGARCH:=all
diff --git a/package/network/ipv6/ds-lite/files/dslite.sh b/package/network/ipv6/ds-lite/files/dslite.sh
index a526c91d31..7b686390b3 100755
--- a/package/network/ipv6/ds-lite/files/dslite.sh
+++ b/package/network/ipv6/ds-lite/files/dslite.sh
@@ -25,6 +25,17 @@ proto_dslite_setup() {
( proto_add_host_dependency "$cfg" "::" "$tunlink" )
+ peeraddr=$(resolveip -6 $peeraddr)
+ if [ -z "$peeraddr" ]; then
+ sleep 3
+ peeraddr=$(resolveip -6 $peeraddr)
+ if [ -z "$peeraddr" ]; then
+ proto_notify_error "$cfg" "AFTR_DNS_FAIL"
+ return
+ fi
+ fi
+ peeraddr="${peeraddr%% *}"
+
[ -z "$ip6addr" ] && {
local wanif="$tunlink"
if [ -z "$wanif" ] && ! network_find_wan6 wanif; then