raspiblitz/home.admin/config.scripts/lnd.autonat.sh
2022-01-29 22:03:40 +01:00

61 lines
No EOL
1.8 KiB
Bash
Executable file

#!/bin/bash
# based on: https://github.com/raspibolt/raspibolt/issues/249
if [ $# -eq 0 ]; then
echo "small config script to switch the LND autoNatDiscovery on or off"
echo "lnd.autonat.sh [on|off|info]"
exit 1
fi
# check lnd.conf exits
lndConfExists=$(sudo ls /mnt/hdd/lnd/lnd.conf | grep -c 'lnd.conf')
if [ ${lndConfExists} -eq 0 ]; then
echo "# FAIL - /mnt/hdd/lnd/lnd.conf not found"
exit 1
fi
# info
if [ "$1" = "info" ]; then
natIsOn=$(sudo cat /mnt/hdd/lnd/lnd.conf | grep -c 'nat=true')
if [ "${natIsOn}" == "1" ]; then
echo "autoNatDiscovery=on"
else
echo "autoNatDiscovery=off"
fi
exit 0
fi
# check if "nat" exists in lnd config
valueExists=$(sudo cat /mnt/hdd/lnd/lnd.conf | grep -c 'nat=')
if [ ${valueExists} -eq 0 ]; then
echo "# Adding autonat config defaults to /mnt/hdd/lnd/lnd.conf"
applicationOptionsLineNumber=$(grep -n "\[Application Options\]" /mnt/hdd/lnd/lnd.conf | cut -d ":" -f1)
applicationOptionsLineNumber="$(($applicationOptionsLineNumber+1))"
sudo sed -i "${applicationOptionsLineNumber}inat=false" /mnt/hdd/lnd/lnd.conf
fi
# delete nat is still in raspiblitz.conf (its OK when just in lnd.conf since v1.7.2)
/home/admin/config.scripts/blitz.conf.sh delete autoNatDiscovery
# switch on
if [ "$1" = "1" ] || [ "$1" = "on" ]; then
echo "# switching the LND autonat ON"
sudo sed -i "s/^nat=.*/nat=true/g" /mnt/hdd/lnd/lnd.conf
echo "# OK - autonat is now ON"
echo "# needs reboot to activate new setting"
exit 0
fi
# switch off
if [ "$1" = "0" ] || [ "$1" = "off" ]; then
echo "# switching the LND autonat OFF"
sudo sed -i "s/^nat=.*/nat=false/g" /mnt/hdd/lnd/lnd.conf
echo "# OK - autonat is now OFF"
echo "# needs reboot to activate new setting"
exit 0
fi
echo "FAIL - Unknown Parameter $1"
echo "may needs reboot to run normal again"
exit 1