V2Ray代理教程:一步步教你在Windows cmd和PowerShell中配置代理
简介
在Windows系统中,有时需要通过代理服务器来优化命令行工具的网络访问,例如在CMD和PowerShell环境下,合理配置代理可以帮助命令行程序顺畅地连接外部资源。本文将围绕V2Ray代理教程这一主题,详细介绍如何在Windows cmd和PowerShell中配置V2Ray代理端口,帮助你实现命令行环境下的代理访问设置。
Windows V2Ray代理基础介绍
Windows V2Ray代理是指通过配置环境变量或系统代理,让CMD等命令行工具通过本地V2Ray代理端口(通常是127.0.0.1:10808
)访问网络。V2Ray代理支持HTTP和SOCKS5协议,正确配置后可以优化网络访问路径。
如何在Windows CMD中临时设置V2Ray代理
要在当前CMD窗口临时生效,可在cmd命令行里执行以下命令。设置只影响当前窗口,关闭后失效。
set http_proxy=http://127.0.0.1:10808
set https_proxy=http://127.0.0.1:10808
set all_proxy=socks5://127.0.0.1:10808
Windows CMD永久生效的V2Ray代理配置
如果希望所有新开的CMD窗口都自动使用V2Ray代理,需要将代理变量写入系统环境变量。打开控制面板 → 系统→ 高级系统设置 → 环境变量
在用户变量或系统变量中新建以下变量,重新打开CMD窗口即可自动生效,如上图
变量名 | 变量值 |
---|---|
http_proxy | http://127.0.0.1:10808 |
https_proxy | http://127.0.0.1:10808 |
all_proxy | socks5://127.0.0.1:10808 |
设置好之后,我们打开cmd后,输入下面命令看环境变量是否被应用
echo %http_proxy%
PowerShell V2Ray代理配置方法
PowerShell访问环境变量的语法不同于CMD,临时设置代理需要在PowerShell窗口执行:
$env:http_proxy = "http://127.0.0.1:10808"
$env:https_proxy = "http://127.0.0.1:10808"
$env:all_proxy = "socks5://127.0.0.1:10808"
关闭PowerShell窗口后,这些设置失效。如果需要永久生效,那么它是依赖系统环境变量配置,和上面设置CMD的变量共用。PowerShell 正确查看环境变量的方法是:
echo $env:http_proxy
为什么ping命令不走V2Ray代理?
ping
命令基于ICMP协议,而V2Ray代理只支持TCP和UDP协议流量转发,因此无法通过V2Ray代理访问。ping命令不受环境变量影响,这是网络协议的限制。
如何测试V2Ray代理是否配置成功?
在CMD中
curl https://ipinfo.io
在PowerShell中
curl.exe https://ipinfo.io
或
Invoke-WebRequest https://ipinfo.io -UseBasicParsing
返回的IP地址显示为代理服务器的IP,则代理配置成功
如何取消V2Ray代理设置?
- 临时取消:
在CMD中执行
set http_proxy=
set https_proxy=
set all_proxy=
在PowerShell中执行
Remove-Item Env:http_proxy
Remove-Item Env:https_proxy
Remove-Item Env:all_proxy
- 永久取消:
删除前面在系统环境变量中新建的代理变量,重启电脑后生效。
一键启动代理 CMD 或 PowerShell
CMD 批处理脚本,新建文本,保存文件名为: proxy-cmd.cmd
@echo off
set http_proxy=http://127.0.0.1:10808
set https_proxy=http://127.0.0.1:10808
set all_proxy=socks5://127.0.0.1:10808
cmd
PowerShell 脚本,新建文本,保存文件名为:proxy-ps.ps1
$env:http_proxy="http://127.0.0.1:10808"
$env:https_proxy="http://127.0.0.1:10808"
$env:all_proxy="socks5://127.0.0.1:10808"
powershell