我想创建一个简单的脚本,当我的公共 IP 地址发生变化时,通过发送电子邮件通知我。(类似于 dyn-dns-services 所做的)。
好的,我可以创建一个 cron 作业,每分钟检查我的公共 IP,如果不是前一分钟,我就会发送消息。
但是,我的网关(分配了 IP)是 Debian 机器,所以我认为一定有更好的解决方案。是否有一个众所周知的文件夹,其中包含每次网络配置更改时都会执行的脚本?或者一个我可以在其中添加脚本的配置文件?
任何想法?
答案1
通常,当您的 IP 发生变化时,您的 DHCP 租约已过期,您的客户端正在向服务器请求延期。服务器拒绝并改为为您提供其他 IP。
该isc-dhcp-client
软件包(可能就是您正在运行的软件包)提供了执行 DHCP 事件钩子的功能。基本上,您可以将脚本放入其中/etc/dhcp/dhclient-enter-hooks.d
,测试适当的环境变量以确保接口是您想要的,DHCP 事件类型是您想要的,然后执行您想要的操作。
读这man dhclient-script
或者在本地系统上查看。
如果您除了 DHCP 之外还有其他方法可以更改您的 IP,那么您的方法实际上是不错的。