因此,正如标题所述,我使用 SoftEther 设置了自己的 VPN。我在一些不受限制的设备上对其进行了测试,它似乎运行良好。但是,在托管设备上使用它仍然会导致网站被屏蔽,就像以前一样。托管设备有一个全局 http 代理。所有这些都发生在我自己的网络上。我需要一些建议,关于下一步该怎么做。
这是我探索后发现的主要内容:
执行过滤的 Web 代理可以看到我的 VPN 的 IP 地址,而网站等可以看到 Web 代理的 IP 地址(大多数情况下)。我发现的一个例外是连接到 IRC 网络时;它们仍然可以看到 VPN 的 IP 地址。VPN 让几乎所有流量都通过 Web 代理,这就是被屏蔽的网站仍然被屏蔽的原因。
我能做些什么来解决这个问题?或者这就是结局?我并不关心解决方案的难度;我只是想知道它。
我还发现了网络代理的配置(如果您这么称呼它的话?)。
/* Modify but do not remove the following 3 lines */
/* For Cloud, the swgdomain should be the cloud host (ncxxx-cncxxxx.ibosscloud.com), the swgpublicIP should be your home network NAT IP address, and the domain should be your domain or your custom login page domain */
var swgdomain = "[REDACTED]"
var domain = "[REDACTED]"
var swgpublicip = "[REDACTED]"
/* MOST PEOPLE WILL NOT NEED TO EDIT BELOW THIS LINE: */
/* EAM 20170822, don't change the template without consulting [REDACTED] */
function FindProxyForURL(url,host) {
hostIP = dnsResolve(host)
swgpublicip = dnsResolve(swgdomain)
/* Bypass the proxy for local resources: */
if (isPlainHostName(host) ||
shExpMatch(host, "*.local") ||
isInNet(hostIP, "10.0.0.0", "255.0.0.0") ||
isInNet(hostIP, "172.16.0.0", "255.240.0.0") ||
isInNet(hostIP, "192.168.0.0", "255.255.0.0") ||
isInNet(hostIP, "169.254.0.0", "255.255.0.0") ||
isInNet(hostIP, "224.0.0.0", "240.0.0.0") ||
isInNet(hostIP, "240.0.0.0", "240.0.0.0") ||
isInNet(hostIP, "0.0.0.0", "255.0.0.0") ||
isInNet(hostIP, "127.0.0.0", "255.0.0.0")
) {return "DIRECT"; }
/* These domains are for your equipment specifically: */
else if (shExpMatch(host, "*" + domain) ||
(host == swgpublicip) ||
(hostIP == swgpublicip)
) { return "DIRECT"; }
/* These are for Google SSO: */
else if (shExpMatch(host, "*gstatic.com") ||
shExpMatch(host, "accounts.google.com")
) { return "DIRECT"; }
/* These are for Apple devices (such as iPads): */
else if (shExpMatch(host, "*appleiphonecell.com") ||
shExpMatch(host, "*thinkdifferent.us") ||
shExpMatch(host, "*airport.us") ||
shExpMatch(host, "*ibook.info") ||
shExpMatch(host, "captive.apple.com") ||
shExpMatch(url, "http://gsp1.apple.com/pep/gcc") ||
shExpMatch(host, "*itools.info") ||
shExpMatch(url, "http://www.apple.com/library/test/success.html") ||
shExpMatch(host, "*guzzoni.apple.com") )
{ return "DIRECT"; }
/* This section is for Microsoft: */
else if (shExpMatch(host, "*download.microsoft.com") ||
shExpMatch(host, "*ntservicepack.microsoft.com") ||
shExpMatch(host, "*windowsupdate.microsoft.com") ||
shExpMatch(host, "*update.microsoft.com") ||
shExpMatch(host, "*cdm.microsoft.com") ||
shExpMatch(host, "*wustat.windows.com") ||
shExpMatch(host, "*windowsupdate.com") ||
shExpMatch(host, "*windowsupdate.microsoft.com") )
{ return "DIRECT"; }
/* Captive portals (hotels and such) and local preferences: */
else if (shExpMatch(host, "*wayport.net") )
{ return "DIRECT"; }
/* This is for iboss servers */
else if (shExpMatch(host, "*.iboss.com") ||
shExpMatch(host, "*.ibosscloud.com") ||
isInNet(hostIP, "208.70.72.0", "255.255.248.0") ||
isInNet(hostIP, "206.125.41.128", "255.255.255.192") )
{ return "DIRECT"; }
/* The final proxy statement: */
else if (dnsResolve("myiboss.net") == "208.70.74.18")
{ return "PROXY " + swgpublicip + ":8009"; }
/* If on network, go direct (no proxy): */
else { return "DIRECT"; }
}
答案1
如果设备认为它不在自己的 LAN 上,它就会尝试连接到代理,所以我看到两个选项:
拦截与路由器上的代理的连接,将其转移到您自己的代理/公共代理(如何执行此操作取决于您的路由器,并非总是可行)
欺骗设备,使其相信自己位于其 LAN 上。查看配置文件,我们发现它会尝试:
else if (dnsResolve("myiboss.net") == "208.70.74.18") { return "PROXY " + swgpublicip + ":8009"; }
因此,将您的 DNS 服务器配置为对 myiboss.net 返回 208.70.74.18 以外的其他内容应该可以解决问题(这可能需要更改 DNS 服务器,在大多数路由器上都应该是可能的)。