# IP-watcher **Repository Path**: lambyte/ip-watcher ## Basic Information - **Project Name**: IP-watcher - **Description**: 一个用于监控本地IP变化,并向指定邮箱汇报的脚本。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-09-22 - **Last Updated**: 2021-10-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IP reporter ## 1. 背景 如果你有一台 IP 地址不固定 Windows 个人电脑,并且希望能够随时从一台机器远程访问它(通过远程桌面、SSH等方式),那么这个项目适合你。 通过一些配置,并借助任务计划程序,项目中的脚本可以在开机后自动运行,检测到宿主机 IP 地址发生变化时,及时以电子邮件的方式通知你。 ## 2. 前提 - Windows 10 - Python 3.x - 一个用于发送通知的邮箱 ## 3. 使用 ### 3.1 下载本项目 Clone 本仓库 ``` git clone https://gitee.com/lambyte/ip-watcher.git ``` ### 3.2 配置 #### 3.2.1 添加配置文件 `config.py` 进入仓库目录,新建一个名为 `config.py` 的文件,并输入下面的内容: ```python class cfg(object): from_addr = "sender@example.com" password = "YOUR_PASSWORD" to_addr = "receiver@example.com" smtp_server = "mail.example.com" log_file = 'IPaddr.log' interval = 10 ``` 有若干字段需要自行定义,各字段说明如下表 | 配置项名称 | 含义 | 备注 | | ----------- | ------------------------------------------------ | -------- | | from_addr | 发送通知的邮箱地址 | 需自定义 | | password | 发送通知的邮箱密码 | 需自定义 | | to_addr | 接收通知的邮箱地址 | 需自定义 | | smtp_server | 发送通知的邮箱的SMTP服务器地址 | 需自定义 | | log_file | 记录本机 IP 地址日志文件名 | | | interval | 轮询 IP 是否改变的时间间隔,单位为秒(暂未使用) | | #### 3.2.2 配置任务计划程序 (1) 快捷键 `win` + `R` 打开运行框,输入 > taskschd.msc 打开任务计划程序。 (2) 依次点击“操作”、“创建任务”,在向导中继续配置任务。配置可参考下面: 常规 > 名称:Watch IP > > 更改用户或组 > 高级 > 立即查找 > 在搜索结果中选择 SYSTEM > 确定 触发器 > 新建 > 开始任务设置下拉菜单栏中,选择启动时 > > 高级设置中,勾选延迟任务时间,可设延迟 3 至 5 分钟 操作 > 新建 > 操作选择启动程序 > 在程序或脚本编辑框中输入项目中 watch_IP.bat的路径 **配置任务计划程序 FAQ** Q: 为什么在“常规”中用户需要选为 SYSTEM ? A: 使用 SYSTEM账户执行批处理将不会弹出 CMD 窗口,参考[这里](https://blog.csdn.net/qq_39188306/article/details/88689224)。 Q: 为什么触发器需要延迟? A: 刚启动的机器联网需要一段时间,延迟的目的是等待机器联网。 ## 4. 注意事项 邮箱密码在本机明文保存,因此建议申请一个不重要的邮箱专用于通知。