SuperWRT v0.3.1版本发布

SuperWRT v0.3.1版本于2017年02月13日发布。

从此版本开始,改变了版本命令规则:最后一位0表示开发版本,1表示正式发布版本,其它号码为Bug修复版本。

本次版本解决的Bug有:

1. 左侧菜单点击有效区域不全问题。
2. 修复ar9002系列芯片(如AR9287)支持问题。
3. 调整AR8327/AR8337的PLL值,提高数据稳定性。
4. 修复WDS设备状态无法显示问题。
5. 调整打开高并发功能时,对弱信号用户的处理策略,正确控制用户下线。

本次版本增加及修改的特性有:

1. 升级Linux内核,从3.18.40到EOL的3.18.47版本。
2. 升级compat-wireless版本到2016-10-08版本。
3. 用户状态中增加离线设备单独分类。
4. 增加OpWiFi在本地网络中时主动推设置支持。

本版本可与OpWiFi v0.2.2进行对接。

SuperWRT v0.2.12发布,配套服务器OpWiFi v0.2.2发布

SuperWRT

SuperWRT v0.2.12版本于2017年01月19日发布,主要解决了SuperWRT v0.2.10中的一些Bug。

解决的问题有:
1. 解决服务器配置下发后,设备有时不会返回状态问题。
2. 解决服务器下发版本后,无法获取文件时的错误处理问题。
3. 解决WDS终端不显示问题。
4. 增加正常网络中的DHCP租期设置。
5. 解决一些网页上的小Bug。

本版本可与OpWiFi v0.2.2进行对接。

Bootloader

Bootloader更新到v1.2.6,解决了以下问题:
1. 增加WAN口获取DHCP地址及PPPoE拨号单独的超时,防止等待时间过长。
2. 修改网页reboot的逻辑,增加返回页面。
3. 解决setmac在MAC地址位置越界循环时不能处理的问题。
4. 解决SGMII在一些配置时不能正常设置的问题。

OpWiFi

OpWiFi v0.2.2测试版本发布。提供以下功能:

  1. 设备管理:
    1. 支持查看在线设备状态。
    2. 可以给设备分配Tag,一个设备可以加入多个Tag。Tag还支持树状分组管理。可以更方便的筛选设备。
    3. 支持版本下发操作,可以更新设备版本。该方式支持调用SuperWRT保护式升级接口,升级失败时,可以通过uboot继续升级。
    4. 可下发指令,目前界面支持了重启操作。
    5. 可以绑定配置。按无线接口进行分类,支持多种设备模型。可配置无线参数、限速、定时重启等配置模版。配置模版与设备绑定即可下发配置。
  2. WebPortal:
    1. 可创建多种配置。
    2. 可以将配置绑定到不同的设备。
    3. 已集成简单的登录网页,可以管理登录用的用户名和密码。
    4. 可查看设备的在线状态。
    5. 可查看用户的状态。
  3. 设备状态:
    1. 可显示设备无线关联用户MAC信息
    2. 可上报无线用户流量、速率等状态信息。

opwifi_config_wlan

WNE

由Terra开发WNE(Windows Nginx Environment)v1.0.0已经发布。WNE可用于搭建OpWiFi在Windows上的运行环境,也可以用于搭建其它系统的Nginx+PHP+Mysql+MongoDB+Redis在Windows中的环境。WNE是完全开源免费的软件,使用Apache v2许可,你可以改造WNE用于其他用途。

WNE v1.0.0的下载地址为:https://github.com/superwrt/WNE/releases/tag/v1.0.0

 

在Windwos下安装OpWiFi

目前,OpWiFi与WNE都在开发阶段,未提供集成环境。下面介绍如何在Win下搭建OpWiFi的运行环境。基本环境要求为:Win7以上,64位系统。

