Às vezes, preciso enviar meu tráfego para um proxy, às vezes não.
Atualmente, tenho que ir sempre às configurações para clicar nele.
Existe alguma maneira simples de mudar isso? Por exemplo, use um comando shell para fazer isso.
Às vezes, preciso enviar meu tráfego para um proxy, às vezes não.
Atualmente, tenho que ir sempre às configurações para clicar nele.
Existe alguma maneira simples de mudar isso? Por exemplo, use um comando shell para fazer isso.
Respostas:
Isso pode ser feito com networksetup
.
Obtenha todos os serviços:
networksetup -listallnetworkservices
Em seguida, com o serviço adequado (por exemplo, Ethernet ou o nome do seu adaptador USB 10/100/1000 LAN), digite
sudo networksetup -setsocksfirewallproxy <networkservice> <domain> <port number> <authenticated> <username> <password>
ou
sudo networksetup -setwebproxy <networkservice> <domain> <port number> <authenticated> <username> <password>
para configurá-lo (o que não é necessário no seu caso, porque você já inseriu todos os valores necessários).
por exemplo
sudo networksetup -setsocksfirewallproxy Ethernet 127.0.0.1 18080
sudo networksetup -setwebproxy Ethernet 127.0.0.1 18080
Para simplesmente ativar ou desativar o uso:
sudo networksetup -setsocksfirewallproxystate networkservice on | off
sudo networksetup -setwebproxystate networkservice on | off
por exemplo
sudo networksetup -setsocksfirewallproxystate Ethernet off
sudo networksetup -setwebproxystate Ethernet off
man networksetup
irá revelar outras opções de proxy (gopher, ftp, etc.)
Dê uma olhada nesta página no YourMacGuy sobre o comando Terminal networksetup
. Embora a página tenha data de 2008, o comando existe e funciona no macOS Sierra. Talvez um dos comandos relacionados ao proxy funcione para você. Você sempre pode criar vários locais em Preferências do sistema> Rede que podem ativar ou desativar o proxy. Você ainda precisará abrir as Preferências do Sistema.
Eu faço isso definindo atalhos no Hammerspoon . Agora posso alternar o proxy do sistema com apenas um atalho CommandOptionControlP.
Código fonte disponível no GitHub .
Aqui estão as etapas de configuração:
networksetup -setwebproxy "Wi-fi" 127.0.0.1 8080
networksetup -setsecurewebproxy "Wi-fi" 127.0.0.1 8080
~/.profile
toggleProxy() {
e=$(networksetup -getwebproxy wi-fi | grep "No")
ns=wi-fi
status=''
if [ -n "$e" ]; then
status=on
else
status=off
fi
echo -n "Turning $status proxy"
networksetup -setstreamingproxystate $ns $status
networksetup -setsocksfirewallproxystate $ns $status
networksetup -setwebproxystate $ns $status
networksetup -setsecurewebproxystate $ns $status
}
~/.hammerspoon/init.lua
hs.hotkey.bind({"cmd", "alt", "ctrl"}, "P", function()
local output = hs.execute("toggleProxy", true)
hs.alert.show(output)
end)
sudo networksetup -setsocksfirewallproxy "USB 10/100/1000 LAN" 127.0.0.1 8888
/sudo networksetup -setsocksfirewallproxystate "USB 10/100/1000 LAN" off
/sudo networksetup -setsocksfirewallproxystate "USB 10/100/1000 LAN" on
funciona muito bem.