v2ray-openwrt 转发DNS实战教程

目录

1. 简介

v2ray-openwrt 转发DNS是一种在OpenWRT系统上使用v2ray实现DNS转发的方法。通过配置v2ray的DNS转发功能,可以将所有DNS请求通过v2ray代理服务器进行转发,从而实现科学上网和DNS污染绕过。这种方法可以有效解决在OpenWRT路由器上无法直接使用代理的问题,为用户提供稳定可靠的科学上网体验。

2. 准备工作

2.1 硬件要求

  • 支持OpenWRT固件的路由器设备
  • 路由器至少需要32MB的RAM和8MB的Flash存储空间

2.2 软件准备

  • OpenWRT固件 (推荐 19.07 或更新版本)
  • v2ray软件包

3. 安装v2ray

3.1 添加软件源

首先需要在OpenWRT系统中添加第三方软件源,以便安装v2ray软件包。编辑 /etc/opkg.conf 文件,在文件末尾添加以下内容:

src/gz openwrt_core https://mirrors.cloud.tencent.com/openwrt/releases/19.07.7/packages/mipsel_24kc/base src/gz openwrt_packages https://mirrors.cloud.tencent.com/openwrt/releases/19.07.7/packages/mipsel_24kc/packages src/gz openwrt_routing https://mirrors.cloud.tencent.com/openwrt/releases/19.07.7/packages/mipsel_24kc/routing src/gz openwrt_telephony https://mirrors.cloud.tencent.com/openwrt/releases/19.07.7/packages/mipsel_24kc/telephony

3.2 安装v2ray

在OpenWRT系统中运行以下命令安装v2ray软件包:

opkg update opkg install v2ray

等待安装完成即可。

4. 配置v2ray

4.1 编辑配置文件

v2ray安装完成后,需要编辑其配置文件。OpenWRT系统中v2ray的配置文件位于 /etc/v2ray/config.json。使用以下命令打开并编辑配置文件:

vi /etc/v2ray/config.json

在配置文件中添加以下内容:

{ “log”: { “access”: “/var/log/v2ray/access.log”, “error”: “/var/log/v2ray/error.log”, “loglevel”: “warning” }, “inbounds”: [ { “port”: 1080, “protocol”: “socks”, “settings”: { “auth”: “noauth”, “udp”: true } } ], “outbounds”: [ { “protocol”: “vmess”, “settings”: { “vnext”: [ { “address”: “your_v2ray_server_address”, “port”: 10086, “users”: [ { “id”: “your_uuid”, “alterId”: 64 } ] } ] } }, { “protocol”: “dns”, “settings”: { “address”: “8.8.8.8”, “port”: 53 }, “tag”: “dns-out” } ], “dns”: { “servers”: [ “8.8.8.8”, “8.8.4.4” ] }, “routing”: { “rules”: [ { “type”: “field”, “outboundTag”: “dns-out”, “domain”: [ “geosite:gfw” ] } ] }}

请根据实际情况修改以下参数:

  • your_v2ray_server_address: 你的v2ray服务器地址
  • your_uuid: 你的v2ray用户ID(UUID)

4.2 添加DNS转发规则

接下来需要在OpenWRT的防火墙配置中添加DNS转发规则,将所有DNS请求转发给v2ray处理。编辑 /etc/config/firewall 文件,在 config forwarding 部分添加以下内容:

config forwarding option src lan option dest wan option proto udp option src_port 53 option dest_port 53

4.3 启动v2ray

完成上述配置后,就可以启动v2ray服务了。运行以下命令启动v2ray:

/etc/init.d/v2ray start

如果启动成功,v2ray服务将在后台运行。

5. 测试与验证

5.1 DNS解析测试

在OpenWRT系统中运行以下命令测试DNS解析是否正常:

nslookup www.google.com

如果能正确解析出Google的IP地址,说明DNS转发配置成功。

5.2 代理测试

可以使用以下命令测试v2ray代理是否正常工作:

curl –socks5 127.0.0.1:1080 https://www.google.com

如果能正常访问Google网站,说明v2ray代理配置成功。

6. 常见问题FAQ

6.1 v2ray无法启动?

可能是由于配置文件错误或者系统资源不足导致。请检查以下几点:

  • 检查 /etc/v2ray/config.json 配置文件是否有语法错误
  • 检查路由器是否有足够的内存和存储空间运行v2ray
  • 尝试重启路由器或者重新安装v2ray软件包

6.2 DNS转发不生效?

请检查以下几点:

  • 防火墙转发规则是否正确配置
  • v2ray的DNS设置是否正确
  • 系统DNS设置是否已经指向v2ray的本地监听地址

6.3 如何更新v2ray?

可以使用以下命令更新v2ray软件包:

opkg update opkg install v2ray –force-reinstall

这将会下载并安装最新版本的v2ray。更新后需要重新配置v2ray,并重启服务。

正文完