本文主要是介绍[Bash]检测外网IP,不一致时发送邮件。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
脚本名称:ip-addr.sh
用途:检测是否与上一次IP一致,不一致就发送邮件通知。
环境:CentOS 6.5
工具:mailx
前提条件:需要安装mailx,配置smtp服务器。
Code:
1.安装mailx
yum install -y maix
2.配置smtp邮箱(/etc/mail.rc)
set from=FromUser@hotmail.com smtp=mail.hotmail.com
set smtp-auth-user=FromUser@hotmail.com
set smtp-auth-password=123
3.测试邮箱
echo "测试内容 " | mailx -s "测试标题" ToUser@hotmail.com
4. 发送邮件
#!/bin/shipaddrnew=`curl ifconfig.me`
ipaddrold=`cat /root/ip-addr`if [ ! $ipaddrold == $ipaddrnew ]
thenecho "IP地址变更"echo $ipaddrnew > /root/ip-addrecho "[通知][IP]["$(date +"%Y-%m-%d %H:%M:%S")"] ip地址变更: "$ipaddrnew | mailx -s "[不定][通知][IP变更]["$(date +"%Y-%m-%d")"]" ToUser@hotmail.com
elseecho "IP地址正常"
fi
5.设置定时任务(30分钟检测一次)
crontab -e
*/30 * * * * /root/ip-addr.sh
这篇关于[Bash]检测外网IP,不一致时发送邮件。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!