答案1
有一個開放的 GitHub 問題關於這個錯誤。
看來最有可能的問題是/etc/resolv.conf
沒有正確生成。確保它包含一行nameserver
有效的 DNS 伺服器,最好是本機網路上的伺服器。許多路由器為其網路提供 DNS 服務;在我的網路上,我會新增這一行:
nameserver 192.168.1.1
如果存在與有效 DNS 伺服器不對應的項目,請將其刪除。
如果您使用第三方防毒產品,請嘗試停用其防火牆 - 有報告指出某些此類程式會幹擾 Bash 的連線。
答案2
建立/etc/apt/apt.conf
以新增代理配置。
sudo nano /etc/apt/apt.conf
將此行新增到您的/etc/apt/apt.conf
文件中
Acquire::http::Proxy "http://proxyaddress:port";
使用Ctrl+儲存它X,Y然後再試一次:
現在運行以下命令
sudo apt-get update
我嘗試並驗證了。
答案3
您的 DNS 設定似乎不正確,或者網關/網路遮罩可能不相容。
用於ip link
驗證介面是否列為“up”,然後ifconfig
用於該介面的設定。您可能還需要cat /etc/sysconfig/network-scripts/ifcfg-eth?
查看介面的設定。
嘗試 traceroute -d 8.8.8.4
查看是否可以存取 google 的公共 DNS 伺服器。這將驗證您是否正在存取外部網路。如果它可以工作,-d
但在沒有運行時無法將 IP 解析為名稱,-d
則快速修復方法是將 8.8.8.8 和 8.8.8.4 添加到已啟動介面的 DNS 設定中,然後發出 aservice network restart
重新啟動網路服務並使DNS更改處於活動狀態。
我忘記了,如果您還沒有配置 gui 介面,您可以使用 輕鬆編輯介面配置system-config-network
。使用箭頭鍵、Tab、ESC 和 Enter 進行導航
答案4
嘗試從 WSL2 降級到 WSL1。
例如: wsl --set-version Ubuntu 1
這解決了我所有的連線問題。