You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

开启VPN后Golang调试器失效,监听地址异常求助(GoLand环境)

问题描述

开启VPN后,GoLand 2023.1.1中的Golang调试器(dlv)无法正常工作:执行命令明确指定监听127.0.0.1:51782,但实际监听地址变为192.168.1.11:51782,关闭VPN后调试功能恢复正常。相关执行日志如下:

D:\Program Files\go\go1.18.5\bin\go.exe tool test2json -t 
D:\Program Files\JetBrains\GoLand 2023.1.1\plugins\go-plugin\lib\dlv\windows\dlv.exe --listen=127.0.0.1:51782 --headless=true --api-version=2 --check-go-version=false --only-same-user=false exec 
C:\Users\j'j\AppData\Local\JetBrains\GoLand2023.1\tmp\GoLand\___1server_controller__TestGetGoodsSubTypeNum.test.exe -- -test.v -test.paniconexit0 -test.run ^\QTestGetGoodsSubTypeNum\E$ #gosetup

API server listening at: 192.168.1.11:51782
2023-06-28T16:00:27+08:00 warning layer=rpc Listening for remote connections (connections are not authenticated nor encrypted)
解决方案
  • 明确设置调试配置的监听地址
    打开GoLand的「Run/Debug Configurations」,找到对应的Go测试或应用配置,切换到Debugger标签页,将Listen address手动设置为127.0.0.1:<端口号>,避免使用默认的localhost(VPN环境下localhost可能被解析到非回环地址)。

  • 强制dlv绑定回环接口
    进入GoLand的「Settings/Preferences」→「Build, Execution, Deployment」→「Debugger」→「Go」,在Additional debug flags中添加--bind=127.0.0.1,强制调试器绑定回环地址,不受VPN路由影响。

  • 调整VPN路由规则
    检查VPN客户端的路由设置,确保回环地址段(127.0.0.0/8)的流量不被VPN接管。部分VPN默认会路由所有流量,包括本地回环,导致dlv优先选择VPN分配的局域网IP作为监听地址。可在VPN客户端添加例外规则,让127.0.0.0/8段流量直接走本地网卡。

  • 重置GoLand调试缓存
    删除GoLand缓存目录(C:\Users\<你的用户名>\AppData\Local\JetBrains\GoLand2023.1\caches),重启GoLand后重新配置调试参数,排除缓存导致的配置异常。

内容的提问来源于stack exchange,提问作者lexwangw

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 00:54:53