We have the issue that the external IP for the SMA is not static.
All few weeks the provider changes the external IP so the access is not granted until the DNS is modified.
Due to a few issues this is not possible via an API and needs to be made manually.
Especially if on tour this may be a big problem.
In our case one of the internal servers (Linux) runs a little script which reports the changes via email.
Prerequisites:
A SMTP server is setup that an email can be sent. Set this up so it does not send cron-emails because this could fill the mailbox.
Script:
#!/bin/bash# check and send ip address to email
MYIP=$(curl ifconfig.me);
TIME=`date`;
LASTIPFILE='/SCRIPTLOCATION/LAST_IP';
LASTIP=`cat ${LASTIPFILE}`;
if [[ ${MYIP} != ${LASTIP} ]]
then
echo "New IP = ${MYIP}"
echo "sending email.."
echo -e "Hello\n\nAt Timestamp = ${TIME} the IP was changed to\nIP = ${MYIP}\n\nThanks, Admin" | \
/usr/bin/mail -s "[IP Change notification]" ADMIN-EMAIL;
echo ${MYIP} > ${LASTIPFILE};
else
echo "no IP change!"
fiThe script should be obvious, it checks the current external IP by surfing to https://ifconfig.me which simply returns the external IP.
If this differs to the old saved one it will send an email with all important info to the ADMIN-EMAIL (add here your own)
Now you can test it and if it works as suspected, you can simply automate it via cron to run all 5 minutes (in that example) and don't send any emails from it.
*/5 * * * * /SCRIPTLOCATION/address.sh >/dev/null 2>&1This script can be run under any user account, root is not suggested
Comments