减少运营商的公网 IP 地址的随机变动,将随机变为可控

timg.jpeg

0x00

由于 Mikrotik 这个品牌的使用在国内普及度并不高,有些略微复杂的问题很难在百度上有效搜索。知识碎片化也让一些疑难杂症难以解决。

本博客将开设专门的 Mikrotik 系列记录使用 Mikrotik-RouterOS 家用以来解决的以下几个核心点,以及方案思路。

点击下面的链接可以快速跳转到不同的文章:

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保存。

reconnecter.png

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天是最稳的控制方式。