
我有一個 CentOS 7 VPS沒有 IPv4,只有 IPv6 網路。我已開啟連接埠 443 來接受所有 TCP 連線。
當我嘗試wget https://www.litespeedtech.com/packages/6.0/lsws-6.0RC1-ent-x86_64-linux.tar.gz
,它會拋出一個錯誤(我認為這是因為https://litespeedtech.com/未啟用 IPv6):
Resolving www.litespeedtech.com (www.litespeedtech.com)... 52.55.120.73
Connecting to www.litespeedtech.com (www.litespeedtech.com)|52.55.120.73|:443... failed: No route to host.
當嘗試對 Google(啟用了 IPv6)進行相同操作時wget https://google.com
,它會成功:
Resolving www.google.com (www.google.com)... 2a00:1450:4016:805::2004, 172.217.23.68
Connecting to www.google.com (www.google.com)|2a00:1450:4016:805::2004|:443... connected.
HTTP request sent, awaiting response... 200 OK
如何從純 IPv6 VPS 連接到 IPv4 伺服器?我聽說過 TunnelBroker,但我完全是新手,不知道我應該如何配置它。
答案1
IPv6 和 IPv4 是不同的協定。如果您在網際網路空間中只有 IPv6 位址,則無法直接連線到純 IPv4 服務。這是一個非常簡短的答案 - “不,你不能”。
隧道經紀商及其他自由的據我所知,services 僅提供其他方向的隧道,即從 IPv4 到 IPv6,反之亦然。您可以在另一台運行雙棧(IPv4 和IPv6)的主機上設置自己的隧道,或者嘗試為此目的尋找一些商業服務,但這超出了伺服器故障的範圍,我懷疑這是否是您所需要的。
要下載文件,您可以使用其他 PC,然後透過 SSH 將其傳輸到您的 IPv6 盒子。
答案2
解決方案是更改為 Debian 10(儘管這也適用於 Ubuntu)並替換中的名稱伺服器/etc/resolv.conf
使用此公共 NAT64 切換服務:
search blue.kundencontroller.de
options rotate
nameserver 2a00:1098:2b::1
nameserver 2a00:1098:2c::1
nameserver 2a01:4f8:c2c:123f::1
nameserver 2001:67c:2b0::4
nameserver 2001:67c:2b0::6
請注意,resolv.conf 專門用於 EUServ VPS-es。如果您使用其他 VPS,請僅複製並貼上名稱伺服器
這使得 VPS 能夠(非常神奇地)存取 IPv4 網際網路(是的,甚至可以從 IPv4 供應商網站安裝軟體包)。
該服務由一個人運行,他還可以存取您的所有 IPv4 流量和所有 DNS 流量。如果您要傳遞敏感資料或正在製作一個嚴重的網站,我認為目前最好的選擇是獲得支援 IPv4 的 VPS。您也可以使用它來下載一些您無法下載的軟體包,然後恢復到原來的名稱伺服器。
答案3
使用直接 Wget 並不是將安裝套件取得到伺服器的唯一解決方案。由於僅 IPv6 的網路非常適合您的用例(Cloudflare 背後的網站),因此我不會嘗試使用任何駭客手段來獲得 IPv4 連接,即使是暫時的,但是使用其他方式傳輸數據:
使用具有 IPv4 和 IPv6 連接的中間伺服器並在那裡鏡像封包。
user@intermediate:/var/www$ wget https://ipv4only.example.com/packages/install.tar.gz user@vps:~$ wget https://intermediate.example.net/install.tar.gz
如果您已經有到伺服器的 SSH 連接,您也可以使用 SFTP (SSH 檔案傳輸協議)用於上傳包而不是直接下載它。
~/.wgetrc
配置您的 Wget 以在(或全域)中使用 HTTPS 代理/etc/wgetrc
:https_proxy = http://[Proxy_Server]:[port]
您可以使用任何支援 IPv6 和 HTTPS 並且您願意信任的代理程式。不過,我還是會透過比較 MD5 和來檢查文件的完整性 (
md5sum install.tar.gz
)。