放几个常用的脚本,需要的进来转转
本帖最后由 XCV123321 于 2010-11-27 12:56 编辑1. Ddns(动态域名自动更新) + Nat(动态adsl nat ip端口映射更新) + 掉线检测报警 3合1
源代码:global psc;
/interface pppoe-client
:foreach pc in= do={
:local pcs
:local pcn
:if ($pcs=false) do={
monitor $pcn once do={
:if ($status="connected") do={
:local psc ad];
:set psc [:pick $psc 0 [:find $psc "/"]];
:local nIp "x.changeip.net";
:if ($psc!=[:resolve $nIp]) do={/tool dns-update name=$nIp address=127.0.0.255 key-name=x key=x} else={
:foreach olp in= do={
:if ($psc!=) do={/ip fi nat set $olp dst-address=$psc}}}
} else={:for i from=1 to=3 step=1 do={:beep length=100ms frequency=1926;:delay 100ms}
:log wa "adsl drop,line fault detection"}}}}路由环境 3.x 版 单线adsl 多线的下边15楼 本帖最后由 XCV123321 于 2010-11-28 13:35 编辑
2 小包策略/ ip firewall mangle
add chain=forward protocol=tcp tcp-flags=syn action=change-mss new-mss=1440 comment="" disabled=no
aad chain=forward action=mark-packet connection-mark=p2p_conn disabled=no new-packet-mark=p2p passthrough=yes
add chain=forward connection-mark=p2p_conn action=mark-packet new-packet-mark=p2p passthrough=yes comment="" disabled=no
add chain=forward connection-mark=!p2p_conn action=mark-packet new-packet-mark=general passthrough=yes comment="" disabled=no
add chain=forward packet-size=32-512 action=mark-packet new-packet-mark=small passthrough=yes comment="" disabled=no
add chain=forward packet-size=512-1200 action=mark-packet new-packet-mark=big passthrough=yes comment="" disabled=no/queue tree
add name="p2p1" parent=adsl packet-mark=p2p limit-at=300000 queue=default priority=8 max-limit=800000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
add name="p2p2" parent=lan packet-mark=p2p limit-at=300000 queue=default priority=8 max-limit=600000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
add name="ClassA" parent=lan packet-mark="" limit-at=0 queue=default priority=8 max-limit=100000000 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
add name="ClassB" parent=ClassA packet-mark="" limit-at=0 queue=default priority=8 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
add name="Leaf1" parent=ClassA packet-mark=general limit-at=0 queue=default priority=7 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
add name="Leaf2" parent=ClassB packet-mark=small limit-at=0 queue=default priority=5 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no
add name="Leaf3" parent=ClassB packet-mark=big limit-at=0 queue=default priority=6 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no发的不全
板凳 ,哼哼
3 adsl动态端口更新&Dynamicdns,这个发3种版本的
No1 4.x adsl动态端口更新&Dynamicdns(changeip):global poe pppoe-out1;
:global psc;
:global prc;
/interface pppoe-client monitor $poe once do={
:if ($status="connected") do={
:foreach wIp in= do={
:set psc ;
:local pec ($psc . $pec);
:set prc $pec
}
:local pxc "大哥,这里是你的域名";
:local pcb [:len [:find $psc [:resolve $pxc]]];
ss=127.0.0.255 key-name=大锅,这里填你的用户名 key=密码} else={
:local olp ;
:local nIp [:resolve $pxc];
:if ($nIp!=$olp)do={
/ip fir nat set num=*2 dst-address=$nIp;
/ip fir nat set num=*3 dst-address=$nIp}}}}}4.x,bug定制版 (加了智能补全,取消了参数传递,汗 ...) 机器正常的看下边
No2 3.x adsl动态端口更新&Dynamicdns:global psc;
:global poe pppoe-out1;
/interface pppoe-client monitor $poe once do={
:if ($status="connected") do={
:local psc ad];
:set psc [:pick $psc 0 [:find $psc "/"]];
:local nIp "域名";
:if ($psc!=[:resolve $nIp]) do={/tool dns-update name=$nIp address=127.0.0.255 key-name=用户名 key=密码} else={
:local olp dst-address];
:if ($psc!=$olp)do={
/ip fi nat set dst-address=$psc}}}}3.x版 adsl单线
No3 3.x adsl动态端口更新&Dynamicdns:global psc;
:global poe pppoe-out1;
/interface pppoe-client monitor $poe once do={
:if ($status="connected") do={
:local psc ad];
:set psc [:pick $psc 0 [:find $psc "/"]];
:local nIp "域名";
:if ($psc!=[:resolve $nIp]) do={/tool dns-update name=$nIp address=127.0.0.255 key-name=用户 key=密码} else={
:foreach olp in= do={
:if ($psc!=)do={
/ip fi nat set $olp dst-address=$psc}}}}}3.x版 adsl单线 :)呵呵 自动更新不错! 本帖最后由 XCV123321 于 2010-11-26 15:02 编辑
4 自动列出并动态更新所有xxx的服务器的全部ip地址
根据服务器的域名后缀做关键词判断
从DNS的cache中筛出路由地址缓存的所有的对应A记录的ip地址,比较处理后直接丢掉address-list的地址池里
这个比较敏感,不直接发了 放到附件里,看懂看不懂的,想要的拿铜板来换
这个放出3种写法,思路一样,但处理的手法不太一样的哦 ,看了才知道
No 1. 2 3
上边的2种写法都支持一次同时定义多条域名关键字进行处理,至于运行间隔时间和一次同时最大定义的域名数量 由你路由的小U决定,下边的免(含2种写法)费, 看来大家对免费的东西比较哈哈 本帖最后由 XCV123321 于 2010-11-29 20:25 编辑
目前用的快扫操作 ,比上边的脚本复杂点 哈哈
简单讲下效果自动更新,但不够智能,准确,但不精确,可随时动态更新ip地址
操作分为 “+” 和 “-",还有防火墙规则的 “+” 加速控制代码, “-"时微调控制用到的防火墙处理规则,
脚本分为schedulerr部分,firewall filte加速和微调处理的操作,这里不会发的, 发出来会下边有人骂的
本帖最后由 XCV123321 于 2010-11-26 15:03 编辑
5国外流传的关于ssh的防火墙规则---------------------------------------------------------------
prevent a SSH brute forcer to be banned for 10 days after repetitive attempts. Change the timeouts as necessary.
/ip firewall filter
add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop \
comment="drop ssh brute forcers" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist \
address-list-timeout=10d comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 \
address-list-timeout=1m comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 \
action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list \
address-list=ssh_stage1 address-list-timeout=1m comment="" disabled=no
-----------------------
With this rule you can know who is this trying to login. Put it in previous to the others.
Code:
/ip firewall filter add chain=input protocol=tcp dst-port=20-23 action=add-src-to-address-list address-list=trying_to_login address-list-timeout=1d comment="remote_logins" disabled=no
额,眼熟啊掉线脚本不是我写的吗? 本帖最后由 XCV123321 于 2010-11-26 15:03 编辑
6关于原创的一点感想
正想谈谈这个问题哈哈
Ros的脚本 都是网上流传的
大家传来传去 其实炒得不过是一锅剩饭 罢了
回复 8 楼
前辈 幸会!网上飘了这么久,这里终于见了一个说发过脚本的真人了哈哈
Ros的掉线脚本 网上至少流传了3个不同的版本看的很眼熟麽 ,不知道楼上的前辈是哪一版的作者呢? but 这3种脚本掉线放到我的路由上,只有1个有时可以运行出效果,最后用到时候还是需要小小的改一下 哈哈 本帖最后由 XCV123321 于 2010-11-29 20:29 编辑
其实 这种底层的脚本大家写来写去,思路和写法都差不多,大概框架都基本相同,不会在说写出什么花来,这里借用了网上流传的脚本的原始框架,觉得不好用,进行再次处理,原始的变量名也懒得去改了,哎呀 有人发过了 ,2楼删掉 还有那楼有问题 楼下继续 哈哈
这里表示支持原创 尊重版权 哈哈
本帖最后由 47771885 于 2010-11-25 13:01 编辑
:lol都差不多的 哈哈 过几天也发点玩意
3X以上还用脚本老土 3X以上就不用脚本儿了?~那怎么计划任务啊...真想不明白 :lol 多线的是不是一样的呢? 本帖最后由 XCV123321 于 2010-12-1 17:38 编辑
回复10楼
你发的小东东是3.x 还是2.x的看起来挺强悍的 哈哈
回复14楼
兄弟 油钱淫,哈哈 分流叠加负载?
1 . 3 是单线adsl的环境,在多线下要改不过 ,1拆掉了DDNS 和 Nat端口映射 可以作为掉线自动检测报警运行在多线环境下,当初好像就是这么设计的 至于别的几个没有这个限制 哈哈
另外楼上说的多线是 固定ip? pppoe-c?多级?单臂?VPN?借线?
adsl 多线 Ddns+Nat动态ip映射+自动检测报警3合1
页:
[1]
2