OpenWrt路由器搭建Shadowsocks+Pdnsd服务并使用GFWList实现自动翻墙

目录

前言

在中国,由于众所周知的原因,访问国外网站往往需要翻墙。而Shadowsocks是一种常用的翻墙工具,它可以将网络流量加密并通过代理服务器转发,从而实现翻墙的目的。但是,使用Shadowsocks需要手动配置代理服务器,不太方便。而GFWList是一个维护了大量被墙网站的列表,可以帮助用户自动识别需要翻墙的网站,并自动使用代理服务器访问。Pdnsd是一个本地DNS服务器,可以缓存DNS解析结果,提高访问速度。本文将介绍如何使用OpenWrt路由器搭建Shadowsocks+Pdnsd服务,以及如何使用GFWList实现自动翻墙。同时,本文还将回答一些常见问题,帮助读者更好地理解和使用这些工具。

什么是OpenWrt

OpenWrt是一个基于Linux的嵌入式操作系统,可以运行在各种路由器和嵌入式设备上。它提供了一个完整的软件包管理系统,可以方便地安装和管理各种软件。同时,OpenWrt还提供了一个Web界面,可以方便地进行路由器的配置和管理。

什么是Shadowsocks

Shadowsocks是一种基于Socks5代理协议的加密传输工具,可以将网络流量加密并通过代理服务器转发,从而实现翻墙的目的。Shadowsocks可以运行在各种平台上,包括Windows、Mac、Linux、Android等。

什么是Pdnsd

Pdnsd是一个本地DNS服务器,可以缓存DNS解析结果,提高访问速度。Pdnsd可以运行在各种平台上,包括Windows、Mac、Linux等。

什么是GFWList

GFWList是一个维护了大量被墙网站的列表,可以帮助用户自动识别需要翻墙的网站,并自动使用代理服务器访问。GFWList可以与Shadowsocks等翻墙工具配合使用,实现自动翻墙的目的。

搭建Shadowsocks+Pdnsd服务

安装Shadowsocks

  1. 在OpenWrt的Web界面中,进入软件包管理页面。
  2. 在软件包管理页面中,搜索shadowsocks-libev,并安装。
  3. 安装完成后,在Web界面中进入服务-Shadowsocks页面,进行配置。
  4. 在Shadowsocks页面中,填写代理服务器的IP地址、端口号、密码等信息,并保存。

安装Pdnsd

  1. 在OpenWrt的Web界面中,进入软件包管理页面。
  2. 在软件包管理页面中,搜索pdnsd,并安装。
  3. 安装完成后,在Web界面中进入服务-Pdnsd页面,进行配置。
  4. 在Pdnsd页面中,填写上游DNS服务器的IP地址、端口号等信息,并保存。

配置Shadowsocks和Pdnsd

  1. 在OpenWrt的Web界面中,进入系统-启动项页面。
  2. 在启动项页面中,添加以下两个启动项:
    • /etc/init.d/shadowsocks-libev enable
    • /etc/init.d/pdnsd enable
  3. 保存并重启路由器。

使用GFWList实现自动翻墙

安装GFWList

  1. 在OpenWrt的Web界面中,进入软件包管理页面。
  2. 在软件包管理页面中,搜索shadowsocks-libev-spec,并安装。
  3. 安装完成后,在Web界面中进入服务-Shadowsocks页面,进行配置。
  4. 在Shadowsocks页面中,勾选“使用GFWList”选项,并保存。

配置GFWList

  1. 在OpenWrt的Web界面中,进入系统-计划任务页面。

  2. 在计划任务页面中,添加以下任务:

    • 在每天凌晨3点左右,运行以下命令:

      /usr/bin/gfwlist2dnsmasq -o /etc/dnsmasq.d/gfwlist.conf /etc/init.d/dnsmasq restart

  3. 保存并重启路由器。

常见问题

如何解决Shadowsocks连接失败的问题

  1. 检查代理服务器的IP地址、端口号、密码等信息是否填写正确。
  2. 检查代理服务器是否正常工作。
  3. 检查路由器是否能够访问代理服务器。

如何解决Pdnsd无法解析域名的问题

  1. 检查上游DNS服务器的IP地址、端口号等信息是否填写正确。
  2. 检查上游DNS服务器是否正常工作。
  3. 检查路由器是否能够访问上游DNS服务器。

如何更新GFWList

  1. 在OpenWrt的Web界面中,进入系统-计划任务页面。
  2. 在计划任务页面中,修改之前添加的任务,将命令中的/usr/bin/gfwlist2dnsmasq替换为/usr/bin/gfwlist2dnsmasq-update。
  3. 保存并重启路由器。
正文完