فهرست منبع

dnsmasq: make the check for existing DHCP servers more reliable

If there is no carrier yet, wait for 2 seconds (STP forwarding delay)

Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau 9 سال پیش
والد
کامیت
6916ca8d33
1فایلهای تغییر یافته به همراه6 افزوده شده و 0 حذف شده
  1. 6 0
      package/network/services/dnsmasq/files/dnsmasq.init

+ 6 - 0
package/network/services/dnsmasq/files/dnsmasq.init

@@ -64,6 +64,12 @@ dhcp_check() {
 
 	[ -s "$stamp" ] && return $(cat "$stamp")
 
+	# If there's no carrier yet, skip this interface.
+	# The init script will be called again once the link is up
+	case "$(devstatus "$ifname" | jsonfilter -e @.carrier)" in
+		false) return 1;;
+	esac
+
 	udhcpc -n -q -s /bin/true -t 1 -i "$ifname" >&- && rv=1 || rv=0
 
 	[ $rv -eq 1 ] && \