固件是免费、开源
这固件是从Padavan固件源码:https://bitbucket.org/padavan/rt-n56u/src搬运源码汉化后编译出来的。如有需要可以到网盘下载汉化文件自行编译。(HowToMakeFirmware编译教程见网盘)清除配置方法:
由于刷机不清除配置,如果按键10秒也不能清除配置,或者开机后不能启动,可能是配置冲突,需要手动清除配置(nvram)重置机器。
(操作前备份编程器固件以备不时之需(已经备份可以跳过))
清除方法:进入breed - 恢复出厂设置 - 选择 【Config 分区 公版】- 上传华硕固件 - 更新

如果出现升级固件后没更新内容,可以换其他浏览器试试,因为有些IE内核浏览器的兼容问题导致升级固件失败。如果aria2配置失败也可能是兼容问题,建议换用Chrome浏览器

由于有些路由兼容性问题,中继显示连接失败,可以试试改WIFI的信道带宽20MHz。有网友试过改WIFI的信道带宽20MHz后中继连接正常。

有些路由reboot或在WEB管理页面和BREED页面点击重启按钮卡死,是由于部分路由的闪存、内存体质问题。可以尝试降频,或刷低版本的breed试试。

断电重启会丢脚本,正确保存脚本方法:方法①:系统管理 - 恢复/导出/上传设置 - 路由器内部存储 (/etc/storage) - 【写入】 方法②: 管理页面右键按钮软重启。 方法③:Telnet输入命令 【mtd_storage.sh save】

手动修改系统时间:SSH 或 控制台输入:date -s "2016-7-16 21:49:36"

 

更多高级功能教程网站:http://rt.cn2k.net/

2016年07月26日 同步Padavan源码更新
源码更新内容:https://bitbucket.org/padavan/rt-n56u/commits/all 本次更新到:     eaebfec    固件版本升到3.4.3.9-099

注意事项:配置说明看下面内容,有些路由刷入后WAN和LAN接口反转
很多附加功能都是脚本命令实现的,如果觉得启用功能太多导致不稳定,可以不启用附加功能,这样就是原版固件了,也可以清空脚本。
很多人启动S-S后不能用。估计是DNS被污染了。可以电脑设置:DNS自动获取路由的ip。电脑运行cmd输入【ipconfig /flushdns】,清理浏览器缓存。

2016-7-26更新:继续填坑,修复一些LNMP脚本的bug,增加更多logo(主题风格设置是浏览器缓存形式保存的),有极3的请测试sd卡能不能用。

