使用go get/go install时出现proxy.golang.org连接拒绝问题求助
问题描述
使用go get或go install安装依赖时,始终遇到连接拒绝错误。执行命令如下:
> go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest go: github.com/golangci/golangci-lint/cmd/golangci-lint@latest: module github.com/golangci/golangci-lint/cmd/golangci-lint: Get "https://proxy.golang.org/github.com/golangci/golangci-lint/cmd/golangci-lint/@v/list": dial tcp: lookup proxy.golang.org on [::1]:53: read udp [::1]:53273->[::1]:53: read: connection refused
curl和git clone命令均可正常使用,请问可能是什么问题?
我的go env配置如下:
GO111MODULE='' GOARCH='amd64' GOBIN='' GOCACHE='/home/micro/.cache/go-build' GOENV='/home/micro/.config/go/env' GOEXE='' GOEXPERIMENT='' GOFLAGS='' GOHOSTARCH='amd64' GOHOSTOS='linux' GOINSECURE='' GOMODCACHE='/home/micro/.local/share/go/pkg/mod' GONOPROXY='' GONOSUMDB='' GOOS='linux' GOPATH='/home/micro/.local/share/go' GOPRIVATE='' GOPROXY='https://proxy.golang.org,direct' GOROOT='/usr/lib/go' GOSUMDB='sum.golang.org' GOTMPDIR='' GOTOOLCHAIN='auto' GOTOOLDIR='/usr/lib/go/pkg/tool/linux_amd64' GOVCS='' GOVERSION='go1.21.1' GCCGO='gccgo' GOAMD64='v1' AR='ar' CC='gcc' CXX='g++' CGO_ENABLED='1' GOMOD='/dev/null' GOWORK='' CGO_CFLAGS='-O2 -g' CGO_CPPFLAGS='' CGO_CXXFLAGS='-O2 -g' CGO_FFLAGS='-O2 -g' CGO_LDFLAGS='-O2 -g' PKG_CONFIG='pkg-config' GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1574177678=/tmp/go-build -gno-record-gcc-switches'
可能的原因及解决方法
1. DNS解析异常
错误日志明确显示解析proxy.golang.org时,本地IPv6 DNS服务器([::1]:53)无响应。而curl和git可能使用了IPv4 DNS配置,所以不受影响。
- 手动验证DNS解析:执行
nslookup proxy.golang.org或dig proxy.golang.org,确认是否能返回有效IP。 - 修改DNS配置:编辑
/etc/resolv.conf,添加可靠的公共DNS,比如:nameserver 8.8.8.8 nameserver 8.8.4.4 - 强制Go使用IPv4解析:执行以下命令后重试安装:
export GODEBUG=netdns=go+netgo
2. GOPROXY代理不可用
当前配置的https://proxy.golang.org在部分网络环境下访问受限,可替换为国内镜像代理:
go env -w GOPROXY=https://goproxy.io,direct
或
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
3. 模块支持未开启
当前GO111MODULE为空,建议开启Go模块支持:
go env -w GO111MODULE=on
4. 本地防火墙/安全工具拦截
临时关闭本地防火墙或安全工具,测试是否能正常安装。若恢复正常,需添加Go程序的网络访问权限。
内容的提问来源于stack exchange,提问作者microo8
相关产品推荐
相关产品推荐

