减少运营商的公网 IP 地址的随机变动,将随机变为可控
0x00
由于 Mikrotik 这个品牌的使用在国内普及度并不高,有些略微复杂的问题很难在百度上有效搜索。知识碎片化也让一些疑难杂症难以解决。
本博客将开设专门的 Mikrotik 系列记录使用 Mikrotik-RouterOS 家用以来解决的以下几个核心点,以及方案思路。
点击下面的链接可以快速跳转到不同的文章:
- 《家宽拨号后为动态地址,解决 ROS 拨号后的 DDNS 问题》
- 《内网使用公网地址访问内网机器的问题(俗称流量回流)》
- 《减少运营商的公网 IP 地址的随机变动,将随机变为可控》
- 《家宽如何变相解决 80 和 443 端口被封锁》
- 《抛弃光猫,让 ROS 使用 GPON 模块直插入户光纤》
0x01
由于家中使用的是中国电信的宽带,申请公网地址后,IP地址会随机性变化,变化时间,变化后的IP地址都是完全随机的,无法精确控制变化时间。
虽然IP地址无法准确固定,但是我们可以使用一些小技巧固定住IP的变化时间。避免白天IP变化导致的服务中断。
0x02
中国电信的公网地址变动有两个前提:
- 用户拨号时间要超过一定的基础时间(个人判断最短40小时,最长72小时左右),IP地址强制重新分配。
- 如果用户拨号在线超过1小时以上,因断线、断开拨号等各种原因,重新拨号后IP地址将100%重新分配。
这样一来,所以我们要固定住IP变更的时间就变得很简单了——我们只需要在第一条的规则内,定时去执行第二条,让宽带拨号在某个时间段重新拨号即可
0x03
思路有了,实际操作环节:
比如给ROS设置一个定时脚本:每日凌晨5点自动重新拨号
Winbox
登录Winbox,左侧依次点击System-Scheduler,点击+号添加规则:
/interface pppoe-client set PPPoE-Telecom disabled=yes
/interface pppoe-client set PPPoE-Telecom disabled=no
其他设置如下图,点OK保存。
ROS终端
system scheduler add name=PPPoE_Reconnecter start-date=Feb/01/2020 start-time=05:00:00 interval=1d on-event="/interface pppoe-client set PPPoE-Telecom disabled=yes\n/interface pppoe-client set PPPoE-Telecom disabled=no"
0x04
设置完成,以后ROS将会在每天
的凌晨5时重新拨号。
如果嫌时间太短,可以设置为2天拨号,但依然有IP变动的风险。1天是最稳的控制方式。