搭建步骤如下:
1. 下载并解压WNE v1.0.0到C盘根目录(可以是其它位置,以下步骤以该目录为准)
2. 下载OpWiFi最新版本,将src中的文件复制到C:\wne_v1.0.0\home\default中。
3. 修改Nginx配置,以运行OpWiFi。修改C:\wne_v1.0.0\conf\nginx\sites\default.conf为如下内容:

server {
	listen       0.0.0.0:80;
	server_name  localhost;
	set $root_path 'home/default/public';
	root   $root_path;

	access_log  logs/nginx/default.access.log;
	
	client_max_body_size    20m;
	index index.php index.html;

	log_not_found off;

	charset utf-8;

	location ~ /\. { deny all; }
	location = /favicon.ico { }
	location = /robots.txt { }
	
	location / {
           try_files $uri $uri/ /index.php?$query_string;
        }

	location ~ \.php$ {
		try_files  $uri =404;
		fastcgi_pass   php_processes;
		fastcgi_index  index.php;
		fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
		include        fastcgi_params;
	}

	location ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
		root $root_path;
	}

	location ~ /\.ht {
		deny all;
	}
}

4. 修改PHP配置,改变上传文件大小限制:

upload_max_filesize=16M

5. 开启WNE。启动WNE后,点击Start按钮。
6. 安装OpWiFi数据库。

1. 进入http://127.0.0.1:81/adminer/管理mysql。(默认用户名为root,无密码。)
2. 点击“创建新数据库”,新数据库名称为:opwifi,字符集选utf8_general_ci,然后点保存。
3. 点击“权限”,然后“点创建用户”,用户和密码为opwifi(或者密码你自己指定),选All privileges后,保存。
4. 进行OpWiFi的intall页面进行安装。地址为:http://127.0.0.1/install。一路确认后,安装完成。

7. 登录OpWiFi。进行http://127.0.0.1/,用户和密码为admin。
8. 修改OpWiFi的地址,以使其正常工作。登录OpWiFi后,将“系统->系统配置->站点地址”更改为服务器实际,设备将根据此地址进行升级文件下载等操作。

在设备的管理网页中,将服务器地址设置为OpWiFi安装PC的IP地址,设备即可接受管理。

在Windwos下管理瘦设备
目前,自带的DHCP服务还在开发阶段。可以先使用TFTPD32中的DHCP服务代替。
需要在DHCP服务中携带option43字段,以通知设备服务器的地址。

tftpd32_dhcp_forfit

SuperWRT v0.2.10发布,提高稳定性

SuperWRT v0.2.10版本于2016年12月27日发布,主要解决了SuperWRT v0.2.8中的一些Bug,提高稳定性(建议老版本用户全部升级)。

解决的问题有:

  1. 解决上一个版本Station接口WDS不生效的Bug。
  2. 解决静态DNS在某些情况下没有配置的问题。
  3. 解决国家码有时不正确的问题。
  4. 解决扫描到部分AP信息不正确问题。
  5. 解决状态页刷新速度会变化问题。
  6. 解决了上一个版本无线高并发在某些情况下队列阻塞的问题。

更改实现逻辑:

  1. 优化了无线高并发调度机制,减小弱信号用户影响。
  2. 优化了无线高并发内存占用,增加了弹性。
  3. 增加了Kernel panic及Core Dump信息发送服务器功能。
  4. 当配为20M频宽时,Station接口将强制使用20M连接AP。
  5. 增加Station接口每天线的信号强度信息。
  6. 网桥时网口是否断开判断所在接口(更改前只判断WAN口)。

在Boot中增加了QCA9563对QCA8337的支持。

SuperWRT v0.2.8发布,增加Std版本,支持Station模式及11AC

SuperWRT v0.2.8于2016年11月29日发布。本次发布,增加了Std版本,在Std版本中增加以下主要功能:

  1. Station模式。可以使用Wisp方式连接其它无线上网。
  2. 无线AP扫描功能。
  3. 增加11AC支持。目前支持高通的11ac wave1标准系列芯片(qca98xx)。
  4. 增加WPS虚拟按钮功能。
  5. 在PC上远程抓取及发送设备无线报文调试功能,用于无线问题收集。

 

