iankelling.org
/
git
/
distro-setup
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ploopy on startup
[distro-setup]
/
dynamic-ip-update
diff --git
a/dynamic-ip-update
b/dynamic-ip-update
index 4b5983fbed4153e5c9b7a57d3203863b2093393f..1e6cabbf0fce19f9118596b3aec207ec18e22c25 100755
(executable)
--- a/
dynamic-ip-update
+++ b/
dynamic-ip-update
@@
-1,8
+1,6
@@
#!/bin/bash
source ~/.bashrc
#!/bin/bash
source ~/.bashrc
-
-
main() {
fqdn=$(hostname -f)
main() {
fqdn=$(hostname -f)
@@
-13,13
+11,16
@@
main() {
up4=false
up4=false
- if ! read -r _ _ gateway _ ifdev _ < <(ip -4 route get 85.119.83.50 2>/dev/null); then
- # if our internet is down, just give up, no need to have an error
- if [[ ! $INVOCATION_ID ]]; then
+ if ! tmp=$(ip -4 route get 85.119.83.50 2>/dev/null); then
+ # our internet is down
+ if [[ $INVOCATION_ID ]]; then
+ return 0
+ else
echo $0: failed to get route, giving up
echo $0: failed to get route, giving up
+ exit 0
fi
fi
- exit 0
fi
fi
+ read -r _ _ gateway _ ifdev _ <<<"$tmp"
case $gateway in
10.2.0.1)
case $gateway in
10.2.0.1)
@@
-46,7
+47,12
@@
main() {
if $athome; then
if $athome; then
- cur4="$(dig +short $dynhost @iankelling.org | tail -1)"
+ if ! cur4="$(dig +short $dynhost @iankelling.org | tail -1)"; then
+ if [[ ! $INVOCATION_ID ]]; then
+ echo "$0: dig failed. internet looks down. giving up"
+ fi
+ return 0
+ fi
if ip4=$(curl -s4 https://iankelling.org/cgi/pubip); then
if [[ $cur4 && $ip4 && $cur4 != $ip4 ]]; then
up4=true # update ipv4
if ip4=$(curl -s4 https://iankelling.org/cgi/pubip); then
if [[ $cur4 && $ip4 && $cur4 != $ip4 ]]; then
up4=true # update ipv4
@@
-126,20
+132,20
@@
EOF
}
}
-if [[ $INVOCATION_ID ]]; then
- # this is to prevent systemd from filling up the journal
- for (( runcount=0; runcount < 100; runcount++ )); do
+loop-main() {
+ while true; do
main
sleep 30
done
main
sleep 30
done
+}
+
+
+if [[ $INVOCATION_ID ]]; then
+ loop-main
else
main
fi
else
main
fi
-
-
-
-
exit 0
exit 0
@@
-165,7
+171,7
@@
exit 0
# # push here?
# #myunison -ob li
# #ssh li conflink
# # push here?
# #myunison -ob li
# #ssh li conflink
-# ssh li.b8.nz systemctl reload
bind9
+# ssh li.b8.nz systemctl reload
named
# # b8.nz has address 65.96.178.16
# # b8.nz has address 65.96.178.16