[我希望這是正確的 StackExchange 網絡,不確定這是否更屬於這裡還是 Unix+Linux ]
以前,我只是在我的 Linux 筆記型電腦上使用 svn CLI,一切正常。現在我遷移到一台新的桌面 Linux 機器(相同的 Arch Linux 發行版,複製了所有設定檔),它突然拒絕連線。奇怪的是
- 我仍然可以在同一個 wifi 網路內連接我的舊筆記型電腦
- 在新機器上,svn CLI 無法工作,但 TortoiseSVN (在 wine 中)做工作!
我已經不知道這可能是什麼原因了。我問我們的 SVN 伺服器管理員是否有想法,但他也一無所知。顯然我是唯一一個有這個問題的人。
一些細節:
命令
svn list https://svn.OUR.DOMAIN/svn/REPO/trunks/OURTRUNK
svn: E170013: Unable to connect to a repository at URL 'https://svn.OUR.DOMAIN/svn/REPO/trunks/OURTRUNK'
svn: E000111: Error running context: Connection refused
checkout
真的,與或其他任何東西一樣。嘗試http
給了我Redirecting to URL 'https://svn.....
同樣的錯誤訊息。我有點不知道這意味著什麼,我發現 SVN 文件很難搜索,而且 google 也沒有產生任何結果。
我嘗試刪除我的配置以$HOME/.subversion
查看這是否是問題的原因,但結果相同。
我的/etc/hosts
那裡沒有任何相關的內容,我沒有任何條目.netrc
(我認為這會相關?不確定)。我還可以透過以下方式取得伺服器 IPv4/6host svn.OUR.DOMAIN
有人有線索嗎?我缺少任何明顯的地方並且應該尋找根本原因嗎?
答案1
原來這是 IPv6 問題!
當做 a 時curl -vvvv https://svn.OUR.DOMAIN/.....
,我得到了
* connect to SOME_IPV6_ADDR port 443 failed: Connection refused
* Trying SOME_IPV4_ADDR...
* Connected to svn.OUR.DOMAIN (XXX.XXX.XXX.XXX) port 443
所以將 ipv4 位址放入/etc/hosts
類似
XXX.XX.XX.XXX svn.OUR.DOMAIN
解決了問題!