v0.2.8相对于v0.2.6进行了以下变动:

  1. 加入NTP时间同步方式。在于SuperWRT官方服务器获取时间失败后,尝试使用NTP获取。
  2. 优化了网页加载速度,及网页缓存时间过长问题。
  3. 加入无线的WDS配置。
  4. PPPoE在未变更配置时,不重新拨号,以解决部分地区运营商对重拨时间限制的问题。
  5. 优化智能流整形在大内存设备中的表现,解决之前版本导致迅雷下载速度不稳定的问题,优化其它用户ping时延。(v0.2.8的接口下行限速暂不生效,待下个版本完善。)
  6. 解决配置变更时,或一些特殊场景下,设备偶尔异常重启的问题。
  7. 解决无线高并发之前版本中的一些Bug。

 

Std版本增加了Station功能。我们调查了用户在其它系统中抱怨的问题,优化了我们的功能实现。主要体现如下:

  1. 当在一个射频同时开启了AP与Station时,只要配置为自动信道,当Station获取连接后,AP就会根据Station的信道,自动更改其工作信道。(注意:目前配自动信道,如果添加了多个AP,在Station切换信道后,会只有一个工作。)
  2. 在Station未关联到上级AP时,设备的AP仍可以正常工作,以方便用户连接管理。但由于Station在后台会周期性切换到其它信道进行扫描,可能AP会偶尔延迟比较大,但不影响管理功能。在Station未连接时,AP不会跟随Station变更信道。
  3. 可以设置Station绑定的BSSID,以方便用户限制Station连接指定的设备。
  4. 在Station中,可以设置多个备选SSID。当主SSID无法连接时,Station可以自动连接其它备选的SSID,以保证网络正常工作。
  5. 无线高并发特性针对Station模式进行了优化。需要License才可以在终端模式中使用无线高并发(只要不打开无线高并发,终端模式是无限制使用的),但您仍可以打开全许可证测试,以获取每次启动后15分钟的测试时间。

 

Std版本增加了对11AC的支持,但目前11AC的无线高并发优化仍在开发中,所以,暂时无法在11AC中使用我们的无线高并发优化。

随SuperWRT v0.2.8,更新了bootloader版本1.2.5。

  1. 解决有时UID生成错误的问题(与系统不一致)。
  2. 解决WAN口下载版本时,解析DNS处理CNAME的问题。

SuperWRT v0.2.6发布,近期最后一个解决Bug版本

SuperWRT v0.2.6版本于2016年10月31日发布,主要解决了SuperWRT v0.2.0中大家反馈的一些Bug。到本版本为止,大家已反馈的0.2.0中比较最要Bug基本解决完毕,感谢大家支持。

解决问题列表:

  1. 解决ar8035的丢包问题。
  2. 解决iphone在网页登录时跳转离开问题。
  3. 解决限速和智能流整形在某些特殊情况下的效率问题。
  4. 解决带宽配置关闭后,仍然下发问题。
  5. 解决访客网络中配置DHCP租期未生效问题。
  6. 在状态网页中显示启动分钟。
  7. 在AP模式中,去掉必须配置网关的检查。

SuperWRT v0.2.4发布,解决Bug,增强兼容性,支持TP9345

SuperWRT v0.2.4于2016年10月27日发布,主要解决了SuperWRT v0.2.0中大家反馈的一些Bug。

解决问题列表:

  1. 解决某些设备启动后PHY地址会变更的问题,增加适配代码。
  2. 解决一些双频设备第二射频没有正确配置的问题。
  3. 解决一些设备的校准信息中,射频参数与硬件不对应的问题,增加判断代码。
  4. 解决中文SSID在状态页显示不正确的问题。

