Linux检测ip变动

1 篇文章 0 订阅
1 篇文章 0 订阅

需求:如果使用一台动态ip的服务器可能需要设置ddns(设置方法),但是ddns设置了自己没有办法主动知道服务器的ip是否变动了。所以想做一个变动ip的同时发送一份邮件通知自己!!!JUST DO IT!!!!

需要内容:一个邮件发送的接口(后期可能考虑开放自己的接口)

脚本下载:checkIP

直接上关键代码吧,也不多说什么!!

#!/bin/bash
# MAYBE CHANGE THESE
ip=$(curl -s http://ipv4.icanhazip.com)
ip_file="/usr/local/bin/check_ip.txt"
# LOGGER
log() {
    if [ "$1" ]; then
        echo -e "[$(date)] - $1" >> $log_file
    fi
}
if [[ $update == *"\"success\":false"* ]]; then
else
    message="IP changed to: $ip"
if [ "$ip" = "" ]
then
  echo "ip is not set"
else
  echo "ip is set!"
    echo "$ip" > $ip_file
    echo "$message"
  curl -v "调用发送短信的接口API"
fi
    log "$message"
fi

这里只需要在调用发送短信的接口API换成一个请求接口地址就好了。

比如:http://xxx.com/sendmail.php?toemail=xxxxxx@qq.com&title=IPChanged&content=IP Changed to $ip

参数说明:

toemail:发送到哪个邮箱

title:邮件显示标题

$ip:保持不变,这个是更换后的ip

1、下载/添加文件到/usr/local/bin的目录下

2、赋予执行权限 chmod +x *.sh

3、添加到定时任务!!!重中之重

crontab -e
*/2 * * * * /usr/local/bin/checkIP.sh >/dev/null 2>&1

这里每两分钟检测一次!!

至此,就完成了。

本文地址:实时监测ip是否变动

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值