v2ray icon indicating copy to clipboard operation
v2ray copied to clipboard

如何切换IP4和IP6的访问通道

Open GelivableWu opened this issue 2 years ago • 7 comments

脚本一切正常,就是有一个疑问,我的服务器是双协议IP,V4V6都有,自己写了个简单的PHP页面获取客户端IP。 那么问题来了,在页面代码没改动的情况下,该页面偶尔显示V4IP,偶尔显示V6IP,请问有专门的设置通道吗?比如我只用V4IP访问

GelivableWu avatar Sep 29 '23 11:09 GelivableWu

@GelivableWu

脚本默认监听 0.0.0.0 所以理论上,V4 V6 都通的不用管 如果想要固定显示特定 IP:

export ip=1.2.3.4

默认情况下,脚本优先显示 V4 的

233boy avatar Sep 30 '23 01:09 233boy

感谢,因为自己是个菜鸟,请问这一行是加到哪里,是v2配置文件,还是nginx的server配置里面?

GelivableWu avatar Oct 04 '23 14:10 GelivableWu

@GelivableWu

不是加到哪里,而是设置这个就可以指定显示特定的 IP,你直接在终端先执行这个就好

233boy avatar Oct 05 '23 04:10 233boy

感谢关注问题,实测貌似无用,bash输入该命令,执行倒是成功了,但是显示IP还是V6,问了一下ai,说是此环境变量只在当前shell有效。 然后我翻阅了一下v2的配置文件说明手册,outbound对象的"sendThrough": "0.0.0.0",属性应该是可以设置出口IP,只是自己没搞定,以下是我的操作: 先是改 /etc/v2ray/conf 下的 VMess-mKCP-4365.json,打开看以后发现outbounds没有,于是直接写一个对象

    "outbounds": [{
        "sendThrough": "114.128.208.127",
        "protocol": "freedom",
        "settings": {}
    }]

然后重启v2,依旧显示ipv6地址。 退回来,在 /etc/v2ray/ 下 修改config.json,outbounds对象加"sendThrough": "114.128.208.127",因为有两个tag,暂时不明白tag的关联性,手册描述说是 此出站连接的标识,用于在其它的配置中定位此连接。当其值不为空时,必须在所有 tag 中唯一 希望有懂的朋友说一下,于是我在两个tag下面都加入sendThrough属性,重启v2提示启动失败,删除自己添加的内容再启动就正常了。 顺便另一个问题,我在手机上用v2rayng,老是域名无法解析,一会再开个issue提交一下。 手册地址 https://www.v2ray.com/chapter_02/01_overview.html 不太懂linux,不知道表述清楚没有,再次感谢up主对问题的关注!

GelivableWu avatar Oct 05 '23 08:10 GelivableWu

@GelivableWu

如果你在意的是用脚本查看信息的时候显示的是 V6,想要弄成 V4,那么可以临时设置一个变量指定 IP;就是上面我说的

如果你是想要通过小鸡 V4 去访问网站,那么你得在 outbounds 数组里面的第一个对象,插入一条 "sendThrough"

在 /etc/v2ray/config.json 这个文件内,更改 outbounds 数组,

默认下是

  "outbounds": [
    {
      "tag": "direct",
      "protocol": "freedom"
    },
    {
      "tag": "block",
      "protocol": "blackhole"
    }
  ]

加一下 sendThrough 指定 IP,

  "outbounds": [
    {
      "tag": "direct",
      "sendThrough": "1.2.3.4",
      "protocol": "freedom"
    },
    {
      "tag": "block",
      "protocol": "blackhole"
    }
  ]

然后使用 v2ray restart 重启一下进程就生效了

233boy avatar Oct 05 '23 13:10 233boy

感谢!就是这里的问题,已经解决。 然后我测试了一下修改conf文件夹下的配置文件,不动主配置文件,一样的效果。 我一共有3个配置文件,一个是WS+TLS,两个是直接KCP。 奇怪的是只配置了一个文件走ipv4,其他的配置也是都走的ipv4了,暂时可以先不去理他,下面开始折腾分IP出口,准备先自己研究一下。 谢谢,又学到了

GelivableWu avatar Oct 05 '23 17:10 GelivableWu

@GelivableWu

你在 conf 那边指定也行,但是无论在哪个配置指定了,那么全部都走 V4,因为这是一个全局选项

233boy avatar Oct 06 '23 01:10 233boy