Mercurial > index.cgi > dotfiles
view .ssh/athome @ 305:63cdefeef173 default tip
Gallifrey has fallen
author | Steve Huston <huston@princeton.edu> |
---|---|
date | Fri, 02 May 2025 16:29:42 -0400 |
parents | e7e331a51f2c |
children |
line wrap: on
line source
#!/usr/bin/env bash # Check to see if we're at home - does our externally routable IP address # match the one on my home network. This should be fast, and needs to be # portable so it works in multiple ways, but if everything else fails we'll # return false which should still allow things to work. # Logic swap for negating outputs on=0 off=1 if [[ "$1" == "--not" ]] ; then shift on=1 off=0 fi # Start by getting our current IP, this is surprisingly easy thanks to Amazon MYIP=`curl -s checkip.amazonaws.com` # Now how to get the home IP.. let's loop through ways it's possible HOMEDNS="b6800200.eero.online" if which getent awk > /dev/null 2>&1 ; then HOMEIP=`getent ahostsv4 $HOMEDNS | awk '{print $1; exit}'` elif which dig > /dev/null 2>&1 ; then HOMEIP=`dig +short $HOMEDNS` else exit $off fi [[ $MYIP == $HOMEIP ]] && exit $on || exit $off