• WAP手机版 保存到桌面加入收藏设为首页
路由器

Netgear wndr4300 刷openwrt翻WALL手册

时间:2015-02-08 15:56:52   作者:哎丫丫   阅读:5571   评论:0
写在开篇该文仅仅蘸献约夯嵴厶诘娜嗽亩粒你至少要明白什么是telnet和ssh,最起码要会用winscp和putty,只会用web界面的去找更适合的教程吧。感谢debiansid提供的技术指导。不知道你在论坛ID是什么。抱歉了另外这绝非是最佳方案,你有更好的方案欢迎交流,觉得低端的也请勿喷。


铺垫:
gfw就不多说了,大家感觉最多的就是某个网站不让访问,这个网站ip被阻止访问。但实际上,这只是原因之一,gfw手段中最不起眼的一个。因为google和facebook这样的大公司有成千上万的ip,且每天都在变化,因此,封ip根本来不及。当然现在谷歌IP被封的差不多了。其实,更大的原因是:DNS污染。也是本文要重嘟饩龅奈侍猓解决新一代的dns污染问题。有必要稍微介绍一下新的dns污染,印象中以前是把youtube解析到一个阿塞拜疆的一个IP ,近期升级以后,解析的IP都是随机的虚假IP,可谓满世界跑。本人有一次被解析到一个德国se情网站。

正文:
准备工作

我们需要一个国家禁止内容服务帐号,用来通过加密通道访问网站。我目前使用的自建在linode上的ss。可以流畅看720p的youtube。网上免费的应该也很多。
一台路由器,理论上能刷openwrt的内存足够的路由器都可,但这里针对Netgear wndr4300写的。我在新蛋活动时购买的,299RMB,昨天京东可以买2件减100,合249RMB一个,今天貌似只能满100-20了。
一个adsl上网环境,或者静态ip的也可以,再复杂的上网认证方式,我就不保证有效了
一根网线,openwrt刚刷好时,是关闭wifi的,只能通过网线连接。
若干openwrt下的软件。我会在文末贴上下载地址。


第一步4300到手时,直接web刷成openwrt,可以刷纯净版,也可以刷论坛里各路大神编译的。你如果想有实质性进步,我推荐用纯净版,自己从头到尾搞一遍,也算是基本入门了。
这里要注意一下,带有factory的版本是从官方固件刷openwrt时使用的,而带有sysupgrade标志的,是给已经刷了openwrt的用户升级用的。另外4300刷成openwrt以后不可以从web刷回原厂,不可web刷
带有factory的版本,只能web刷带有sysupgrade标志的固件。望各位小白周知。

第二步装软件。

路由刷成openwrt以后,访问192.168.1.1,修改管理密码。然后putty连上路由器,喜欢图形界面的winscp连上路由器,记得选择scp模式连接。如下 (用了微博图床,还请谅解水印):
Netgear_wndr4300_刷openwrt翻WALL手册

winscp连上以后,查看一下固件里集成了什么软件 个人建议是跟FQ有关的全部都卸载掉自己装新版的,虽然会没有luci界面,但是可以排除很多未知错误。

要装的软件有 国家禁止内容s(ss)+ dnscrypt-proxy + unbound + dnsmasq-full(可用自带的)+ bind-dig(可不装测试用) + ipset(固件里带iptables-mod-nat-extra的都是已经有了的,不用额外装)

SS主要是fq用,最好么用国家禁止内容s-libev。不要用spec版。后面的dnscrypt-proxy + unbound + dnsmasq-full 配合来解决dns污染,其中dnsmasq-full可以用一般固件里-带的base版。 ipset来转发需要fq的IP到ss的端口用。


4300是128M闪存,所以我建议各位卸载掉固件里自带的上述软件(如果有集成的话),自己装最新版。卸载命令 opkg remove xxx。然后用opkg install xxx来安装。