Bootloader更新到v1.2.4,解决了以下问题:

  1. 增加TP9345芯片支持。
  2. 解决一些特殊型号内存兼容性问题。
  3. 解决不配置内置Switch时,以太网加载不正确的问题。

SuperWRT v0.2.2发布,并更新bootloader,提供Flash镜像

SuperWRT v0.2.2发布,主要解决了SuperWRT v0.2.0中大家反馈的一些Bug。这些Bug主要集中在网页登录及网页管理中,以及改善了一些浏览器兼容问题。

SuperWRT v0.2.2在增加了网页登录的令牌登录方式。管理员可以生成一个带有使用截止时间的令牌,来发放给用户通过网页方式登录。该方式可以便于管理员不在网络时,远程允许用户通过认证,并可控制用户使用的时间。可比较方便的控制访客允许上网的时间,可用于根据公司访客来访天数授权等场景。

随SuperWRT v0.2.2,更新了bootloader版本1.2.3。

  1. 增加任务等待页的后台检测,设备任务完成后可自动跳转。
  2. Debug网页增加写入Hex功能,以方便更改MAC地址。
  3. GPIO命令增加monitor模式,以方便测试按键。
  4. 加入WLAN的MAC地址显示。
  5. 增加隐藏的刷bootloader方法,在Debug页面使用40000000地址写入。
  6. 增加PHY地址错误时自动纠错功能,并在串口输出提示信息。
  7. 在Flash自动扩展分区时,可根据校准信息及MAC信息位置,选择CAL分区位置。(如:原Flash为4M,而校准信息位置为0xff1000,换8M Flash后,CAL分区将自动改为Flash结尾。但当校准信息位置为0x3f1000时,CAL分区将保持原来位置。)
  8. 改善浏览器兼容性, 解决一些小Bug。

 

从SuperWRT v0.2.2版本开始。我们提供了4M Flash镜像下载,可直接刷写SuperWRT版本到Flash(包含ART、MAC、Bootloader、Firmware)。建议使用4M Flash,如使用更大容量Flash,由于新booloader有自动扩充分区的功能,需重新刷入Firmware和ART及MAC。

使用Flash镜像时,我们建议使用原机的ART及MAC。写入ART的方法如下:

  1. 进入Bootloader的恢复网页。(可使用以下方式:长按Reset按键,使用SuperWRT Device Tool通过网口中断、使用TTL输入httpd命令)
  2. 点击Debug按钮,进入Debug页面。
  3. 上传64k的ART文件到ff0000地址(如使用非Flash镜像版本,请按WLAN info中CAL地址写入小ART文件)。(如果使用2k ART,请按下方的WLAN info中CAL地址写入。)
  4. 点击Go。

更新MAC的方法如下:

  1. 进入Bootloader的恢复网页。(可使用以下方式:长按Reset按键,使用SuperWRT Device Tool通过网口中断、使用TTL输入httpd命令)
  2. 点击Debug按钮,进入Debug页面。
  3. 写入MAC地址的HEX值到ff0000(如使用非Flash镜像版本,请按WLAN info中MAC信息地址写入位置)。(如果有多个WLAN,请按下方的WLAN info中MAC信息地址写入。)
  4. 点击Go。

bootloader_web_write_mac

SuperWRT v0.2.0版本即将发布

SuperWRT v0.2.0版本将于2016年10月15日正式发布。本次版本对系统进行了重大更新。包括以下重要特性:

  1. 合入了我们经过长期开发无线高并发特性。可以有效改善WiFi同频干扰,提高并发用户时的吞吐量,减少无线的网络延迟。(更详细信息,请参考官网博客中的测试文章)
  2. 合入了新智能流量整形特性。可以自动均衡用户间,及用户不同应用的带宽,减少大流量用户及应用对其它用户及应用造成的影响。(更详细信息,请参考官网博客中的测试文章)
  3. 支持扫描局域网中的SuperWRT设备,并直接进行简单配置。
  4. 网页登录丰富了本地认证方式,并可以查看及管理认证的用户。
  5. 在AP模式时,支持通过网页上增删SSID,并可以设置VLAN。
  6. 增加许可证管理功能。

