Answers:
您可以使用PAC(代理自动配置脚本)进行设置。它们是用Javascript编写的小脚本,可让您指定各种连接规则。大多数现代桌面Web浏览器都可以毫无问题地读取它们,我在Internet Explorer和Firefox中都设置了相同的浏览器。
一个最小的PAC文件,始终将您发送到端口81上的代理服务器proxy.companyname:
function FindProxyForURL(url, host)
{
return "PROXY proxy.companyname:8080";
}
还有一个PAC文件的稍微复杂的示例,该文件通过检查您选择的IP地址范围来检查您所在的网络。在此示例中,DHCP为您公司中的所有客户端PC提供了IP地址在10.10。*范围内,并通过端口81上的代理服务器proxy.companyname访问Internet 。
//Turn debug mode on by setting debug variable to any non-empty string
//Note that "" is an empty string, and that "0", "1" & "test" are not empty strings.
function FindProxyForURL(url, host)
{
var ip = myIpAddress();
var debug = "";
if(debug)
{
alert("proxy.pac IP=" + ip + " HOST=" + host + " URL=" + url);
}
// All client PCs on the internal network will have a 10.10.x.x address, check if I have this
if (shExpMatch(ip, "10.10.*"))
{
if(debug)
{
alert("Proxy for " + url);
}
return "PROXY proxy.companyname:81";
}
// If you have a different IP then this isn't the company network
else
{
if(debug)
{
alert("You are not at CompanyName so going direct for " + url);
}
return "DIRECT";
}
}
该脚本还具有调试模式,可用于测试脚本是否正常工作以及它认为当前连接应该处于哪种模式(PROXY或DIRECT连接)。
您还可以制作一个更复杂的脚本,以检查要连接的服务器是否在公司内部网络中(因此,即使您的PC当前在公司网络中,因此也需要直接连接),这就是您要使用的位置。 d将您通常放入IE的代理例外框中的所有内容放入,方法是将其展开,如下所示:
//Turn debug mode on by setting debug variable to any non-empty string
//Note that "" is an empty string, and that "0", "1" & "test" are not empty strings.
function FindProxyForURL(url, host)
{
var ip = myIpAddress();
var debug = "";
if(debug)
{
alert("proxy.pac IP=" + ip + " HOST=" + host + " URL=" + url);
}
// Detect if trying to connect to internal/intranet host
if(isPlainHostName(host) || dnsDomainIs(host, "intranet.companyname"))
{
if(debug)
{
alert("Direct for " + url);
}
return "DIRECT";
}
// Detect if trying to connect to URLs on the internal network via internal DNS suffix or IP address
if(shExpMatch(url, "*.companyname") || shExpMatch(host, "10.100.*"))
{
if(debug)
{
alert("Direct for " + url);
}
return "DIRECT";
}
// All client PCs on the internal network will have a 10.10.x.x address, check if I have this
if (shExpMatch(ip, "10.10.*"))
{
if(debug)
{
alert("Proxy for " + url);
}
return "PROXY proxy.companyname:8080";
}
// If you have a different IP then this isn't the company network
else
{
if(debug)
{
alert("You are not at CompanyName so going direct for " + url);
}
return "DIRECT";
}
}
通过将此文件保存为PC的C驱动器上的proxy.pac之类的文件,然后对于Internet Explorer,转到“工具”->“选项”(或“控制面板”->“ Internet选项”),然后单击“连接”选项卡,再单击“ LAN设置”按钮。现在,从底部的“使用代理服务器”框中剔除勾号,然后在“使用自动配置脚本”中打勾,并使用file:// URL键入PAC文件的地址file://C:/proxy.pac
。
对于Firefox,也可以转到工具->选项,依次单击高级选项卡,网络选项卡,设置按钮,然后单击“自动代理配置URL”设置,再次使用file:/// URL(请注意,在Firefox中在冒号之后是3个斜线,例如file:///C:/proxy.pac
。
请注意,Internet Explorer 11更改了此行为,现在您无法从“ file://” URL加载PAC文件,必须使用“ HTTP://”或“ HTTPS://” URL。
在Internet Explorer 11中,WinINET团队已禁用WinINET对基于file://的脚本的支持,以促进跨网络堆栈的互操作性。建议公司改为将其代理配置脚本托管在HTTP或HTTPS服务器上。
有一种解决方法可以暂时重新启用此功能,但不建议您使用它,因为以后的更新也可能禁用此功能。
作为临时的解决方法,可以通过设置以下注册表项来删除此阻止:
密钥:HKLM \ SOFTWARE \ Policies \ Microsoft \ Windows \ CurrentVersion \ Internet设置\ 值:EnableLegacyAutoProxyFeatures 类型:REG_DWORD 资料:1请记住,这只是一个临时措施,因为有充分的理由引入了此块,并且删除该块不会神奇地修复基于WinHTTP的应用程序。
还要注意,在进行IE11更改后,您将需要更改自动配置脚本的地址设置,因为IE 11仅接受一种语法(请参见下面IE Internals博客上链接文章的底部)。
但是,如前所述,此注册表项变通办法不太可能在Internet Explorer的将来版本中继续起作用,因此,最好找到一种将PAC保持在Web服务器上的方法。Windows内置的IIS Web服务器可以执行此操作,并且还有更多最小的功能也可以在笔记本电脑上安装。
有关IE Internals博客条目的更多信息,了解Web代理配置。
描述:
每当移动用户移动到不同的网络时,都必须将特定的IP地址,网关地址,子网掩码,代理服务器和默认打印机等更改为特定的网络环境。为此,他必须记住每个网络的TCP / IP设置信息。另外,他还必须重新启动计算机才能将其应用到系统并访问Internet。
不要在每次更改位置时浪费时间重新配置计算机网络设置。免费IP切换器是您的理想解决方案。只需单击一次,就可以在预配置的网络设置之间切换,而无需重新启动。借助免费IP切换器,您可以自动更改PC上的所有网络设置:IP地址,网络掩码,默认网关,DNS服务器,WINS服务器,代理设置,默认打印机等。
特征: