laptop-mode daemon segfaults + kernel error spam when on batery
[distro-setup] / dynamic-ip-update
index 12726ae37335f80e0d0d2acdb6eca9d50b3d2ee2..3d36363bcfe3cce4e60aa2c1e4ff804d9f9eaad8 100755 (executable)
@@ -76,7 +76,7 @@ main() {
 
   if ! tmp=$(ip -4 route get 85.119.83.50 2>/dev/null); then
     # our internet is down
-    if [[ $INVOCATION_ID ]]; then
+    if [[ $PPID == 1 ]]; then
       return 0
     else
       echo $0: failed to get route, giving up
@@ -88,6 +88,11 @@ main() {
   case $gateway in
     10.2.0.1)
       dyndomain=b8.nz
+      # This domain is for any case where we want some different
+      # configuration based on lan vs wan. For right now, the only use
+      # is for ssh config to use port forwarding ports on the wan
+      # domain.
+      dyndomain_internet=i.b8.nz
       ;;
     *)
       return 0
@@ -116,7 +121,7 @@ main() {
 
   if $athome; then
     if ! cur4="$(dig +short $dyndomain @iankelling.org | tail -1)"; then
-      if [[ ! $INVOCATION_ID ]]; then
+      if [[ $PPID != 1 ]]; then
         echo "$0: dig failed. internet looks down. giving up"
       fi
       return 0
@@ -176,6 +181,8 @@ EOF
     cat >>$tmpf <<EOF
 update delete $dyndomain. A
 update add $dyndomain. 300 A $ip4
+update delete $dyndomain_internet. A
+update add $dyndomain_internet. 300 A $ip4
 EOF
   fi
 
@@ -217,7 +224,7 @@ loop-main() {
 }
 
 nsupdate_fails=0
-if [[ $INVOCATION_ID ]]; then
+if [[ $PPID == 1 ]]; then
   nsupdate_fail_limit=10
   loop-main
 else