2016-7-25更新:继续挖坑,添加小米3,小米青春版(未测试,请做足准备再刷入) ,增加更多主题风格包下载(自定义设置)(来源:Freize  http://prometheus.freize.net),增加CloudXNS域名解析,增加一键部署LNMP(需要U盘,fat32文件系统不支持,一定要用ext3、ext4或者ntfs)

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

2016-7-17更新:感谢elinpr0s完善中文汉化和UI美化,增加ssr混淆、协议菜单,增加 VPNproxy 免流专用程序,感谢小宝的程序源码(固件自带的mp和tp不能用来免流)。
2016-7-06更新:现在adm只有全局模式。增加ssr(未测试)启用时自己手动在高级参数添加[ -o 混淆 -O 协议],增加 花生壳内网版 和 Ngrok内网穿透 独立UI , wifidog 增加  wifidog status 超链接,增加 ebtables 的 broute 表。
2016-7-05更新:1.更新KMS,增加【DNSPod动态域名】页面,2.增加DNSPod的Token登录方式,3.增加【WiFiDog设置】页面(感谢elinpr0s提供)(认证管理平台自己部署服务器或找现成的),4.同步ss源码更新,5.增加【SS节点设置】【SS服务器】页面,6.UI菜单增加更多1级菜单,7.删除SINGLE_SKU文件,8.增加ebt的ipv6模块(需要手动modprobe加载模块),9.同步源码无线驱动更新、增加[AP + AP-Client]自动连接

2016-6-28更新:增加重庆闪讯(我无环境、未测试)。修复内置list的错误:含tw、hk、mp、support字符的域名都被转发代理问题。【5、6月的固件都有这个问题,建议及时升级】
2016-6-27更新:感谢花生壳官方编译的花生壳内网版程序,现在16M固件已经内置。注意:程序替换后sn会变更,需要重新绑定。

2016-5-26更新:ngrokc v1.37作者原话:1.37版本 修复一个崩溃bug,建议所有的都升级到这个版本。(感谢 bigandy提供)
2016-5-25更新:修复s-s update_chnroutes后变全局问题,增加s-s-server功能,增加N14-GPIO13固件。增加水牛1166DHP固件。【本次升级自动重置脚本,更新后请检查脚本设置】
2016-5-25更新:默认网关修改为【192.168.123.1】管理页面【http://my.router/】

2016-5-22更新:修复花生壳内网版启动、修复vlmcsdini、迅雷获取key、重复restart_dhcpd、锐捷认证等问题。
2016-5-20更新:感谢 bigandy提供流量监控的C代码,快速、高效,不占用CPU
2016-5-16更新:修复搜寻SSID显示中文;AP自动中继脚本配置方式更改;增加【锐捷认证 - MentoHUST】(主程序已放到网盘,我没条件测试);
                            流量监控降低cpu占用;修复s-s备用服务器设置失效问题。
2016-5-16更新:感谢 bigandy提供流量监控代码和S-S优化代码
2016-5-16更新:感谢elinpr0s提供锐捷认证主程序和代码

2016-5-8更新:大改S-S启动脚本;增加VPN智能分流设置;增加【连接信息 - 流量监控】;内置ngrok(小固件除外);由于oye01固件与oye01接口翻转,改名为7620通用固件(不同名称更新需在breed刷入)。
2016-04-16更新:修复一些小BUG。
2016-04-10更新:增加【AX206相框显示】功能;代理功能增加订阅3个列表。
感谢 sehu 提供配置文件

2016-04-01更新:增加【重置代理的IP规则文件并重启代理】按钮。(IP规则异常或日志出现【dnsmasq: FAILED to start up】等情况需要手动点击此按钮)
2016-03-26更新:添加7628固件和JI3固件。
2016-03-20更新:修复SyncY守护进程脚本启动问题。若发现其他功能失效,可重置恢复脚本,重启即可修复错误 。
2016-03-05更新:更新aria2 1.20.0,新增aria2 web管理页面;发现SMB资源挂载功能(局域网共享映射,无USB也能挂载储存空间);新增脚本强制重置更新(发现很多人更新固件后没更新脚本导致功能失效,所以添加这个功能)

SMB资源挂载功能在【运行路由器启动后】脚本修改重启即可使用,适合无USB的路由又想挖优酷金币的网友。
删除前面的#可生效
### SMB资源挂载(局域网共享映射,无USB也能挂载储存空间)
### 说明:共享路径填写时,【\】要写成【\\】。
modprobe des_generic
modprobe cifs CIFSMaxBufSize=64512
mkdir -p /media/cifs
mount -t cifs \\\\192.168.1.66\\nas /media/cifs -o username=guest,password=guest

2016-02-22更新:新增优酷路由宝挖坑功能;新增s-s脚本指定WAN的域名或IP中转设置。
感谢陈生的优酷插件,感谢101048689 提供优酷插件脚本支持 和提供 7620老毛子Padavan固件 ngrok使用教程
2016-02-22更新注意事项:本次更新了脚本。更新、复位脚本方法:①升级到最新固件②进入管理页面 - 路由器内部存储 (/etc/storage) - 原厂默认值(第二个红色按钮)
2016-02-22更新注意事项:(本次更新了opt文件,需要启动自动更新或者删除U盘根目录“opt”文件夹后重启自动下载更新,也可手动下载opt解压覆盖文件更新,安装方法看下面说明)


旧更新记录:
2016-02-16更新:新增脚本自动更新(重启后更新);新增s-s脚本的UDP转发(能用来玩游戏了);建议转发的TCP端口填上22,80,443【强烈建议更新此版本后更新脚本】
2016-02-04更新:①在使用防火墙 - 网址过滤、 MAC访问控制的过滤程序时,若启动adbyby、SS,需要开启【阻止访问路由器的主机】功能,才能成功过滤。
②S-S脚本修改,不用每次启动下载chnroutes。
2016-01-30更新:①降低闪存的SPI频率(估计以前的频率太高有些路由不能开机)。
②S-S添加DNS 服务程序选择,抵抗DNS污染(如果出现一些网页不能打开,可以尝试其他DNS 服务程序)。
③添加计划任务开关(默认关闭,需要手动开启【系统管理 - 服务 - cron守护程序】)。
如果百度云不能启动,需要把U盘的opt删掉,等脚本自动更新就能启动了
2016-01-22更新:1、感谢bigandy提供的S-S源码和WebUI模板,现在已经内置固件里面了。
2、添加了WebUI,经过十来天的脚本代码重构适配WebUI,初步测试可以用,但是脚本大改后会出现BUG,大量BUG等你发现。(遇到问题请回贴说明设置、日志等情况,我都会看的)
3、修复百度云同步软件1小时后关闭问题,添加adbyby的IPSET过滤模式。
2016-01-02 更新:修复01-01版本的VPN错误;添加KMS服务程序(在【运行路由器启动后】脚本设置启动);添加排除IP设置,可停用指定IP的S-S、adbyby功能;更新aria2-1.19.3。
2015-12-28更新:【重要,建议更新】修复24号脚本一处BUG:只启用adbyby时添加规则错误问题。添加中继守护功能。添加按钮启动功能:可不设置脚本启动参数启动功能
添加【youkuL2】和【newifi2D1】固件【cpu:7621】,注意备份:原厂uboot、eeprom
修正脚本添加ADbyby的加白名单方式,建议不要用第三方规则,免得过滤失效。
建议开启【opt 自动更新】(替换覆盖opt文件夹) upopt=1
1、修复爱奇艺播放器黑屏【需要更新、复位脚本】,添加Pcap_DNSProxy选项(替换ChinaDNS、pdnsd),脚本增加resolveip,server_ip可输入域名和IP
2、使用 pdnsd+chinadns、添加自定义Crontab定时任务配置、添加自定义按钮脚本、添加一个自动下载更新opt文件选项(默认关闭,也可手动下载opt解压覆盖文件更新)
3、添加Emong's Qos脚本,添加adbyby过滤白名单(删除规则实现加白),花生壳内网版(可免U盘运行)、添加迅雷快鸟脚本(可免U盘运行)、添加自动切换中继信号功能、添加VPN智能分流脚本
4、支持任意网段限速、固件版本号添加日期以便区分、添加WIFI的SSID中文支持
5、添加多次检测断线后自动重启功能、更新脚本修复自动安装自定义名称的U盘失效问题、可以安装到SD卡。
6、修复中文乱码、Busybox支持中文显示、添加迅雷脚本、添加QOS脚本、增加多次检测断线后自动重启功能、修复代理方案一CPU占用100%的问题、修复aria2配置错误问题
7、添加安装到内存运行轻量级隧道代理启(需要空余内存:10M)、添加代理方案二,提醒一下,电脑的DNS服务器的IP设置路由IP,全部交给路由器去解析
8、调整脚本配置到一个页面,添加SyncY——可在路由器上运行的百度网盘同步软件
9、添加轻量级隧道代理启动脚本(可以ss和adbyby同时运行),下面有设置教程
10、自定义脚本adbyby添加CPU负载监控(满负载自动关闭adbyby),自定义adblock规则、重启和DDNS子程序(32M内存建议不要用adblock规则)

Y1S的3个USB能正常供电使用了,感谢绿色的蝈蝈提供gpio
根据luhua分享的定时任务方法,脚本添加定时重启设置
轻量级隧道代理启动脚本大部分参考HOUZI的博客内容,谢谢提供

改华硕[N14U N54U]5G 2G的7620老毛子Padavan固件(有transmission aria2)

Padavan固件的UI打开、设置速度比原厂固件响应迅速,虽然Padavan固件去掉QoS(和IPv4 H/W NAT一起工作会出现问题), 但是添加很多功能,有transmission、aria2和HWNAT硬件加速的功能。

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

默认密码
网关:192.168.1.1;192.168.123.1管理页面:【http://my.router/】
管理账号:admin/admin
wifi:1234567890
刷机恢复默认值

注意事项
1、按键10秒原厂默认值
2、使用transmission、aria前,需要手动在u盘上建一个transmission目录或aria目录。(文件名必须小写字母)
3、使用Optware、Entware前,需要手动在u盘上建一个opt目录。(文件名必须小写字母)

转:[N56U、N65U、N54U、N14U]Padavan韧体学习与研究:(云盘有doc版)
http://www.5i01.cn/topicdetail.php?f=110&t=3772592&p=1

Padavan固件源码:
https://bitbucket.org/padavan/rt-n56u/src

建议配合使用H大的breed使用:
http://www.right.com.cn/forum/thread-161906-1-1.html

下载地址:
http://pan.baidu.com/s/1qWr367y

更多高级功能教程网站:http://rt.cn2k.net/

固件说明
基本上CPU是MT7620A/N的路由,只要配置相同,复位键相同就能用

固件名称 固件配置
RT-N14U_GPIO_1_7620_128M MT7620A/N通用,复位键GPIO#1,16M闪存,128M内存,2.4GWi-Fi,USB,SD卡
RT-N14U_GPIO_13_7620_128M MT7620A/N通用,复位键GPIO#13,16M闪存,128M内存,2.4GWi-Fi,USB,SD卡
RT-N14U_GPIO_1_youku1_128M 优酷路由宝,复位键GPIO#1,16M闪存,128M内存,2.4GWi-Fi,USB,SD卡
RT-N14U_GPIO_12_xiaodu_ji1S_128M 小度路由/极路由-极壹S(HC5661),复位键GPIO#12,16M闪存,128M内存,2.4GWi-Fi,USB,SD卡
RT-N14U_GPIO_1_RY1_64M 如意云ry1,复位键GPIO#1,8/16M闪存,64M内存,2.4GWi-Fi,USB,SD卡
RT-N14U_GPIO_26_ZTEQ7_64M 中兴ZTEQ7,复位键GPIO#26,8/16M闪存,64M内存,2.4GWi-Fi,USB,SD卡
RT-N14U_GPIO_2_FIR300M_32M 斐讯FIR300M/302M,复位键GPIO#2,4M闪存,32M内存,2.4GWi-Fi
RT-AC1200-GPIO-38-ji1A-128M 极路由-极壹S(HC5661A),复位键GPIO#38,16M闪存,128M内存,2.4GWi-Fi,USB,SD卡
RT-AC51U_GPIO_12_ji2_128M 极路由-极贰(HC5761),复位键GPIO#12,16M闪存,128M内存,2.4/5GWi-Fi,USB,SD卡
RT-AC1200HP-GPIO-12-JI3-128M 极路由-极三(HC5861),复位键GPIO#12,16M闪存,128M内存,2.4/5GWi-Fi,USB、LAN一个千兆口
RT-AC1200HP_GPIO_52_1166DHP_128M 水牛1166DHP,复位键GPIO#52,16M闪存,128M内存,2.4/5GWi-Fi,USB、LAN一个千兆口
RT-AC54U_GPIO_11_newifimini_128M 联想Y1(newifi mini),复位键GPIO#11,16M闪存,128M内存,2.4/5GWi-Fi,USB
RT-AC54U_GPIO_30_xiaomimini_128M 小米Mini,复位键GPIO#30,16M闪存,128M内存,2.4/5GWi-Fi,USB
RT-AC1200HP_GPIO_11_Y1S_256M 联想Y1S(newifi),复位键GPIO#11,16M闪存,256M内存,2.4/5GWi-Fi,USB * 3个,WAN、LAN各一个千兆口(端口反转)
RT-N14U-GPIO-53-BUFFALO-WHR-300HP2-64M BUFFALO-WHR-300HP2,WPS键GPIO#53,8M闪存,64M内存,2.4GWi-Fi
RT-AC51U_GPIO_1_PSG712_64M 斐讯PSG712,WPS键GPIO#1,8M闪存,64M内存,2.4/5GWi-Fi
RT-AC54U_GPIO_1_PSG1208_64M 斐讯PSG1208,WPS键GPIO#1,8M闪存,64M内存,2.4/5GWi-Fi
RT-N14U_GPIO_1_WT3020H_64M 乐携WT3020迷你无线路由器,WPS键GPIO#1,8M闪存,64M内存,2.4Wi-Fi,USB
RT-N14U_GPIO_12_5K_64M 5K无线路由器,WPS键GPIO#12,16M闪存,64M内存,2.4Wi-Fi,USB
RT-N56UB1_newif2D1_256M 联想newif2(D1),WPS键GPIO#15,复位键键GPIO#18,32M闪存,256M内存,2.4/5GWi-Fi,USB2.0 * 2个,SD卡
RT-N56UB1_youkuL2_256M 优酷路由宝L2,WPS键GPIO#17,复位键键GPIO#18,16M闪存,256M内存,2.4/5GWi-Fi,USB3.0,SD卡
RT-AC51U、RT-N56U、RT-N65U RT-AC51U、RT-N56U、RT-N65U华硕专用版

更新、复位脚本方法

①升级到最新固件②路由器内部存储 (/etc/storage) - 原厂默认值

owncloud配置教程:

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

共享查看SD卡说明

管理网页UI那里只显示U盘,不显示SD卡,很多人以为SD不能用,其实极1S和极2的固件我都启用的SD卡驱动,  插入SD卡后,你到看看路由是否有这个文件 【/dev/mmcblk[0-9]p[0-9]】
如果有,就说明驱动成功,正常情况会自动挂载到【/media/AiDisk_01】路径。
再去看看【/media/AiDisk_01】,如果有文件夹就说明自动挂载成功(需要共享查看可以看下面图片设置),可以在脚本选择opt安装模式1,就能把opt放到SD卡里。

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

老毛子固件格式化SD卡、USB方法:
1、管理页面删除挂载
2、Telnet输入【fdisk -l】查看查看分区路径
3、输入【mkfs.ext4 /dev/mmcblk0p1】等待2分钟
4、输入【mdev -s】重新挂载

控制台说明
控制台刷breed或者原厂uboot方法
1.查看uboot分区名:cat /proc/mtd
2.通过winscp或其他方式,将breed.bin文件上传至路由器/tmp/目录下,breed.bin必须小于等于128kb。
3.mtd_write write /tmp/breed.bin Bootloader
4.等2秒搞定,重启
7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

VPN客户端智能分流脚本
由于有些外服游戏限制IP,而且游戏端口无法使用S/s端口,所以用VPN能解决大部分游戏封锁
加入智能分流脚本后就能减轻vpn的负担, 和增加访问国内网站的速度.(VPN分流脚本来自:https://github.com/fivesheep/chnroutes
新固件只需在按钮设置启动功能即可
首页要有VPN的账号密码,接下来按照下图设置保存设置。

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

轻量级隧道代理、ADBYBY脚本(可以ss和adbyby同时运行)

新固件只需在扩展功能设置启动功能即可

轻量级隧道代理的【代理转发的TCP端口】需要填22,80,443或者留空, 加密方式用小写填写

更新、复位脚本方法:①升级到最新固件②路由器内部存储 (/etc/storage) - 原厂默认值

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

②ADBYBY默认关闭的,需要进入扩展功能修改启动。

自定义过滤广告方法

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

③轻量级隧道代理默认关闭的,需要进入扩展功能修改启动。

可添加方案二的gfwlist内部网络(LAN) - DHCP服务器 - 自定义配置文件 "dnsmasq.servers"
添加例子
server=/.tvb.com/208.67.222.222#443
ipset=/.tvb.com/gfw_black_list

额外功能:(需要到自定义脚本0设置
# LAN代理转发设置,0关闭(全部LAN转发),1排除以下LAN的IP转发,2只转发以下LAN的IP。
LAN_AC_IP=0
nvram set LAN_AC_IP=$LAN_AC_IP
# 以下 IP 使用 轻量级隧道代理(临时修改方法:系统管理 - 控制台输入以下命令)
# 把该内网IP加入该ss_spec_lan_ac集合
# ipset add ss_spec_lan_ac 192.168.2.115
# 取消:把该内网IP从该ss_spec_lan_ac集合中删除(清除DNS缓存、重启浏览器后生效)
# ipset del ss_spec_lan_ac 192.168.2.115
# (可选项:删除前面的#可生效)
cat > "/tmp/ss_spec_lan_DOMAIN.txt" <<-\EOF
#192.168.2.115

EOF

# 强制WAN的IP转发或忽略代理中转设置
# 以下WAN@开头的 IP 使用 代理中转(临时修改方法:系统管理 - 控制台输入以下命令)
# 把需要中转的外网ip加入、删除nochina集合中(清除DNS缓存、重启浏览器后生效)
# ipset add nochina 8.8.8.8
# ipset del nochina 8.8.8.8
# =========================================================
# 以下WAN!开头的 IP 忽略 代理中转
# 把忽略中转的外网ip加入、删除nogfwnet集合中
# ipset add nogfwnet 114.114.114.114
# ipset del nogfwnet 114.114.114.114
# =========================================================
# (可选项:删除前面的#可生效)
cat > "/tmp/ss_spec_wan_DOMAIN.txt" <<-\EOF
WAN@raw.githubusercontent.com
#WAN@8.8.8.8
#WAN!114.114.114.114
#WAN@www.google.com
#WAN!www.baidu.com

EOF

自定义按钮脚本

按钮控制脚本在【按WPS / FN 运行按钮脚本:】

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

SyncY同步软件脚本

新固件只需在扩展功能设置启动功能即可

SyncY——可在路由器上运行的百度网盘同步软件
SyncY同步软件技术博客:http://www.syncy.cn/

#SyncY配置文件路径(写字板打开修改):\\192.168.1.1\Media\AiDisk_a1\opt\etc\syncy
#配置说明:http://www.syncy.cn/index.php/syncyconfighelp/
#同步模式类型:upload,upload+,download,download+,sync (同步模式需要自行打开配置文件修改)

#SyncY配置文件路径(记事本打开修改):\\192.168.1.1\Media\AiDisk_a1\opt\etc\syncy
#SyncY配置文件说明:http://www.syncy.cn/index.php/syncyconfighelp/"
#可以多个同步目录,直接修改配置文件:复制多一个config syncpath配置节,然后修改相应的localpath、remotepath等就可以了。
#默认本地同步目录:option localpath '/media/AiDisk_a1/SyncY'
#默认云端目录(与/我的应用数据/SyncY的相对目录):option remotepath '/apps/SyncY/AiDisk_a1'
#默认同步模式-本地上传云端备份(如需下载或同步模式可按照上面网页说明修改配置):option synctype 'upload+'

第一次绑定设备需要不断点击“刷新”获取用户码进行进行授权(请在出现用户码后100秒内进行绑定,超时需重启路由重再次授权)
百度授权页面 https://openapi.baidu.com/device
7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱
删除授权方法:修改配置文件,删除config syncytoken配置节内容即可

自定义DDNS脚本、花生壳内网版
自定义DDNS脚本(取自网络)
7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

花生壳内网版

新固件只需在扩展功能设置启动功能即可

需要安装opt
需要CPU、内存比较多,建议使用swap增加内存
运行后【刷新日志】获取SN码。使用SN账号在【 http://b.oray.com 】默认密码是admin登录.。默认密码是admin,然后进行修改默认密码、手机验证、邮箱验证和已有的花生壳账号绑定,首次使用需要支付宝验证。
绑定后需【提交】内部存储,不然重启会丢失绑定。需要重新短信验证再绑定
系统管理 - 恢复/导出/上传设置 - 路由器内部存储 (/etc/storage) - 【提交】

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱
如果打勾连不上可以试试取消打勾

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

启动:/opt/phddns2/oraynewph.sh start &
查看状态:/opt/phddns2/oraynewph.sh status &
重置应用:/opt/phddns2/oraynewph.sh reset &
停止:/opt/phddns2/oraynewph.sh stop &
卸载:/opt/phddns2/oraynewph.sh uninstall &
卸载能解除SN绑定

swap分区自动挂载功能
用MiniTool分区U盘,前面NTFS分区格式,后面swap分区格式。插入后就能自动挂载了。
7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

Aria2下载管理器
1、使用Aria2前,需要在u盘上建一个aria目录。(文件名必须小写字母)
2、打开 http://aria2c.com/ 进行设置,默认没加密:http://192.168.1.1:6800/jsonrpc
7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

3、如果提示 Aria2 RPC 服务器错误 按照以下方法修改(如配置失败可清空aria目录重新开始配置)
如需加密请手动修改配置文件
选项设置为: 配置文件中rpc-secret=xxxxxx
选项设置为: http://token:xxxxxx@host:port/jsonrpc
host: 指运行 Aria2 所在机器的 IP 或者DDNS绑定的网址
port: 使用 --rpc-listen-port 选项设置的端口, 未设置则是 6800
配置DDNS使用能达到远程下载的效果

迅雷远程下载安装

新固件只需在扩展功能设置启动功能即可

启动后系统日志会提示说明

启动xunlei,绑定设备页面http://yuancheng.xunlei.com
在浏览器中输入http://192.168.1.1:9000/getsysinfo(IP替换为你路由器的IP,端口换为你的控制端口),会看到类似如下信息:
[ 0, 1, 1, 0, "42SND1",1, "201_2.1.3.121", "", 1 ]
其中有用的几项为:
第一项:0表示返回结果成功
第二项:1表示检测网络正常,0表示检测网络异常
第四项:1表示已绑定成功,0表示未绑定
第五项:未绑定的情况下,为绑定的需要的激活码
第六项:1表示磁盘挂载检测成功,0表示磁盘挂载检测失败

迅雷快鸟
一个可以运行在路由器的迅雷快鸟(diǎo)客户端(脚本来自:https://github.com/fffonion/Xunlei-FastDick

①在【运行路由器启动后:】需要进入扩展功能修改启动、迅雷账号和密码。(需要插入U盘安装opt)
②根据提示,稍等几分钟,可以ssh到路由,或者控制台输入ps命令查看swjsq进程是否存在,是否正常启动,提速是否成功。
③由于是后台脚本运行,看不到输出信息提示,如果想看什么错误问题,可以在控制台输入【python /opt/FastDick/swjsq.py】查看错误信息

修复Entware安装问题

感谢twovl提供Entware安装方法:
Entware按照github上不好用,还得按照google code上说的才行,主要就是在u盘上创建opt文件夹,然后卸载u盘,打开entware功能,再重新插上u盘就好了(如果/opt/里面没文件可以试试先关闭再打开entware功能刷新文件)
Entware出现【'/opt/lib/libstdc++.so.6' is not an ELF file】错误修复方法http://www.right.com.cn/forum/thread-164518-1-1.html
Entware软件:  https://www.hqt.ro/category/entware/    https://www.asuswrt.eu/category/entware/
Entware软件安装例子:http://www.chiphell.com/thread-933249-1-1.html

SD卡问题
SD卡不能激活USB程序的服务,服务功能还是需要插U盘

手动挂载命令(按自己需求修改路径):
"exfat"
mount -t exfat /dev/mmcblk0p1 /media/AiDisk_01 -o noatime,umask=0,iocharset=utf8

"vfat"
mount -t vfat /dev/mmcblk0p1 /media/AiDisk_01 -o noatime,umask=0,iocharset=utf8,codepage=936,shortname=winnt

"ntfs"
mount -t ufsd /dev/mmcblk0p1 /media/AiDisk_01 -o noatime,sparse,nls=utf8,force

"ext4"
mount -t ext4 -o noatime /dev/mmcblk0p1 /media/AiDisk_01

无线中继方法
建议使用  20MHz  信道带宽
AP + AP Client,受限制的万能,兼容任何厂牌的上级AP,毋须设置上级AP,受上级AP的信道影响。(需要固定上级路由的信道,增强功能:可用自动切换中继信号脚本搜寻信道、信号)
路由中继选项:
无线AP-Client角色:接LAN就要关闭本路由DHCP,上级路由开启DHCP,本路由的IP不能和上级一样。例子:一个是192.168.1.1,另一个是192.168.1.2。
无线AP-Client角色:接WAN就要开启本路由DHCP,上级路由开启DHCP,本路由的IP不能和上级同网段。例子:一个是192.168.1.1,另一个是192.168.2.1。

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

首先取得中继信号的配置信息,按照下图说明填写参数。
当在中继状态下断线,路由会自动搜寻设定的信号

启动功能需要配置两个参数:
# AP中继连接守护功能,当中继信号断开时启动自动搜寻
apauto=1

# 【自动切换中继信号】功能 0关闭;填写配置参数启动
ap2g5g="2@4@1@ASUS@1234567890"

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

QOS脚本

建议只使用脚本1
脚本①任意网段限速QOS脚本:
1、改脚本中参数1启动脚本
#qos 功能 0关闭;1启动
qoss=1
2、配置参数
禁用硬件NAT:"请设置:①外部网络(WAN) - 互联网设置 -> Hardware Offload NAT/Routing IPv4(HWNAT加速): -> Disable"
①IP限速设置,单位[KB/S]
一定要设置IP限速,未定义的IP带宽减半,如启用adbyby,因7620的CPU瓶颈,宽带峰值50M
配置单IP自定义限制速率,注意数字之间的空格: (可选项:删除前面的#可生效)
IP地址 最大下载速度 下载保证速度 最大上传速度 上传保证速度
#192.168.1.115 2560 100 200 20
192.168.1.2-192.168.1.244 2560 100 100 15

②连接数限制
如果开启该功能后,打开下载软件可能会导致QQ等聊天软件掉线。(因为连接数量会被占光)
IP地址 TCP连接数 UDP连接数 (可选项:删除前面的#可生效)
#192.168.1.10 100 100
192.168.1.20-192.168.1.25 100 100

③端口优先优先端口不会被打标记进入列队(不会被流量控制和处理优先级),可添加对延迟要求高的应用端口。
请勿添加下载应用的端口80、8080等等。由于没有被流量控制和处理优先级,下载应用会占用大量资源导致网络卡
(可选项:删除前面的#可生效)
UDP 53
TCP 22
TCP 23
#TCP 443
TCP 1723
#TCP 3389
TCP 3724,1119,1120
TCP 28012,10008,13006,2349,7101:7103
UDP 2349,12000:12175

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱

3、点击应用保存脚本并重启,不能断电重启,要点击右上角重启按钮

备注:此脚本是从Emong's Qos脚本修改移植

脚本②:
启动方法:
1、禁用硬件NAT:"QOS" "请设置:①外部网络(WAN) - 互联网设置 -> Hardware Offload NAT/Routing IPv4(HWNAT加速): -> Disable"
2、SSH(OR WinSCP)打开路由器/etc/storage/qos.conf的配置文件:修改的QoS功能的变量QOS_ENABLED="YES"(全部大写)
3、重启后生效

由于只有优先级控制,比较鸡肋的QOS,有能力大神可以尝试整合其他Tomato QOS脚本
## 变量的顺序是(优先级最低在前):
## TCP_BULK, UDP_BULK, TCP_PRIO, UDP_PRIO, TCP_EXPR, UDP_EXPR
## TOS_BULK,                    TOS_PRIO,                   TOS_EXPR
## DSCP_BULK,                  DSCP_PRIO,                 DSCP_EXPR
## IP_BULK,                        IP_PRIO,                      IP_EXPR

备注:此脚本是从moonman的QOS脚本修改移植,原文地址:https://github.com/moonman/rt-n56u

SSH可执行命令:

Pcap_DNSProxy killall restart_firewall
[ klogd restart_networkmap
[[ l2tp-control restart_vpn_client
addgroup l2tpd restart_vpn_server
adduser lan_eeprom_mac restart_wan
aria.sh lanauth rm
aria2c ldconfig rmdir
arp ldd rmmod
arping lld2d route
ash ln rpc.mountd
automount.sh logger rpc.nfsd
awk login rstats
badblocks lpd rt2860apd
basename ls rtinicapd
bash lsmod run_aria
bcrelay lsof run_firefly
blkid lsusb run_ftp
brctl md5sum run_ftpsamba
bunzip2 mdev run_minidlna
busybox mdev_lp run_nfsd
bzcat mdev_net run_samba
bzip2 mdev_sd run_telnetd
cat mdev_sg run_transmission
check_svc.sh mdev_sr scp
chgrp mdev_tty sed
chinadns mdev_wdm sendmail
chmod microcom seq
chown mii_mgr sh
chpasswd mii_mgr_cl45 shutdown
chroot minidlnad sleep
clear miniupnpd smbd
comgt mkdir smbmulti
cp mke2fs smbpasswd
cpu mkfs.ext2 sn_youku
crond mkfs.ext3 sort
crontab mkfs.ext4 spindown.sh
curl mknod ss-local
cut mkswap ss-redir
date modprobe ss-rules
dd more ss-server
ddns_updated mount ss-tunnel
detect_internet mountpoint ssh
detect_link mt-daapd sshd.sh
detect_wan mtd_storage.sh start-stop-daemon
dev_init.sh mtd_write start_ddns
df mtk_esw stat
dhcp6c mv stop_aria
dirname netstat stop_firefly
dmesg networkmap stop_ftp
dnsdomainname nfsd.sh stop_ftpsamba
dnsmasq nice stop_minidlna
dos2unix nmbd stop_nfsd
dosfsck nslookup stop_samba
dropbear ntpc_updated stop_transmission
dropbearconvert ntpd stop_wan
dropbearkey nvram strings
dropbearmulti on_hotplug_printer.sh swapoff
du on_wps.sh swapon
e2fsck openssl switch
e2undo openvpn switch_root
e4defrag openvpn-cert.sh sync
ebtables opkg sysctl
echo opkg.sh syslogd
egrep opt-ipkg-upd.sh tail
eject opt-mkswap tar
ejusb opt-mount.sh tc
ejusb1 opt-opkg-upd.sh tcpdump
env opt-start.sh tee
ether-wake opt-umount.sh telnetd
exportfs ovpn_export_client test
expr p910nd test_share
FALSE parted time
fdisk passwd top
fgrep pdnsd touch
find pdnsd-ctl tr
flock pgrep traceroute
free pidof traceroute6
fsck.ext2 pids transmission-daemon
fsck.ext3 ping transmission.sh
fsck.ext4 ping6 TRUE
fuser portmap tune2fs
getykbdlink pppd u2ec
grep pptpctrl udhcpc
guard pptpd udpxy
gunzip printf umount
gzip ps uname
halt pwd uniq
hddtune.sh python unix2dos
hdparm python2 unlink
head python2.7 update_iptables.sh
hostname qos.sh uptime
hotplug radio2_disable uqmi
httpd radio2_eeprom_mac usb_modeswitch
https-cert.sh radio2_enable usleep
hub-ctrl radio2_guest_disable vconfig
hw_nat radio2_guest_enable vi
ifconfig radio2_restart vsftpd
igmpproxy radio2_toggle wan_eeprom_mac
ikuacc radio2_toggle_off watch
inadyn radio2_toggle_on watchdog
inetd radio5_disable wc
infosvr radio5_eeprom_mac wget
init radio5_enable which
insmod radio5_guest_disable whoami
ip radio5_guest_enable wpa_cli
ip6tables radio5_restart wpa_supplicant
ip6tables-restore radio5_toggle xargs
ip6tables-save radio5_toggle_off xl2tpd
ipkg.sh radio5_toggle_on xtables-multi
ipset radvd xupnpd
iptables rc yes
iptables-restore reboot zcat
iptables-save reset_ss.sh zcip
iwconfig reset_to_defaults zerocd
iwpriv restart_dhcpd
kill restart_dns
QOS脚本:修改日期2015-11-8

  1. #!/bin/sh
  2. #copyright by Emong's Qos update hiboy
  3. export PATH=/opt/sbin:/opt/bin:/opt/usr/sbin:/opt/usr/bin:/usr/sbin:/usr/bin:/sbin:/bin
  4. export LD_LIBRARY_PATH=/opt/lib:/lib
  5. # qos 功能 0关闭;1启动
  6. qoss=0
  7. # 当在线终端≤2台时取消限速.(路由端1+电脑端1=2台)
  8. qosb=2
  9. # 默认为20M
  10. DOWN=2560
  11. UP=256
  12. logger -t "QOS" "最大下载$DOWN KB/S,最大上传$UP KB/S"
  13. # IP限速设置
  14. # 未设置的IP带宽减半,如启用adbyby,因7620的CPU瓶颈,宽带峰值50M
  15. # 注意参数之间有空格
  16. # 可选项:删除前面的#可生效
  17. # [KB/S]IP地址 最大下载 下载保证 最大上传 上传保证
  18. cat > "/tmp/qos_ip_limit_DOMAIN.txt" <<-EOF
  19. #192.168.1.115 2560 100 200 20
  20. 192.168.1.2-192.168.1.244 2560 100 100 15
  21. EOF
  22. # 连接数限制
  23. #如果开启该功能后,打开下载软件可能会导致QQ等聊天软件掉线.(因为连接数量会被占光)
  24. # IP地址 TCP连接数 UDP连接数
  25. cat > "/tmp/qos_connlmt_DOMAIN.txt" <<-EOF
  26. #192.168.1.10 100 100
  27. 192.168.1.20-192.168.1.25 100 100
  28. EOF
  29. # 端口优先
  30. # 请勿添加下载应用的端口80、8080等等.由于没有被流量控制和处理优先级,下载应用会占用大量资源导致网络卡
  31. # 协议 端口
  32. cat > "/tmp/qos_port_first_DOMAIN.txt" <<-EOF
  33. UDP 53
  34. TCP 22
  35. TCP 23
  36. #TCP 443
  37. TCP 1723
  38. #TCP 3389
  39. TCP 3724,1119,1120
  40. TCP 28012,10008,13006,2349,7101:7103
  41. UDP 2349,12000:12175
  42. EOF
  43. load_var() {
  44.         WAN_IF="imq1"
  45.         LAN_IF="imq0"
  46.         WAN_IFT=$(nvram get wan0_ifname_t)
  47.         IPM="iptables -t mangle"
  48.         lan_ip="`nvram get lan_ipaddr`/24"
  49. }
  50. load_modules(){
  51. [ ! -f /tmp/qos-emong-modules ] && {
  52.         modprobe act_connmark        #缺,补621-sched_act_connmark.patch@597
  53.         for module in imq ipt_IMQ ipt_web xt_length xt_hashlimit cls_fw sch_htb sch_sfq sch_red xt_length xt_IMQ ipt_ipp2p xt_dscp xt_DSCP cls_u32 sch_hfsc sch_prio ipt_multiport ipt_CONNMARK ipt_length ipt_hashlimit xt_connlimit xt_connbytes ipt_connlimit em_u32 sch_ingress act_mirred
  54.         do
  55.                 modprobe $module
  56.         done
  57.         modprobe imq numdevs=1
  58.         echo >/tmp/qos-emong-modules
  59.         }
  60. }
  61. qos_stop() {
  62.         tc qdisc del dev $WAN_IF root
  63.         tc qdisc del dev $LAN_IF root
  64.         $IPM -F
  65.         $IPM -X UP
  66.         $IPM -X DOWN
  67.         $IPM -X IP_DOWN
  68.         $IPM -X IP_UP
  69. }
  70. qos_start(){
  71.         ip link set imq0 up
  72.         ip link set imq1 up
  73.         tc qdisc add dev $WAN_IF root handle 1: htb
  74.         tc qdisc add dev $LAN_IF root handle 1: htb
  75.         tc class add dev $WAN_IF parent 1: classid 1:2 htb rate $((UP))kbps
  76.         tc class add dev $LAN_IF parent 1: classid 1:2 htb rate $((DOWN))kbps
  77.         tc class add dev $WAN_IF parent 1: classid 1:1 htb rate $((UP*95/100))kbps
  78.         tc class add dev $WAN_IF parent 1:1 classid 1:11 htb rate $((UP*5/10))kbps prio 1
  79.         tc class add dev $WAN_IF parent 1:1 classid 1:12 htb rate $((UP*5/10))kbps ceil $((UP*9/10))kbps prio 2
  80.         tc class add dev $WAN_IF parent 1:12 classid 1:121 htb rate $((UP*4/10))kbps ceil $((UP*8/10))kbps prio 1
  81.         tc class add dev $WAN_IF parent 1:12 classid 1:122 htb rate $((UP*1/10))kbps ceil $((UP*4/10))kbps prio 2
  82.         tc class add dev $WAN_IF parent 1:12 classid 1:123 htb rate $((UP*4/10))kbps ceil $((UP*6/10))kbps prio 3
  83.         tc qdisc add dev $WAN_IF parent 1:11 handle 11: sfq perturb 10
  84.         tc qdisc add dev $WAN_IF parent 1:121 handle 121: sfq perturb 10
  85.         tc qdisc add dev $WAN_IF parent 1:122 handle 122: sfq perturb 10
  86.         tc qdisc add dev $WAN_IF parent 1:123 handle 123: sfq perturb 10
  87.         tc filter add dev $WAN_IF parent 1: handle 0x10/0xfff0 fw classid 1:11
  88.         tc filter add dev $WAN_IF parent 1: handle 0x20/0xfff0 fw classid 1:121
  89.         tc filter add dev $WAN_IF parent 1: handle 0x30/0xfff0 fw classid 1:122
  90.         tc filter add dev $WAN_IF parent 1: handle 0x40/0xfff0 fw classid 1:123
  91.         tc class add dev $LAN_IF parent 1: classid 1:1 htb rate $((DOWN*95/100))kbps
  92.         tc class add dev $LAN_IF parent 1:1 classid 1:11 htb rate $((DOWN*5/10))kbps prio 1
  93.         tc class add dev $LAN_IF parent 1:1 classid 1:12 htb rate $((DOWN*5/10))kbps ceil $((DOWN*9/10))kbps prio 2
  94.         tc class add dev $LAN_IF parent 1:12 classid 1:121 htb rate $((DOWN*4/10))kbps ceil $((DOWN*8/10))kbps prio 1
  95.         tc class add dev $LAN_IF parent 1:12 classid 1:122 htb rate $((DOWN*1/10))kbps ceil $((DOWN*4/10))kbps prio 10
  96.         tc class add dev $LAN_IF parent 1:12 classid 1:123 htb rate $((DOWN*4/10))kbps ceil $((DOWN*6/10))kbps prio 3
  97.         tc qdisc add dev $LAN_IF parent 1:11 handle 11: sfq perturb 10
  98.         tc qdisc add dev $LAN_IF parent 1:121 handle 121: sfq perturb 10
  99.         tc qdisc add dev $LAN_IF parent 1:122 handle 122: sfq perturb 10
  100.         tc qdisc add dev $LAN_IF parent 1:123 handle 123: sfq perturb 10
  101.         tc filter add dev $LAN_IF parent 1: handle 0x10/0xfff0 fw classid 1:11
  102.         tc filter add dev $LAN_IF parent 1: handle 0x20/0xfff0 fw classid 1:121
  103.         tc filter add dev $LAN_IF parent 1: handle 0x30/0xfff0 fw classid 1:122
  104.         tc filter add dev $LAN_IF parent 1: handle 0x40/0xfff0 fw classid 1:123
  105.         $IPM -N UP
  106.         $IPM -N DOWN
  107.         $IPM -N IP_UP
  108.         $IPM -N IP_DOWN
  109.         $IPM -I POSTROUTING -o br0 -j DOWN
  110.         $IPM -I PREROUTING -i br0 -j UP
  111.         $IPM -A DOWN -j IMQ --todev 0
  112.         $IPM -A UP -j IMQ --todev 1
  113.         #$IPM -I DOWN -s $lan_ip -j RETURN
  114.         $IPM -I DOWN -p tcp -m multiport --dports 22,53,445,139 -j RETURN
  115.         $IPM -I DOWN -p icmp -j RETURN
  116.         #$IPM -A DOWN -m length --length :100 -j RETURN
  117.         $IPM -A DOWN -j MARK --set-mark=0x41
  118.         $IPM -A DOWN -m length --length 1024:1500 -j MARK --set-mark=0x31
  119.         $IPM -A DOWN -p tcp -m multiport --dports 21,80,443,3389,8118 -j MARK --set-mark=0x21
  120.         $IPM -A DOWN -m length --length :768 -j MARK --set-mark=0x11
  121.         $IPM -A DOWN -j IP_DOWN
  122.         #$IPM -I UP -d $lan_ip -j RETURN
  123.         $IPM -I UP -p tcp -m multiport --sports 22,53,445,139 -j RETURN
  124.         $IPM -I UP -p icmp -j RETURN
  125.         #$IPM -A UP -m length --length :80 -j RETURN
  126.         $IPM -A UP -j MARK --set-mark=0x41
  127.         $IPM -A UP -m length --length 1024:1500 -j MARK --set-mark=0x31
  128.         $IPM -A UP -p tcp -m multiport --sports 21,80,443,3389,8118 -j MARK --set-mark=0x21
  129.         $IPM -A UP -m length --length :512 -j MARK --set-mark=0x11
  130.         $IPM -A UP -j IP_UP
  131. }
  132. connlmt() {
  133.         $IPM -A FORWARD -p tcp -d $1 -m connlimit --connlimit-above $2 -j DROP
  134.         $IPM -A FORWARD -p udp -d $1 -m connlimit --connlimit-above $3 -j DROP
  135. }
  136. ip_limit() {
  137. conns=$6
  138. [ $((conns)) -lt "6" ] && logger -t "QOS" "限速设置[KB/S]IP:$1 最大下载$2 下载保证$3 最大上传$4 上传保证$5"
  139. [ $((conns)) -ge "6" ] && logger -t "QOS" "连接数限制IP:$1 TCP:$2 UDP:$3"
  140. n=$(echo $1|cut -d '-' -f1|cut -d '.' -f4)
  141. m=$(echo $1|cut -d '-' -f2|cut -d '.' -f4)
  142. NET=$(echo $1|cut -d '.' -f1-3)
  143. while [ $n -le $m ]
  144. do
  145.         ip=$n
  146.         if [ $((conns)) -lt "6" ];then
  147.                 [ ${#ip} -lt 3 ] && ip=0$ip
  148.                 [ ${#ip} -lt 3 ] && ip=0$ip
  149.                 var=1
  150.                 tc class add dev $WAN_IF parent 1:2 classid 1:$var$ip htb rate $5kbps ceil $4kbps
  151.                 tc qdisc add dev $WAN_IF parent 1:$var$ip handle $var$ip sfq perturb 10
  152.                 tc filter add dev $WAN_IF parent 1: handle 0x$var$ip fw flowid 1:$var$ip
  153.                 tc class add dev $LAN_IF parent 1:2 classid 1:$var$ip htb rate $3kbps ceil $2kbps
  154.                 tc qdisc add dev $LAN_IF parent 1:$var$ip handle $var$ip sfq perturb 10
  155.                 tc filter add dev $LAN_IF parent 1: handle 0x$var$ip fw flowid 1:$var$ip
  156.                 $IPM -A IP_DOWN -d $NET.$n -j MARK --set-mark 0x$var$ip
  157.                 $IPM -A IP_UP -s $NET.$n -j MARK --set-mark 0x$var$ip
  158.         else
  159.                 connlmt $NET.$n $2 $3
  160.         fi
  161. n=$((n+1))
  162. done
  163. }
  164. port_first() {
  165. logger -t "QOS" "端口优先:$1 $2"
  166. $IPM -I DOWN -p $1 -m multiport --dports $2 -j RETURN
  167. $IPM -I UP -p $1 -m multiport --sports $2 -j RETURN
  168. }
  169. if [ "$qoss" != "0" ] && [ -f "/lib/modules/$(uname -r)/kernel/net/netfilter/xt_IMQ.ko" ]; then
  170.         if [ $(cat /tmp/qos_state) -eq 1 ]; then
  171.         logger -t "QOS" "正在运行"
  172.         exit
  173.         else
  174.         echo 1 >/tmp/qos_state
  175.         fi
  176.         logger -t "QOS" "启动QOS成功"
  177.         echo 1 >/tmp/qoss_state
  178.         load_var
  179.         load_modules
  180.         qos_stop
  181.         qos_start
  182.         while read line
  183.         do
  184.         c_line=`echo $line |grep -v "#"`
  185.         if [ ! -z "$c_line" ] ; then
  186.                 ip_limit $line
  187.         fi
  188.         done < /tmp/qos_ip_limit_DOMAIN.txt
  189.         while read line
  190.         do
  191.         c_line=`echo $line |grep -v "#"`
  192.         if [ ! -z "$c_line" ] ; then
  193.                 line="$line 4 5 6"
  194.                 ip_limit $line
  195.         fi
  196.         done < /tmp/qos_connlmt_DOMAIN.txt
  197.         while read line
  198.         do
  199.         c_line=`echo $line |grep -v "#"`
  200.         if [ ! -z "$c_line" ] ; then
  201.                 port_first $line
  202.         fi
  203.         done < /tmp/qos_port_first_DOMAIN.txt
  204.         if [ ! -f /tmp/qos_scheduler.lock ] ; then
  205.                 /tmp/qos_scheduler.sh $qosb &
  206.         fi
  207.         echo 0 >/tmp/qos_state
  208. else
  209.         logger -t "QOS" "QOS没有开启或闪存不足缺模块"
  210.         echo 0 >/tmp/qoss_state
  211.         ip link set imq0 down
  212.         ip link set imq1 down
  213. fi
  214. logger -t "防火墙规则" "脚本完成"

复制代码

把 dnspod 域名更新的脚本整合到 “运行后WAN上/下活动” 脚本里面,每次断线重连,会自动帮你去更新 dnspod 的ip。
使用方法:
1. 进入 “自定义设置”
2. 选择 “脚本”
3. 点击 运行后WAN上/下活动把下面的内容贴进去并且修改其中的用户名密码,域名和主机名4 这些参数。

  1. #!/bin/sh
  2. ### Custom user script
  3. ### Called after internal WAN up/down action
  4. ### $1 - WAN action (up/down)
  5. ### $2 - WAN interface name (e.g. eth3 or ppp0)
  6. logger  "运行后WAN上/下活动:" "WAN动作:【$1】,WAN接口名称:【$2】"
  7. ### 以下是配置 DNSPOD 动态域名的设置
  8. #################################################
  9. # AnripDdns v5.07.07
  10. # 基于DNSPod用户API实现的动态域名客户端
  11. # 作者: 若海[mail@anrip.com]
  12. # 介绍: http://www.anrip.com/ddnspod
  13. # 时间: 2015-07-07 10:25:00
  14. #################################################
  15. # 如果需要 dnspod作为 ddns ,请将下面这行设置为1
  16. dnspod_ddns=0
  17. if [ $dnspod_ddns="1"  -a $1="up" ] ;then
  18. logger "开始更新dnspod 的域名IP指向"
  19. ###################################################
  20. # 设置部分内容
  21. # 设置用户参数  这里是你在dnspod的用户名密码
  22.         arMail="abc@abc.com"
  23.         arPass="xxxxxxxx"
  24. # 检查更新域名  这里是你要更新的域名, 例如 www.abc.com 就分为  abc.com 和 www 两个参数
  25. # 请注意,这个域名 必须在dnspod 中存在,否则更新会出错,你可以先在dnspod 上建立一个 A 类别的域名,IP可以随便填。
  26.         urdomain="ibm.com"
  27.         urhost="home"
  28. # 设置结束
  29. ###################################################
  30.         # 获得外网地址
  31.         arIpAdress() {
  32.             local inter="http://members.3322.org/dyndns/getip"
  33.             wget --quiet --output-document=- $inter
  34.         }
  35.         # 查询域名地址
  36.         # 参数: 待查询域名
  37.         arNslookup() {
  38.             local inter="http://119.29.29.29/d?dn="
  39.             wget --quiet --output-document=- $inter$1
  40.         }
  41.         # 读取接口数据
  42.         # 参数: 接口类型 待提交数据
  43.         arApiPost() {
  44.             local agent="AnripDdns/5.07(mail@anrip.com)"
  45.             local inter="https://dnsapi.cn/${1:?'Info.Version'}"
  46.             local param="login_email=${arMail}&login_password=${arPass}&format=json&${2}"
  47.             wget --quiet --no-check-certificate --output-document=- --user-agent=$agent --post-data $param $inter
  48.         }
  49.         # 更新记录信息
  50.         # 参数: 主域名 子域名
  51.         arDdnsUpdate() {
  52.             local domainID recordID recordRS recordCD
  53.             # 获得域名ID
  54.             domainID=$(arApiPost "Domain.Info" "domain=${1}")
  55.             domainID=$(echo $domainID | sed 's/.\+{"id":"\([0-9]\+\)".\+/\1/')
  56.             # 获得记录ID
  57.             recordID=$(arApiPost "Record.List" "domain_id=${domainID}&sub_domain=${2}")
  58.             recordID=$(echo $recordID | sed 's/.\+\[{"id":"\([0-9]\+\)".\+/\1/')
  59.             # 更新记录IP
  60.             recordRS=$(arApiPost "Record.Ddns" "domain_id=${domainID}&record_id=${recordID}&sub_domain=${2}&record_line=默认")
  61.             recordCD=$(echo $recordRS | sed 's/.\+{"code":"\([0-9]\+\)".\+/\1/')
  62.             # 输出记录IP
  63.             if [ "$recordCD" == "1" ]; then
  64.                 logger  `echo $recordRS | sed 's/.\+,"value":"\([0-9\.]\+\)".\+/\1/'`
  65.                 return 1
  66.             fi
  67.             # 输出错误信息
  68.             logger  `echo $recordRS | sed 's/.\+,"message":"\([^"]\+\)".\+/\1/'`
  69.         }
  70.         # 动态检查更新
  71.         # 参数: 主域名 子域名
  72.         arDdnsCheck() {
  73.             local postRS
  74.             local hostIP=$(arIpAdress)
  75.             local lastIP=$(arNslookup "${2}.${1}")
  76.             logger "目前的IP: ${hostIP}"
  77.             logger "原来的IP: ${lastIP}"
  78.             if [ "$lastIP" != "$hostIP" ]; then
  79.                 postRS=$(arDdnsUpdate $1 $2)
  80.                 logger "提交的IP: ${postRS}"
  81.                 if [ $? -ne 1 ]; then
  82.                     return 0
  83.                 fi
  84.             fi
  85.             return 1
  86.         }
  87.         arDdnsCheck $urdomain $urhost
  88. fi

复制代码

12月27 日更新:修正一个SD卡分区对应挂载点编号+1的问题。

用于 部分带TF卡或者SD的路由,不插U盘时候可以自动samba SD卡共享的脚本,例如极路由、路由宝系列路由器。

使用方法:
1. 进入 “自定义设置”
2. 选择 “脚本”
3. 选择 “运行路由器启动后:”
4. 找到

### SD卡挂载
/sbin/automount.sh mmcblk0p1 AiDisk_01

这行,以底下的代码替换

  1. ### SD卡挂载
  2. #以下内容进对于自带TF或者SD卡的路由有效。
  3. #自动 mount tf 卡
  4. #from hiboy
  5. ls -l /dev | grep -Eo "mmcblk[0-9]p[0-9]" > /tmp/mmc.txt
  6. mmci=0
  7. while read line
  8. do
  9.     mmci=$(($mmci+1))
  10.     /sbin/automount.sh $line AiDisk_0$mmci
  11.     logger -t "Automount" AiDisk_0$mmci
  12. done < /tmp/mmc.txt
  13. #检测 opt 目录
  14. #这里懒得一个一个盘找了,就在第一个分区找
  15. logger -t "Entware" "Mount Entware /opt directory"
  16. [ -d "/media/AiDisk_01/opt" ] && mount -o bind /media/AiDisk_01/opt /opt
  17. # 自动samba 共享
  18. # by bigandy
  19. mount | grep AiDisk > /tmp/disk.txt
  20. ###构造/tmp/smb.conf
  21. cat > "/tmp/smb.conf" <<-\EOF
  22. [global]
  23. workgroup = WORKGROUP
  24. server string = HWF
  25. local master = no
  26. name resolve order = lmhosts hosts bcast
  27. log file = /var/log/samba.log
  28. log level = 0
  29. max log size = 5
  30. socket options = TCP_NODELAY SO_KEEPALIVE
  31. unix charset = UTF8
  32. display charset = UTF8
  33. bind interfaces only = yes
  34. interfaces = br0
  35. unix extensions = no
  36. encrypt passwords = yes
  37. pam password change = no
  38. obey pam restrictions = no
  39. host msdfs = no
  40. disable spoolss = yes
  41. security = SHARE
  42. guest ok = yes
  43. guest only = yes
  44. guest account = admin
  45. writeable = yes
  46. directory mode = 0777
  47. create mask = 0777
  48. force directory mode = 0777
  49. max connections = 10
  50. use spnego = no
  51. client use spnego = no
  52. null passwords = yes
  53. strict allocate = no
  54. use sendfile = yes
  55. dos filemode = yes
  56. dos filetimes = yes
  57. dos filetime resolution = yes
  58. EOF
  59. while read line
  60. do
  61. device=`echo $line | awk '{print $3}'`
  62. disk=`echo $line |awk 'BEGIN{FS=" |\/"}''{print $7}'`
  63. cat >> "/tmp/smb.conf" <<EOF
  64. [$disk]
  65. comment = Generic- SD MMC's SDCARD $disk
  66. path = $device
  67. guest ok = yes
  68. writeable = yes
  69. directory mode = 0777
  70. create mask = 0777
  71. map archive = no
  72. map hidden = no
  73. map read only = no
  74. map system = no
  75. store dos attributes = yes
  76. EOF
  77. done < /tmp/disk.txt
  78. rm /tmp/disk.txt
  79. #smb.conf 文件构造完成
  80. #restart Samba
  81. prgmname1="/sbin/nmbd"
  82. prgmname2="/sbin/smbd"
  83. # configfile=/full_path/configfile
  84. configfile="/tmp/smb.conf"
  85. #location of pid-file
  86. nmbdpid="/var/run/nmbd.pid"
  87. smbdpid="/var/run/smbd.pid"
  88. mkdir /etc/samba -p
  89. touch /etc/samba/secrets.tdb
  90. # try to stop samba frist
  91. logger -t smbd "Try to stop samba service. "
  92. [ -f $nmbdpid ] && kill `cat $nmbdpid` && rm -f $nmbdpid
  93. logger -t nmbd "service stopped"
  94. sleep 1
  95. [ -f $smbdpid ] && kill `cat $smbdpid` && rm -f $smbdpid
  96. # start samba now
  97. ${prgmname1} -D -s ${configfile}
  98. logger -t nmbd "started $prgmname1, conf: $configfile"
  99. ${prgmname2} -D -s ${configfile}
  100. logger -t smbd "started $prgmname2, conf: $configfile"

复制代码

复制代码

SS 不用chinadns ,不用pdns 的脚本,获得最高效率和性能。
可以自动更新gfwlist。
这是0.0.1 测试版。

  1. #!/bin/sh
  2. #################################################
  3. # WormHole 0.0.1
  4. # 在PADAVAN固件上进行自动的GFWLIST更新以及SS运行
  5. # 作者: bigandy[andy@cn2k.net]
  6. # 时间: 2015-12-25 10:25:00
  7. #################################################
  8. #准备工作
  9. # 构造 ss-config file.
  10. cat > /tmp/ss.json<<-\EOF
  11. {
  12.     "server": "1.1.1.1",
  13.     "server_port": 5432,
  14.     "local_port": 1008,
  15.     "password": "1234",
  16.     "timeout": 300,
  17.     "method": "chacha20"
  18. }
  19. EOF
  20. #Load ipset modules
  21. modprobe ip_set
  22. modprobe ip_set_hash_ip
  23. modprobe ip_set_hash_net
  24. modprobe ip_set_bitmap_ip
  25. modprobe ip_set_list_set
  26. modprobe xt_set
  27. # check if ss runing
  28. if [ -n "`pidof ss-redir`" ]; then
  29.         killall -9 ss-redir 2>/dev/null
  30. fi
  31. if [ -n "`pidof ss-tunnel`" ]; then
  32.         killall -9 ss-tunnel 2>/dev/null
  33. fi
  34. #restart ss
  35. ss-redir -c /tmp/ss.json -b 0.0.0.0 &
  36. ss-tunnel -c /tmp/ss.json -b 0.0.0.0 -l 8053 -L 8.8.8.8:53 -u &
  37. #build ipset rules
  38. ipset -N gfwlist iphash
  39. iptables -t nat -A PREROUTING -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 1008
  40. iptables -t nat -A OUTPUT -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 1008
  41. #add tofirewall script
  42. ipsetrules=`grep gfwlist /etc/storage/post_iptables_script.sh `
  43. if [ -z "$ipsetrules" ] ;then
  44.         echo "ipset -N gfwlist iphash" >> /etc/storage/post_iptables_script.sh
  45.         echo "iptables -t nat -A PREROUTING -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 1008" >> /etc/storage/post_iptables_script.sh
  46.         echo "iptables -t nat -A OUTPUT -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 1008" >> /etc/storage/post_iptables_script.sh
  47. fi
  48. #Get gfwlist
  49. wget --quiet -O  /tmp/gfwlist.b64 https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt
  50. #Check if gfwlist has update.
  51. newfilesize=`ls -al /tmp/gfwlist.b64 | awk '{print $5}'`
  52. [ -f /tmp/gfwlist.old ] && oldfilesize=`ls -al /tmp/gfwlist.old | awk '{print $5}'` || oldfilesize=0
  53. [ $newfilesize -gt $oldfilesize ] || exit
  54. #base64 decode
  55. #请用 opkg install coreutils-base64 安装这个包
  56. type base64 >/dev/null 2>&1 || { opkg install coreutils-base64; }
  57. base64 -d  /tmp/gfwlist.b64 > /tmp/gfwlist.txt
  58. mv /tmp/gfwlist.b64 /tmp/gfwlist.old
  59. #补充部分缺失域名
  60. cat >> /tmp/gfwlist.txt <<-\EOF
  61. google.com
  62. google.com.hk
  63. google.com.tw
  64. google.com.sg
  65. google.co.jp
  66. blogspot.com
  67. blogspot.sg
  68. blogspot.hk
  69. blogspot.jp
  70. gvt1.com
  71. gvt2.com
  72. gvt3.com
  73. 1e100.net
  74. blogspot.tw
  75. EOF
  76. #Filter to domainlist
  77. cat /tmp/gfwlist.txt | grep "\." | sed '/\!\|^$\|@@/d' | sed 's/^\.\|^||\|.*:\/\/\|\*.*$//g' | sed 's/^\*\.\|^\*2\.//g' | sed 's/\/.*$//g' |grep "\." |sort |uniq > /tmp/domainlist.txt
  78. #进行dnsmasq 的准备
  79. confdir=`grep conf-dir /etc/storage/dnsmasq/dnsmasq.conf | sed 's/.*\=//g'`
  80. if [ -z "$confdir" ] ;then
  81.         confdir="/etc/storage/dnsmasq/dnsmasq.d"
  82.         echo "conf-dir=$confdir" >> /etc/storage/dnsmasq/dnsmasq.conf
  83.         mkdir -p $confdir
  84. fi
  85. #构造 gfwlist.conf
  86. echo "### Update: $(date)" > $confdir/r.gfwlist.conf
  87. while read line
  88. do
  89. echo "server=/$line/127.0.0.1#8053" >> $confdir/r.gfwlist.conf
  90. echo "ipset=/$line/gfwlist"  >> $confdir/r.gfwlist.conf
  91. done < /tmp/domainlist.txt
  92. logger -t dnsmasq "restart for gfwlist"
  93. restart_dhcpd

复制代码

日积月累的固件使用说明:

如何像openwrt一样安装额外的软件包。

1. 首先,你需要有一块U盘或者 SD 卡(以下均以SD卡举例),一般来说,如果不做下载存储的话,1G足够,当然,8G以上最好。

如果都没有,则可以从内存里面挖10M左右给opkg用,如果内存也不够,你骑单车难道还想跑进百米加速3.5秒不成?

2. 建议使用EXT4作为存储的文件系统,原因不扯了,你喜欢就用,不喜欢就不用。按照一下方法重新格式化你的SD卡
fdisk  /dev/sda1
按 d 删除现有分区,1234选择分区编号。要删除干净。
按 n 建立分区,选择为 p 1 回车 回车
按 w 写入并退出。

这个固件没有partprobe,我的方法是拔出来再插进去一次,有更好的方法请通知我。

格式化sd卡
mkfs.ext /dev/sda1
这里看容量大小,时间不定,64G的大约要30秒左右。

加载sd卡
mdev -s
然后看看是否加载成功
mount
如果出现 /dev/sda1 on /media/AiDisk_a1 type ext4 (rw,noatime) 字样就是成功了。

3. 建立对应的opt目录

SD卡或U盘方式
mkdir /media/AiDisk_a1/opt
mount -o bind /media/AiDisk_a1/opt /opt
临时内存方式
如果你的路由没有USB或SD卡,可以用以下方式从内存里面挖一块给opkg用,但是每次重启装好的东西都会丢光。
mount -t tmpfs -o size=10M tmpfs /opt/

4. 初始化opkg
opkg.sh
等待1分钟左右,如果没有出现错误提示就可以了。
如果有错误提示,重复执行这句,直到没有为止。
如果错误5次以上,那说明你的网络没办法连接 entware.net 服务器,这个就要自己想办法了。

5. 查看opkg是否正常
opkg list
看看翻滚的软件列表吧。
开发常用的 nginx, php5, mysql, perl, python, ruby, node.js , lua 什么都是齐全的。不要问我java能不能跑,这路由只有128M内存,你这么凶残真的好吗?

接下来要怎么玩,有些什么软件可以玩,请自己google吧。

日积月累的固件使用教程DDNS 的设置
目前国内可用的DDNS不太多了,之前发了一个DNSPOD的版本,但它家的DNS服务非常不稳定,国外经常无法解析它家的所有域名,最近发现了一个国外的免费DDNS,DYNU,网址在 https://www.dynu.com 注册也非常简单,记得用普通的方式注册,不要用google帐号方式注册。
DYNU的使用方法就不多说了。讲讲在这个固件里面的设置方法:

设置方法参考下图:

7620老毛子Padavan完美支持SS adbyby 百度云 私有云 aria2 QOS-萌草酱
几点注意事项:
1. 用户名,必须要填写用户名,而不是email地址,否则认证肯定失败。
2. 更新周期可以选择10分钟或者1个小时,不过基本上断线重连以后系统会自动更新的(也许吧....)。
3. 日志里面看到good 字样的就代表成功, No IP# change detected 就是IP没改。
4. 其他没有什么特别的了,按照图里面的内容填写,不要填错就好了。
5. 长宽用户请自己忽略这个教程,DDNS对你毫无作用。