我有一台无法访问互联网的机器,但可以连接到可以访问互联网的机器。我不想使用代理服务器,有人告诉我我可以使用 ssh。所以我只是通过
ssh -D 1080 [email protected]
我已经确认这是可行的
curl -v --socks5-hostname localhost:1080 http://google.com
此命令返回预期的 HTML,因此它一定可以正常工作。
我已将 /etc/tsocks.conf 更改为:
server = 127.0.0.1
server_port = 1080
然而,apt-get 对此不以为然;
# tsocks apt-get update
Err http://security.debian.org wheezy/updates Release.gpg
Could not resolve 'security.debian.org'
etc
我的 /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
我已经在谷歌上搜索了一段时间,我尝试将以下内容添加到 /etc/apt/apt.conf
Acquire::http::Proxy "http://localhost:1080/";
并且根本不使用 tsocks(我已经尝试过这两种方法),这会使其失败得更快。
我没什么主意了,这应该真的可行但却不行。有什么帮助吗?
答案1
问题出在 DNS 上。
显然,tsocks 无法或不会解析域名。
我将 apt-get 尝试查找的每个域名的 IP 地址添加到 /etc/hosts 中,然后 tsocks 神奇地工作了。