说到=装软件,一般的固件里opkg的配置都是错的,尤其是4300 nand闪存。所以我建议有需要的ipk自己下载下来用winscp放到/tmp下,然后用opkg install命令来安装。

下面以安装SS为例,介绍下怎么安装ipk。到文末下载所需的ipk,winscp连接上路由器,打开/tmp文件夹,如下图:

Netgear_wndr4300_刷openwrt翻WALL手册

额歌词露出来了 不要在意这些细节。

把附件里的国家禁止内容s-libev_2.1.1-1_ar71xx.ipk 拖到右边的/tmp里。注意不要拖到/tmp下的文件夹里了。

然后putty连上路由器,输入 cd /tmp回车 就切到/tmp下了 然后opkg install 国家禁止内容s-libev_2.1.1-1_ar71xx.ipk 就会开始安装。部分固件可能缺少组件会报错,这个缺什么就去https://downloads.openwrt.org/ba ... nand/packages/base/
去这里找依赖包。然后一样的步骤,把依赖包丢到/tmp下,用opkg install来安装,操作如下图:

Netgear_wndr4300_刷openwrt翻WALL手册


然后么一样的方法把剩下的dnscrypt-proxy + unbound装起来,这2个必装! bind-dig也装下,可以用来检测dns污染是否解决。 固件里没有自带iptables-mod-nat-extra的自己去https://downloads.openwrt.org/ba ... nand/packages/base/下载安装,搜索iptables-mod-nat-extra就好,当然你要是能opkg update成功的话,直接输入 opkg install iptables-mod-nat-extra 也可以的。

配置:

配置文件都集中在/etc下的,winscp切到/etc下。小白强烈建议用winscp来丢改配置文件。高手么putty里vi一下就好了。

第一个修改dnscrypt-proxy的配置文件,在/etc/config下有个dnscrypt-proxy。在winscp里双击直接可以修改的,

option port            '1053'

这句默认是用2053的,你改成1053就好,我这固件用默认的2053死活不可以。

然后保存,dnscrypt-proxy就算配置好了。

第二个修改unbound的配置文件,为了方便大家偷懒,我在附件里放了一个我自己用的 unbound.conf 配置文件了。你直接替换/etc/unbound下的unbound.conf。这里讲解一下unbound的作用,大家可以打开附件里的unbound.conf,拉到最下面会看到如下代码

forward-zone:
name: "gov.tw"
forward-addr:[email protected]

forward-zone:
    name: "."
    forward-addr: 202.96.107.27


除去最后一段,其他都是转发到[email protected]也就是转发给dnscrypt-proxy加密来处理dns请求。最后一段表示不在上述列表的 就用本地dns来解析。所以你应该把最后一个202.96.107.27 改成你当地的dns。

这里举个栗子 比如abc.com这个域名被GFW照顾了,你就需要在unbound.conf里加入下代码

forward-zone:
name: "abc.com"
forward-addr:[email protected]


以此类推,你发现被照顾的域名就自己加一下。

至此 unbound算是配置好了。

第三个修改dnsmasq
修改/etc/dnsmasq.conf 把里面的server=x.x.x.x (x.x.x.x表示IP)改为server=127.0.0.0#5353
没有server=x.x.x.x的 直接自己在最后面加一句server=127.0.0.0#5353


这里说下版本不同的dnsmasq,配置文件也各不相同。但是大体思路都一样 就是把server=改成127.0.0.0#5353,也是把所有的dns请求全部转发给unbound,大家可以在unbound的配置文件里发现-port 是5353.

然后unbound根据配置文件里的列表来判断哪些域名加密以后给opendns来解析,哪些给本地dns解析,以此来达到防治dns污染。这也是这个方案解决dns污染的主要思路。

第四个修改SS的配置

位置在/etc/国家禁止内容s.json,spec版的配置在/etc/国家禁止内容s/config.json下。格式如下:


{
    "server": "SS的服务器地址",
    "server_port": ss的端口,
    "local_port": 1080,#端口没事不要改动
    "password": "SS的密码",
    "timeout": 600,#默认是60,我服务端是600 这里也改为600
    "method": "加密方式用小写"
}


