ShellGui 手册¶
本手册为 Shellgui 0.1, 最后更新于 2016 年 11 月 17 日.
介绍¶
Shellgui 是一个OpenWrt 分支, 被设计为适应各种使用环境的优秀路由器操作系统. 拥有以下卓越的使用特性:
- 简单易用
- 完整的使用功能,适用于各种上网环境
- 与其他 OpenWrt 分支相比拥有更优质的设计和体验
- 最强大和齐全的网络功能
- 高效率的网络体验
ShellGui 开源部分的代码使用 MIT license; 查看该协议的详细信息.
你可以在这里下载到我们的 mips x86 等各种平台的系统固件。
目录¶
从这里开始¶
下载固件¶
ShellGui固件可以从这里去下载 http://www.shellgui.com/releases/
系统类应用¶
系统状态¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
应用程序¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
网络类应用¶
无线设置¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
2.4G网络¶
- SSID 密码
5G网络¶
- SSID 密码
上网设置¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
The incompatibilities are not dramatic. The biggest change is that
all decoding functions now require and extra parameter. Most programs
can be modified to work with 2.0 by adding a 0
as the second
parameter to all calls of json_loads()
, json_loadf()
and json_load_file()
.
pppoe 上网¶
Shellgui 2.0 is backwards incompatible with the Shellgui 1.x releases. It is ABI incompatible, i.e. all programs dynamically linking to the Shellgui library need to be recompiled. It’s also API incompatible, i.e. the source code of programs using Shellgui 1.x may need modifications to make them compile against Shellgui 2.0.
All the 2.x releases are guaranteed to be backwards compatible for both ABI and API, so no recompilation or source changes are needed when upgrading from 2.x to 2.y.
dhcp 上网¶
- Decoding flags
- For future needs, a
flags
parameter was added as the second parameter to all decoding functions, i.e.json_loads()
,json_loadf()
andjson_load_file()
. All calls to these functions need to be changed by adding a0
as the second
静态地址 上网¶
argument. For example:
/* old code */ json_loads(input, &error); /* new code */ json_loads(input, 0, &error);
高级功能¶
- 克隆网卡
克隆一个虚拟的 wan
- 同步ppp拨号
全局开启同步ppp拨号
- MAC地址
使用特点MAC地址
- Underlying type of JSON integers
The underlying C type of JSON integers has been changed from
int
to the widest available signed integer type, i.e.long long
orlong
, depending on whetherlong long
is supported on your system or not. This makes the whole 64-bit integer range available on most modern systems.jansson.h
has a typedefjson_int_t
to the underlying integer type.int
should still be used in most cases when dealing with smallish JSON integers, as the compiler handles implicit type coercion. Only when the full 64-bit range is needed,json_int_t
should be explicitly used.- Maximum encoder indentation depth
- The maximum argument of the
JSON_INDENT()
macro has been changed from 255 to 31, to free up bits from theflags
parameter ofjson_dumps()
,json_dumpf()
andjson_dump_file()
. If your code uses a bigger indentation than 31, it needs to be changed. - Unsigned integers in API functions
- Version 2.0 unifies unsigned integer usage in the API. All uses of
unsigned int
andunsigned long
have been replaced withsize_t
. This includes flags, container sizes, etc. This should not require source code changes, as bothunsigned int
andunsigned long
are usually compatible withsize_t
.
局域网设置¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
局域网IP设置¶
- 设置局域网IP和掩码
DHCP设置¶
- 设置DHCP服务器信息
高级设置¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
UPnP协议¶
- UPnP协议开关
- UPnP协议状态列表
DHCP的静态IP分配¶
- DHCP的静态IP绑定分配
动态域名解析¶
- 动态域名解析
端口转发¶
- 端口转发
DMZ¶
- DMZ
连接限制¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
网络诊断¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
网络诊断¶
- 网络诊断
局域网唤醒¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
局域网唤醒¶
- 局域网唤醒
连接主机¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
当前DHCP租约¶
已连接的无线主机¶
主机活动连接数¶
手机USB共享上网¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
手机USB共享上网¶
- 手机USB共享上网
交换机VLan¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
交换机VLan¶
- 交换机VLan
网速测试¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
网速测试¶
- 网速测试
DNS CDN 加速¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
开启DNS CDN 加速¶
设置DNS CDN¶
带宽分布图¶
宽带分布图 应用,用于显示一定时间段内宽带数据的流向分布。 本应用分为两部分:
饼状图¶
饼状图图例上方的控件可用于调整显示时间频段、时间段以及显示方式。 例如要查看11月11日整天的数据流量分布,可以这样设置控件:
要查看今天13:15-13:30这一刻钟内的流量分布情况,可以这样设置:
控件设置的变化,不仅会影响到饼状图,还会同时反映到数据表的显示。
点击图例中的主机列表可以对主机信息是否显示进行切换。
数据表¶
负载均衡¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
负载均衡¶
- 负载均衡
连接列表¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
Shadowsocks¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
Shadowsocks¶
- Shadowsocks
OpenVPN¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
OpenVPN¶
- OpenVPN
防火墙类应用¶
防火墙附加¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
SYN flood 保护¶
Wan 基础设置¶
GEOIP数据库¶
局域网上网记录¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
总览¶
设置¶
浏览¶
上网记录¶
搜索记录¶
QOS流控¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
流量配额¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
设置¶
当前配额 显示的是当前已经设置的流量限制的规则列表
要添加新的规则,可以单击 添加规则 按钮,并填写表单:
- 设置应用范围
应用到 字段用于设置配额规则的应用范围,有四个选项,分别是:
应用到整个网络
应用到独立主机(要配置当前已连接的主机,可以到 连接主机 应用页面查看主机地址)
应用到所有没有明确配额的独立主机(配额规则的流量限制针对这些主机中每一个主机的流量生效)
应用到所有没有明确配额的主机(合并)(配额规则的流量限制针对这些主机的流量总额生效)
- 设置配额
最大上传,最大下载和最大总量三个字段用于设置各流向的最大流量
要使规则生效,这三个字段必须至少设置一个
输入限制额数字,并选择合适的单位即可
- 配额复位
配额复位和复位时间用于设置配额重置的频率和时间。
配额复位的频率可选择每小时、每天、每周或每月
其中每周和每月选项下还可以选择周几或每月几号进行流量重置
- 生效时段
配额生效 字段可以用来设置配额生效的时段
除了总是生效外,还可以显式设置生效时间或禁用时间
这个字段的两个隐藏字段提供了灵活的设置格式
例如,要想将规则设置为每天的6:00-18:00生效可以这样设置
要将规则设置为每周一到周五全天生效,可以这样设置
要将规则设置为每周-至周天的6:00-18:00生效,可以这样设置
要将规则设置为除了每周五18:00-周天22:00外每天都生效,可以这样设置
- 超额配置
最后一个字段用于设置应用规则的主机使用的流量超出限制额度情况下的机制
除了可以简单的设置为关闭所有网路外,还可以设置网速限制,这主要通过整体速度限制,或者QOS流控归类限制来实现。
注意,当QOS流控规则未开启的时候,只有整体网速限制才会生效。当开启了QOS流控,可以通过选择生效模式来控制。
全部设置完成后,点击 添加 按钮即可将新建的规则添加到列表,例如这里设置了一个针对主机192.168.1.192的规则,这条规则将总的流量限制为2TByte,每周一重置,并且只在每周一到周五生效,超额之后上传和下载速度都设置为30Kb/s
注意!添加完成后该规则并未当即生效,而是被暂存到了规则列表:
此时还可以通过点击列表中的编辑按钮对规则进行编辑,或点击移除按钮,移除规则。 勾选启用复选框可以设置为启用。
最后点击页面级的应用按钮,待页面请求成功并刷新后,这条规则才真正启用了。
查看¶
流量配额使用情况表 可以查看当前所有规则下流量的使用情况。
这里我们只指定了一条针对192.168.1.192主机的规则
可以通过设置主机显示规则显示IP地址或主机名
通过设置使用情况显示格式,可以查看当前流量使用的百分比,当前已用流量和总的设定流量等。
访问限制¶
This chapter lists the backwards incompatible changes introduced in Shellgui 2.0, and the steps that are needed for upgrading your code.
设置¶
访问限制分为两个部分,一部分用于设置黑名单,一部分用于设置白名单。
设置方法基本一致,但是应用效果是不同的。
- 访问限制设置
点击 添加新规则 按钮并完成以下表单即可设置新的限制规则
规则应用到 字段用于设置规则应用范围,可以选择以下三种模式:
所有主机
仅主机列表中的主机
除了主机列表之外的所有主机
除第一项外,都会有一个表单控件显示用于添加主机列表。
计划表 字段用于设置规则生效的时间段。
除了使用默认的每天全天生效之外,这里也提供了灵活的设置方法:
例如,要设置为每天6:00-18:00生效,可以这样设置
要设置为每周一到周五全天生效,可这样设置
要设置为每周一到周五的6:00-18:00生效,可以这样设置
要设置为每周一6:00到周五18:00生效,可以这样设置
被限制资源 字段用于设置被限制的资源,可以使用默认的全部网络资源,或者设置定制型的资源类型
基本上每种资源类型都提供了三种限制模式:全部限制,特定限制和例外情况。 按需填写完后点击 保存 按钮即可将规则暂存到规则列表。
例如,我们这里指定一条针对所有主机的规则,这条规则在每天的9:00-21:00生效,生效期间所有主机都不能访问 http://www.example.com 这个地址,我们将这条规则的描述(标题)定为’no example.com while work’
暂存在列表中的规则还可以进行编辑、移除或者设置应用到服务器之后是否启用
最后点击页面级的应用按钮,待页面刷新后规则就被应用了。
- 白名单设置
点击 添加新规则 按钮并完成以下表单即可设置新的例外规则
白名单规则表单的填写与黑名单规则基本一致,只是应用范围是作为新建规则的例外存在的,这实际上与设置黑名单时将应用范围设置为’除了主机列表之外的所有主机’ 效果是一样的。 用户需按实际需要进行设置。