OpenWrt Luci for Brook Transparent Proxy === 简介 --- 本软件包是 Brook Tproxy 的 LuCI 控制界面, 方便用户控制和使用「透明代理」功能 特性 --- 软件包包含 [brook][1] 的可执行文件,以及luci控制界面 支持两种运行模式:IP路由模式和GFW列表模式(支持自定义GFWList) 运行模式介绍 --- 【IP路由模式】 - 所有国内IP网段不走代理,国外IP网段走代理 - 白名单模式:缺省都走代理,列表中IP网段不走代理 【GFW列表模式】 - 只有在GFW列表中的网站走代理;其他都不走代理 - 黑名单模式:缺省都不走代理,列表中网站走代理 编译 --- - 从 OpenWrt 的 [SDK][2] 编译 ```bash # 以 ar71xx 平台为例 tar xjf OpenWrt-SDK-15.05-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64.tar.bz2 cd OpenWrt-SDK-* # Clone 项目 git clone https://github.com/WouldChar/openwrt-brook-tproxy.git package/openwrt-brook-tproxy # 如果没有安装po2lmo,则安装(可选) pushd package/openwrt-brook-tproxy/tools/po2lmo make && sudo make install popd # 选择要编译的包 #luci ->3. Applications ->openwrt-brook-tproxy make menuconfig # 开始编译 make package/openwrt-brook-tproxy/compile V=99 ``` 安装 --- 本软件包依赖库:ip、ipset、iptables-mod-tproxy、dnsmasq-full、coreutils、coreutils-base64,opkg会自动安装上述库文件 提醒:请停用当前针对域名污染的其他处理软件,不要占用UDP 5353端口 将编译成功的openwrt-brook-tproxy*_all.ipk通过winscp上传到路由器的/tmp目录,执行命令: ```bash #刷新opkg列表 opkg update #删除dnsmasq(第一次安装,如果没有安装dnsmasq-full,需手动卸载dnsmasq,其他情况下不需要) opkg remove dnsmasq #安装软件包 opkg install /tmp/openwrt-brook-tproxy*_all.ipk ``` 安装后强烈建议重启路由器,因为luci有缓存机制,在升级或新装IPK后,如不重启有时会出现一些莫名其妙的问题;另由于安装、修改、调用dnsmasq-full,安装后最好能重启路由器 配置 --- 软件包通过luci配置, 支持的配置项如下: 客户端服务器配置: 键名 | 数据类型 | 说明 ---------------|------------|----------------------------------------------- server | 主机类型 | 服务器地址, 可以是 IP 或者域名,推荐使用IP地址 server_port | 数值 | 服务器端口号, 小于 65535 local_port | 数值 | 本地监听的端口号, 小于 65535 password | 字符串 | 服务端设置的密码 客户端其他配置: 名称 | 含义 ----------------------------|----------------------------------------------------------- 全局服务器 | 选择要连接的Brook 透明代理服务器 DNS服务器地址和端口 | DNS请求转发的服务器,一般设置为google的dns地址 访问控制-被忽略IP列表 | IP路由模式时有效,用于指定存放国内IP网段的文件,这些网段不经过代理 访问控制-额外被忽略IP | IP路由模式时有效,用于添加额外的不经过代理的目的IP地址 访问控制-强制走代理IP | 用于添加需要经过代理的目的IP地址 内网主机访问控制 | 可以控制内网中哪些IP能走代理,哪些不能走代理,可以指定下面列表内或列表外IP 内网主机列表 | 内网IP列表,可以指定多个 IP路由模式的数据文件为/etc/china_ip.txt,包含国内所有IP网段,一般很少变动,无需更新,如要更新,请在“状态”页面更新 GFW列表模式的数据文件为/etc/dnsmasq.ssr/gfw_list.conf,包含所有被墙网站,如需更新,请在“状态”页面更新 支持广告过滤,数据文件为/etc/dnsmasq.ssr/ad.conf,其原理是将广告网站的IP地址解析为127.0.0.1,使用的数据库为easylistchina+easylist;广告过滤模块缺省未安装,用户在“状态”页面更新广告数据库后自动打开,如打开广告过滤后出现问题,请删除此文件并重启dnsmasq [1]: https://github.com/txthinking/brook [2]: https://wiki.openwrt.org/doc/howto/obtain.firmware.sdk