Posso fazer com que o Windows 7 altere minhas configurações de proxy com base na minha conexão de rede?

26

Movendo meu LapTop entre o trabalho e a casa, preciso alterar minhas configurações de proxy da Internet. Existe alguma construção no Windows 7 para alterar essas configurações com base na minha rede ativa no momento?

    
por Hakan Forss 23.09.2009 / 23:07

3 respostas

21

Você pode configurá-lo com um PAC (script de configuração automática de proxy). Eles são pequenos scripts escritos em Javascript que permitem especificar várias regras de conexão. A maioria dos navegadores modernos de desktop pode lê-los sem problemas, eu tenho o mesmo configurado no Internet Explorer e no Firefox.

Um arquivo PAC mínimo que sempre envia para o servidor proxy proxy.companyname na porta 81:

function FindProxyForURL(url, host)
{
     return "PROXY proxy.companyname:8080";
}

E um exemplo um pouco mais complicado de um arquivo PAC que verifica em qual rede você está, verificando qual faixa de endereços IP você escolheu. Neste exemplo, todos os PCs clientes da sua empresa recebem um endereço IP no intervalo 10.10. * Pelo DHCP e acessam a Internet através do servidor proxy proxy.companyname na porta 81.

//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";
     }

  }

O script também tem um modo de depuração que você pode usar para testar se está funcionando e qual modo (conexão PROXY ou DIRECT) acha que sua conexão atual deve ser.

Você também pode criar um script mais complexo que verifique se o servidor ao qual você está se conectando está na rede interna da empresa (e, portanto, deseja uma conexão DIRETA, embora o PC esteja na rede da empresa). onde você colocaria qualquer coisa que normalmente colocasse na caixa de exceções do proxy do IE, expandindo assim:

//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";
     }

  }

Use este arquivo salvando-o em algum lugar na unidade C do seu PC como algo como proxy.pac e, em seguida, no Internet Explorer, vá para Ferramentas - > Opções (ou Painel de Controle - > Opções da Internet) e depois clique na guia Conexões, clique no botão Configurações da LAN. Agora pegue o tick da caixa "Usar um servidor proxy" na parte inferior e, em vez disso, coloque um visto em "Usar script de configuração automática" e digite o endereço do seu arquivo PAC usando um arquivo: // URL como file://C:/proxy.pac .

Comoalternativa,paraoFirefox,váparaFerramentas->Opções,cliquenaguiaAvançado,cliquenaguiaRede,cliquenobotãoConfigurações,cliquenaconfiguração"URL de configuração automática do proxy", novamente usando um arquivo: /// URL (observe que no Firefox há três barras após os dois pontos, por exemplo file:///C:/proxy.pac .

ObservequeoInternetExplorer11mudouessecomportamentoeagoravocênãopodecarregarumarquivoPACapartirdeumURL'file://',vocêdeveusarum'HTTP://'ouURL'HTTPS://'.

InInternetExplorer11,theWinINETteamhasdisabledWinINET’ssupportforfile://basedscriptstopromoteinteroperabilityacrossnetworkstacks.CorporationsareadvisedtoinsteadhosttheirproxyconfigurationscriptsonaHTTPorHTTPSserver.

Háumasoluçãoalternativaquepodereativaresserecursoporenquanto,masvocênãoéaconselhadoausá-lo,jáqueatualizaçõesfuturastambémpodemdesativá-lo.

Asatemporaryworkaround,thisblockcanberemovedbysettingthefollowingregistrykey:

Key:HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\InternetSettings\Value:EnableLegacyAutoProxyFeaturesType:REG_DWORDData:1

Keepinmindthatthisshouldonlybeatemporarymeasure,asthisblockwasintroducedforgoodreasons,andremovingtheblockwon’tmagicallyfixyourWinHTTP-basedapplications.

NotetambémquedepoisdefazeressaalteraçãonoIE11vocêprecisaráalteraraconfiguraçãodeendereçodoseuscriptdeconfiguraçãoautomática,poisoIE11sóaceitaumasintaxeparaisso(vejaaparteinferiordoartigolinkadonoblogIEInternalsabaixo).

Noentanto,conformeobservado,éimprovávelqueessasoluçãoalternativadachavedoRegistrocontinuefuncionandonasversõesfuturasdoInternetExplorer,portantoémelhorencontrarumamaneirademanteroPACemumservidordaWeb.OservidorWebIISinternodoWindowsfuncionaria,eháoutrosmaispequenosporaíquefuncionariamparaainstalaçãoemseulaptoptambém.

MaisinformaçõessobreaentradadoblogIEInternals Noções Básicas Sobre Configuração de Proxy da Web .

    
por 07.11.2009 / 15:01
3

Use o Free IP Switcher 1.0

Descrição:

Whenevermobileusermovestodifferentnetwork,hastochangeparticularIPaddress,gatewayaddress,subnetmask,proxyserveranddefaultprinter,etc.,toparticularnetworkenvironment.Inordertodoit,hehastorememberTCP/IPsettingsinformationofeverynetwork.Also,hehastorebootthecomputertoapplyittothesystemandtoaccesstheInternet.

Don'twasteyourtimereconfiguringcomputernetworksettingseverytimeyouchangeyourlocation.FreeIPSwitcherisaperfectsolutionforyou.Itswitchesbetweenpreconfigurednetworksettingswithasingleclickandwithoutanyreboot.WithFreeIPSwitcheryoucanautomaticallychangeallnetworksettingsonyourpc:IPaddress,networkmasks,defaultgateway,DNSserver,winsserver,proxysettings,defaultprinterandmore.

Funcionalidades:

  • AltereasconfiguraçõesderedeIP"on the fly" sem reiniciar
  • Alterar as configurações do servidor proxy do Internet Explorer
  • Trocar sua impressora padrão
  • Mude o nome do seu computador e o grupo de trabalho
  • Importe as configurações de rede atuais para a configuração
  • Suporte ao ícone da bandeja do sistema, início automático com janelas
  • 100% de spyware GRATUITO, NÃO contém spyware, adware ou vírus
por 24.09.2009 / 08:20
2

Você tem outras alternativas (pagas) para alternar configurações de rede, como Mobile Net Switch ou NetSetMan

    
por 02.02.2010 / 15:42