详细更新特性如下:

  1. 无线高并发特性。
    1. 开启后,可以学习信道特性,根据环境自动更新芯片配置,并调整策略。
    2. 可以比较有效的降低同频干扰对与终端通信的影响。
    3. 可以比较好的均衡不同用户间的流量及信道占用。
    4. 可以与智能流量整形协同工作,调整用户流量。
  2. 新智能流量整形特性。
    1. 可以学习不同用户的流量构成,有效调整带宽分配。
    2. 可以均衡不同用户间的流量。
    3. 可以保证用户自身不同应用的带宽。
    4. 可以与无线高并发协同工作,以保证用户不同数据不同优先级。
    5. 可以按设置的用户优先级调整流量整形策略。
  3. 限速功能更新。
    1. 改变内部实现机制,处理效率更高。
    2. 可限定WAN口速率,以配合智能流量整形功能工作。
  4. 无线基本功能更新。
    1. 增加无线用户黑白单功能,可以按用户列表中的配置限制接入。
    2. 支持增加和删除无线SSID,并可选择创建SSID是否属于访客网络。
    3. 增加强制HT40模式。
    4. 修改了SSID广告的限制,不开启不再限制用户数。但开启后会增加一些抗干扰优化。
  5. 网页登录功能。
    1. 本地增加“管理员授权”登录方式。即用户弹出网页出现二维码,管理员可扫码授权。
    2. 增加网页登录用户的状态查看功能。
    3. 增加网页登录用户的管理功能,可认证及踢除用户。
    4. 修正一些小Bug。
  6. 二层设备发现功能。
    1. 可使用电脑工具扫描局域网中运行的SuperWRT设备。
    2. 可获取设备状态信息,并可对设备进行配置。
  7. 状态信息丰富。
    1. 增加用户信息详细按钮,点击后可显示更多用户状态信息。
    2. 增加AP模式下终端的详细按钮,点击后可显示更多信息。
    3. 主页状态信息丰富,可显示无线工作的频宽。
  8. 加入许可证系统。
    1. 可根据设备信息及硬件信息,生成设备唯一的UID。
    2. 实现检查及更新新可证功能。
    3. 实现本地上传许可证功能。
    4. 支持许可证的读入及配置变更。
  9. 其它。
    1. 将内核更新到linux 3.18.40。
    2. DNS主备切换功能优化。
    3. 管理服务器配置变更新后,立即上线管理服务器。
    4. 支持网管下发定期上报指定的状态信息指令。
    5. 自动处理DHCP地址段配置错误的情况。

boot功能更新:

  1. 用户更换大Flash后,可自动调整分区结构,充分利用增大的Flash空间。
  2. 实现生成设备唯一的UID功能。
  3. 在通过WAN口下载升级文件时,增加闪灯提示。
  4. 解决一些小Bug。

让你的WiFi设备获得新生,使用SuperWRT更新您的设备

我们手上可能有些WiFi设备,工作效果不是很好。比如:用户一多就卡的要命,距离远了数据时段时续。可能,这个设备是您家中的无线路由器,也可能它是您公司的无线设备,还可能是您做工程部署的AP。如果您的设备的芯片在SuperWRT支持的列表中,您可以尝试将其软件更新为SuperWRT,来改善上述问题。

SuperWRT从v0.2.0版本开始,合入我们一直在开发无线高并发优化,及智能流整形技术。前者,可以有效的降低同频干扰对无线,提高无线并发的用户数量;后者,则可以帮助路由设备智能的分配带宽,保证所有用户的网络流畅性。

那么,如何将设备用上SuperWRT呢?