然后保存,这里还要去修改/etc/init.d下的国家禁k内容s的启动脚本。代码如下:


#!/bin/sh /etc/rc.common

START=95

SERVICE_USE_PID=1
SERVICE_WRITE_PID=1
SERVICE_DAEMONIZE=1

CONFIG=/etc/国家禁止内容s.json

start() {
        #service_start /usr/bin/ss-local -c $CONFIG
        service_start /usr/bin/ss-redir -c $CONFIG
        #service_start /usr/bin/ss-tunnel -c $CONFIG -l 5353 -L 8.8.8.8:53 -u
}

stop() {
        #service_stop /usr/bin/ss-local
        service_stop /usr/bin/ss-redir
        #service_start /usr/bin/ss-tunnel
}



主要是start 和stop下面的东西要改成一样。这里推荐用ss-redir,透明代理,这样可以实现连上路由器上的设备全部都自动fq,不需要任何插件来帮助,连上路由器就感觉不到墙的存在。强烈推荐改成上述启动脚本。

然后保存,SS就算改好了。

第五设置iptables转发规则

附件里有个foreign.txt,里面都是国外的IP段,把这个txt放到/etc下,然后putty里依次输入下面三句代码。

ipset -N redir hash:net
for subnet in `cat /etc/foreign.txt`; do ipset add redir $subnet;done
iptables -t nat -A PREROUTING -p tcp -m set --match-set redir dst -j REDIRECT --to-port 1080

就是把国外IP都转发到SS所用的1080端口,来实现FQ。



a后依次敲入一下代码来启动各个软件
/etc/init.d/unbound start
/etc/init.d/dnscrypt-proxy start
/etc/init.d/国家禁止内容s start
重启dnsmasq
/etc/init.d/dnsmasqrestart

如果测试通过了 把上面的三行代码 敲到/etc/firewall.user里。不然下次开机还要敲那三句。

如果之能打开google和1024 但是打不开fb youtube tw这些的话 去192.168.1.1 修改如下处:


Netgear_wndr4300_刷openwrt翻WALL手册


歌词又露出来了。不好意思。


还不行的话 就安装bind-dig 然后putty里输入 dig www.打不开的域名.com 看看dig出的IP,是否是虚假IP。或者直接和  dig www.打不开的域名.com @127.0.0.1 -p1053 以及 dig www.打不开的域名.com @127.0.0.1 -p5353来对比一下dig出的IP。就知道问题出在哪里了。

下面的附件里的包 文章里没提及的是依:包,务必要安装。

其中dnsmasq-full随意。其他都装下吧

都是71xx的ipk其他平台自己找下除了unbound都有编译好的:本的。权限问题只好分压上传、



开机启动可以用

/etc/init.d/unbound enable这样的命令 或者web界面那,启动项那里 把这几个软件改成开机启动

文章来源

http://www.right.com.cn/forum/thread-159242-1-1.html


   版权声明,所有转载都有注明出处,本站不负责承担任何法律责往。若有侵权,请联系我。我会及时删除。

电脑维护,系统安装,软 、硬件维修,电脑配件,零售业务,网站建设,路由器安装设置 服务器维护,电脑、网络维护,智能手机刷机,安装WIFI 调试!郴州网站建设 小程序搭建 郴州电脑维修

        咨询电话:18175576644  点击这里给我发消 息
   扫描二维码。关注公众号,小程序
       享受星级服务   

手机点击二维码关注
      


手机点击打开小程序
      


相关评论
免责申明:本站部分资料来源互联网,如果侵犯了您的版权,请作者速来电或QQ与本站联系,我们将第一时间给予以改正或删除。

Copyright © 2020 哎丫丫电脑 All Rights Reserved 
 工信部备案:湘ICP备14010293号-1

不想添加任何联系方式?点击我直接访客对话