[:zh]一些自用的脚本,分享给各位。本人只有一台AC68U,故不保证脚本在其他平台上的可用性。
使用自定义脚本需要的步骤:
1. 安装Merlin版固件 (去这里下载),截至目前为止,支持 AC56、AC66、N66、AC68、AC87、及 AC3200,N16系列则已不再更新。
2. 在系统设置中开启JFFS2
3. 允许执行JFFS脚本
4. 开启SSH
1. DnsPod自定义动态域名更新脚本
自Asuswrt-Merlin 378.50版本开始,Merlin固件开始支持自定义DDNS脚本,基本可以使用所有动态域名平台了,以下是用于更新DnsPod域名记录的脚本,保存为 /jffs/scripts/ddns-start 并设置权限 755
#!/bin/sh updateDns() { local userName="你的DnsPod用户名" local password="你的DnsPod密码" local sub_domain="子域名" # 例如 www.sylphia.org,这里就写 www local domain_id="要更新的域Id" #这两个Id可以从DnsPod的客户端中获取到 local record_id="子域名Id" local data="login_email=${userName}&login_password=${password}&format=json&domain_id=${domain_id}&record_id=${record_id}&record_line=%E9%BB%98%E8%AE%A4&sub_domain=${sub_domain}" curl -X POST https://dnsapi.cn/Record.Ddns -d "${data}" -s | grep -c '"code":"1"' } local updated="0" local waitTime=10 logger -t DnsPodUpdater "Trying to update dnspod record..." while [[ $updated -ne "1" ]]; do #statements updated=$(updateDns) echo $updated if [[ $updated -eq "1" ]]; then #statements logger -t DnsPodUpdater "Dnspod record updated." else logger -t DnsPodUpdater "Dnspod record update failed, retrying after $waitTime seconds..." sleep $waitTime fi done /sbin/ddns_custom_updated 1 exit 0
2. 开启 iptables 的 geoip 模块
下载 ,解压缩其中的两个文件并保存到 /jffs/geoip/ 目录下
新建或编辑 /jffs/scripts/services-start 脚本,加入以下内容
#!/bin/sh insmod xt_geoip mkdir -p /var/geoip/ cp -f /jffs/geoip/* /var/geoip/
这之后iptables 就可以使用 geoip 作为 -m的参数了
3. 配置 ShadowSocks
咳咳,你懂。首先你要有shadowsocks-libev的可执行文件,这里暂不提供了,各路由器平台也不同,网上一搜就有,推荐放在 /jffs/bin/ 下面,记得改权限 755
然后创建 /jffs/configs/ss.json (文件名随意)
内容为
{ "server":"你的SS服务器IP", "server_port": 你的SS服务器端口, "password":"你的SS服务器密码", "timeout":300, "method":"你的SS服务器加密方式" }
创建 /jffs/scripts/start-shadowsocks 并设置权限755
#!/bin/sh logger -t ShadowSocks "Killing existed shadowsocks processes..." kill -9 `ps | awk '/ss-/ && !/awk/ {print $1}'` logger -t ShadowSocks "Starting ss-redir" /jffs/bin/ss-redir -c /jffs/configs/ss.json -b 0.0.0.0 -l 8888 --fast-open -f /home/root/ss-redir.pid logger -t ShadowSocks "Starting ss-local" /jffs/bin/ss-local -c /jffs/configs/ss.json -b 0.0.0.0 -l 3333 -f /home/root/ss-local.pid
其中,8888 端口是用于透明代理,3333端口用于socks代理
最后在 /jffs/scripts/services-start 脚本中增加一行 /jffs/scripts/start-shadowsocks 就可以了。
当然,配置了SS以后还需要建立 iptables 规则,最好再配合dnsmasq,才可以,就不在这赘述了,但有了 geoip 模块,相信iptables规则可以更猛烈一些。dnsmasq也是merlin固件的标配,亦无需复杂配置,只需要在/jffs/configs/dnsmasq.conf.add中增加你的配置即可
重启路由~ Goooglllllleeeeee
[:en][:]
去掉amp;后dnspdod脚本正常运行,感谢
你好,叛逆联队2的注册验证码输入一直提示错误,导致一直注册不上.能修复吗?
大神你好 我注册BC2账号的时候总是提示错误的验证码,我真的很想玩C组大神的BC2,可是注册不了账号