SuperWRT创新性的使用固件与设备减少绑定的技术,即SuperWRT的同一个固件可以用于多种不同类型的设备。那么,您仅需要做的是,使用一个您设备对应的boot。

如何获取您设备对应的boot呢?一种方式,就是从网络中上载别人已经做好的SuperWRT的boot,直接更新到您设备上使用。另一种方式,是通过我们提供的网页形式的在线定制工具,填入您设备的对应信息,将自动生成设备的boot。而不再是搭建一大堆的编译环境,尝试别人论坛上发的一堆更改,敲一堆不懂的命令,生成一个可能会运行的boot。生成SuperWRT的boot,只需要您拿着鼠标点、点、点。当然,前提还是您要具备一定的知识,知道您点的是什么。

目前SuperWRT支持AR9341/AR9342/AR9344/AR9350/QCA9531/QCA9533/QCA9550/QCA9558/QCA9561系列芯片。对其它的芯片的支持,我们将不断的开发。

在生成的boot中,将携带您在网页输入的信息,这些信息在启动时还将传递给固件。固件使用这些信息来配合您的设备工作。这样,我们就做到了,只要支持了您的芯片,您就可以自己实现SuperWRT固件对设备的支持。

下面就是一些典型的应用案例:

在商业用无线领域,高通(Atheros)的芯片使用还是比较多的。可能有一个工程,原来的设备效果比较差,但它使用的芯片在我们的支持列表中。这时,可以查找我们的网站是否有该设备型号的boot。如果没有,可以找一个懂得相关知识的人,根据设备的硬件,在我们的定制页面生成一个该设备的boot。然后,将原来工程中用的AP,还是路由器进行更新,刷入新的软件,使其焕然新生。当然,您也可以上传(或自行出售)制作好的boot,让更多其他朋友使用。

也可能您从某些渠道获取到了一批无线设备,它们原来的工作效果比较差,或者软件上做了某些限制,但它使用的芯片在我们的支持列表中。这时,您可以使用我们的固件,让其更好的工作,再次发挥余热。

减少网络卡顿,SuperWRT v0.2版本智能流整形升级

在家或公司上网,恐怕用户最烦的就是网络卡顿,上不去网,打不开网页了。发生这种问题时,很多是因为有其它用户在下载或设备自已在偷偷上传(当时,有时也可能是无线信号的问题,SuperWRT的无线高并发技术可以改善此类问题。)。SuperWRT v0.2.0版本中,开始提供了更加智能的流整形升级技术,可以比较有效的改善此类问题。

传统解决有用户占用大流量问题的方式是限速,但对于家庭网络或Soho型公司来说,一般用户不会很多,限速使下载速度一直不快,而且这时可能其他人也不怎么使用网络,造成了网络资源的浪费。SuperWRT的智能流整形技术,可以比较友好的解决这种问题,而不是那么简单粗暴。

SuperWRT的智能流整形技术会跟踪并分析每个用户的流量,及每个用户的不同应用的流量。然后,根据外网可使用的上下行流量,智能的将带宽分配给每个用户及用户的不同应用。

下面的视频就是我录制的一个例子。当有用户使用迅雷下载热门资源时,如没有其它人使用网络,我们希望下载的越快越好。但当突然有其他人使用网络看视频时,智能流整形功能自动调整原来迅雷使用的带宽,让渡一定的带宽给看视频的用户。当用户视频缓冲完成时,又用将带宽自动归还给原来的迅雷使用,从而比较有效的利用了网络带宽资源。

视频链接

下面是一个在看视频时,同时进行迅雷下载测试的截图。截图中,迅雷关闭了所有网速保护,以下载优先模式进行下载。

下载与看视频同时进行

需要说明的是,使用SuperWRT的智能流整形功能,一定要设置外网带宽到设备中,才能保证设备有效的调度带宽。比如上面视频的例子中,我使用的是电信20Mb的光纤,其中上行只有下行1/10,所以,转换为字节单位,需设置为下行2500kBps,上行250kbps。