CentOS定时将路由器的外网IP发送到指定电子邮箱中


Headnotes

Many equations and formulas look intimidating. However, when you hunt them down, they are definitely not! Just papertigers!

Now let's hunt the papertiger.

出于节约成本费用考虑,平时家用和小型商用的宽带都是ADSL虚拟拔号的。ADSL宽带的下载速度在4M左右时与光纤的差别不是很大,但唯一的问题就是没有固定IP,每次重新拔号都会重新获得动态的IP。这种情况下想进行远程维护服务器和网络就变得十分困难。在局域网内有Linux主机的情况下,我们可以考虑用如下的方法。

一、获得当前路由器的外网IP

curl ifconfig.me

就会获得一个路由器的IP地址。接下来,将这个IP地址通过Email发到指定的邮箱就。用 vim GetIP.sh 写一个角本,执行后,就会将外网IP发送到指定的电子邮箱中,脚本如下

 #!/bin/bash
 # Program:
 # Send Router IP of Internet to certain email# History:
 # 2014-03-08 cmzsteven First releasePATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin/:~/binexport PATHcurl ifconfig.me | mail -s "Router IP of Internet" changmingzhi@163.com

用命令 :wq 保存

二、定时执行

把这个脚本加到计划任务crontab中。如果你是管理员可以用

 vim /etc/crontab

加到系统的计划任务里也可以用 crontab -e 加入到用户的计划任务里。不管是加到哪里面,格式是一样的:

 1 */1 * * * root /root/GetIP.sh

上面是每小时的第一分钟执行一次,如果是每天1:01执行一次,格式为:

 1 1 */1 * * root /root/GetIP.sh

在作用“/n”的时候,如果前面还有“*”就要指定数值了,要不就是每一分钟发一次了。我之前设置为

 * */2 * * * root /root/GetIP.sh

结果就是每隔一分钟,就会收到一封邮件。3.剩下的工作就是在路由器里设置虚拟服务或者NAT转换了,这里就不过多的加以介绍了。

三、时程表的格式

f1 f2 f3 f4 f5 program
其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程式。
当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程式,其余类推
当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推
当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其余类推
当 f1 为 a, b, c,… 时表示第 a, b, c,… 分钟要执行,f2 为 a, b, c,… 时表示第 a, b, c…个小时要执行,其余类推

原文地址:http://changmingzhi.blog.163.com/blog/static/29678048201428114710683/


Footnotes

There are many excellent tutorials out there. Some tutorials are too intuitive and it's helpful, but you cannot get it straight on the math details. Some focused on dymestifying math. Some focused on code. I found the best tutorials that give you the conceptual ideas and are possible for implementation without being blind to the math details. Drop a comment if I failed. It would be really appreciable.


If you want to cite this article, please cite this article as:

Lachlan Chen, "CentOS定时将路由器的外网IP发送到指定电子邮箱中," in EarnFromScratch, June 30, 2014, https://www.earnfs.com/en/html/1150.htm.

or

@misc{lachlanchen2020tutorial,
title=CentOS定时将路由器的外网IP发送到指定电子邮箱中,
author={Chen, Lachlan},
year=June 30, 2014
}


EarnFromScratch (September 25, 2021) CentOS定时将路由器的外网IP发送到指定电子邮箱中. Retrieved from https://www.earnfs.com/en/html/1150.htm.
"CentOS定时将路由器的外网IP发送到指定电子邮箱中." EarnFromScratch - September 25, 2021, https://www.earnfs.com/en/html/1150.htm
EarnFromScratch June 30, 2014 CentOS定时将路由器的外网IP发送到指定电子邮箱中., viewed September 25, 2021,<https://www.earnfs.com/en/html/1150.htm>
EarnFromScratch - CentOS定时将路由器的外网IP发送到指定电子邮箱中. [Internet]. [Accessed September 25, 2021]. Available from: https://www.earnfs.com/en/html/1150.htm
"CentOS定时将路由器的外网IP发送到指定电子邮箱中." EarnFromScratch - Accessed September 25, 2021. https://www.earnfs.com/en/html/1150.htm
"CentOS定时将路由器的外网IP发送到指定电子邮箱中." EarnFromScratch [Online]. Available: https://www.earnfs.com/en/html/1150.htm. [Accessed: September 25, 2021]


Leave a Reply