马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
本帖最后由 口觜亻尔 于 2016-4-6 23:37 编辑
ros5.xx成功添加IP列表
配合ROS防火墙规则
按企业客户要求进行上网限制管理,按某部门允许上企业邮箱,某部门可以访问银行网站,某部门可以访问快递物流网站,然后禁止访问其它一切网站等,这是收集快递地址的脚本,需要的朋友按自己所需自行修改。脚本比ros 2.9.xx老版本的脚本增加了IP重复判断,如果IP已经被添加即自动跳过,这样就不会重复添加了。否则IP列表分分种过万条IP地址,严重影响服务器性能。
以下是收集常用快递物流IP服务器脚本 ------------------------------------------------------------- # apr/06/2016 14:41:23 by routeros 5.24
# software id = W5EY-LHT9
# #自动获取域名服务器IP地址
#服务器域名关键字,多个关键字之间用逗号分隔
:local 77RunSTR "yundaex,ytoexpress,sto.cn,800bestex,chinapost,ttkdex,zto,sf-express,ems,zjs,qfkd,deppon,hoau,sure56,uc56,ycgwl,jiayi56,lbex,fedex,dhl,tnt,ups,usps,183";
#IP地址列表名
:local 77RunLST "KuaiDi";
#取得DNS缓存的A记录
:local id [/ip dns cache all find type="A"];
#对记录进行分析
:foreach i in=$id do={;
#取得域名
:local dom [/ip dns cache all get $i name];
:local found "no";
#判断域名中是否有指定的关键字
:foreach k in=[:toarray $77RunSTR] do={
:if ([:find $dom $k] >= 0) do={:set found "yes";}
}
#找到关键字后,进行判断是否已存在IP,不存在就把IP地址保存在指定地址列表中
:if ($found="yes") do={
if ([:len [/ip firewall address-list find where address=[/ip dns cache all get $i data] list=$77RunLST]] < 1) do={
/ip firewall address-list add list=$77RunLST disabled=no address=[/ip dns cache all get $i data] comment=$dom
}
}
}
请按自己需要修改以下红色部分即可,如需要收集齐齐奔跑www.77run.com的域名服务器IP地址. 修改第一个红色参数 :local 77RunSTR "77run" 修改第二个红色参数 :local 77RunLST "www.77run.com"; 收集完之后自己在到防火墙添加规则实现放行或禁止即可。 如有好的建议请联系作者邮箱:alex#77run.com (#改为@小老鼠)
经验分享: 1,域名关键字如果比较短或含有常见关键字的,可以加上尾部完整域名。如申通网址只添加sto,就会把很多带有sto的域名全部收集了,比如QQ服务器群就有大部分带sto关键字,因此我改为sto.cn。 2,将脚本添加到System--scheduler,刚使用先设置执行时间15分钟左右,大概执行几天后,可以将周期改到1小时或以上。因为前期已经收集了95%以上的IP,后期定期执行更新即可。
脚本定期更新完善,最新脚本请访问:http://www.77run.com/ROS-address-list/
ROS 3.xx和6.xx没有测试过是否正常,有条件的朋友麻烦测试后反馈,谢谢
|