如有问题,欢迎到 网络跳越论坛 或 tg群https://t.me/hijkclub 交流。

Shadowsocks/SS、ShadowsocksR/SSR和V2Ray三种广为人知的代理技术,除SSR自带ipv6支持,其余两种技术官方都没有明确表示支持同时监听ipv4和ipv6。目前本站提供的 Shadowsocks/SS一键脚本V2Ray一键脚本 默认只监听ipv4地址,而 ShadowsocksR/SSR一键脚本 默认同时监听ipv4和ipv6。

如果你使用了ipv6的机器(vultr官网有2.5刀每月的机器,只有ipv6,购买参考 购买vultr服务器超详细图文教程),或者想处理仅有ipv6的流量,SS和V2Ray该怎么做才有可能实现呢?

答案便是:通过代理转发!

常用的反向代理软件有Nginx、haproxy。本教程以CentOS系统上的Nginx为例,简要介绍在有ipv6地址的服务器上监听ipv6端口,然后转发流量到本地ipv4端口的步骤。

首先,安装Nginx。本网站提供的一键脚本已经默认安装了,运行过一键脚本可跳过此步。如果你的服务器没有安装,请用这条命令安装:yum install -y epel-release && yum install -y nginx

接着,配置Nginx监听ipv6流量,然后转发给后端的SS/SSR/V2ray。我们假设后端技术监听的端口是ipv4的12345并且没有监听ipv6端口,那么在 /etc/nginx/nginx.conf 文件中增加如下配置:

stream {
  server {
    listen [::]:12345;
    proxy_pass 127.0.0.1:12345;
  }
}

配置好后,用 nginx -t 测试查看有无错误。如果配置正确,用 systemctl restart nginx 重启Nginx。

通过如此简单的配置,就可以让后端的服务器支持ipv6流量啦!用 netstat -ntlp 命令查看监听的端口,能看到 12345 端口正在由 Nginx 监听:

监听ipv6流量

监听ipv6流量


10 条评论

头像

shz123 · 2020年3月18日 13:06

您好,请问Ubuntu nginx测试报错该怎么办呢?
(base) root@shz123:~# nginx -t
nginx: [emerg] unknown directive “stream” in /etc/nginx/nginx.conf:35
nginx: configuration file /etc/nginx/nginx.conf test failed

    跳越者

    跳越者 · 2020年3月18日 13:11

    配置错了,注意填写的位置

      头像

      shz123 · 2020年3月18日 13:18

      请问是将它填写到http {}之中吗?还是填写到哪里?

        跳越者

        跳越者 · 2020年3月18日 13:19

        不是,外面

          头像

          shz · 2020年3月18日 13:35

          您好,我做了各种尝试还是报错,我的/etc/nginx/nginx.conf设置如下,我该填写到哪里?,我使用到是一键伪装v2ray,非常感谢。
          user www-data;
          worker_processes auto;
          error_log /var/log/nginx/error.log;
          pid /run/nginx.pid;

          # Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
          include /usr/share/nginx/modules/*.conf;

          events {
          worker_connections 1024;
          }

          http {
          log_format main ‘$remote_addr – $remote_user [$time_local] “$request” ‘
          ‘$status $body_bytes_sent “$http_referer” ‘
          ‘”$http_user_agent” “$http_x_forwarded_for”‘;

          access_log /var/log/nginx/access.log main;

          sendfile on;
          tcp_nopush on;
          tcp_nodelay on;
          keepalive_timeout 65;
          types_hash_max_size 2048;

          include /etc/nginx/mime.types;
          default_type application/octet-stream;

          # Load modular configuration files from the /etc/nginx/conf.d directory.
          # See http://nginx.org/en/docs/ngx_core_module.html#include
          # for more information.
          include /etc/nginx/conf.d/*.conf;

          }

          跳越者

          跳越者 · 2020年3月18日 13:52

          不是让你写在和events同一级吗?

          头像

          shz123 · 2020年3月18日 13:54

          好的 谢谢您

头像

Kaze · 2020年2月5日 12:52

如何用纯IPV6机器进行VPS搭建?
使用VULTER 2.5刀的IPV6机器,bitvise无法识别IPV6地址

    跳跃者

    跳跃者 · 2020年2月5日 13:03

    如果你本机没有ipv6地址,那个机器是用不了的

      头像

      Kaze · 2020年2月5日 13:23

      好的 谢谢站长

发表评论

电子邮件地址不会被公开。 必填项已用*标注