public void OpenPrograms() { if (this.IsOpenVPNConnected()) { var openPrograms = Apps.Get().FindAll(x => x.Launch); foreach (var program in openPrograms) { ControlHelpers.StartProcess(program.Program, "", false); } } }
public static void SetTorProxyForChrome() { Settings settings = Settings.Get(); if (settings.EnableTorProxyForChrome) { //chrome.exe --proxy-server="socks5://localhost:9050" --host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE localhost" ControlHelpers.StartProcess(Settings.ChromeExe, "--proxy-server=\"socks5://localhost:9150\" --host-resolver-rules=\"MAP * 0.0.0.0 , EXCLUDE localhost\""); _log.Log("Set Chrome Tor Proxy"); } }
public void ClosePrograms() { var closePrograms = Apps.Get().FindAll(x => x.Close); foreach (var program in closePrograms) { var name = Path.GetFileName(program.Program); ControlHelpers.StartProcess("taskkill", "/F /IM " + name); } //await ControlHelpers.Sleep(10000); }
public void SetRoutesAndDNS() { Settings settings = Settings.Get(); string primaryDnsIp = settings.PrimaryDNS; string secondaryDnsIp = settings.SecondaryDNS; bool setDns = false; foreach (var adapter in ActiveNetworkAdapters) { setDns = false; if (Networking.IsVPNAdapter(adapter)) { continue; } //change Dns for added security string name = adapter.Name; if (!string.IsNullOrWhiteSpace(primaryDnsIp) && primaryDnsIp != "0.0.0.0" && NetworkAdapter.OpenVpnAdapter != null && NetworkAdapter.OpenVpnAdapter.PrimaryDns != adapter.PrimaryDns) { string primaryDns = string.Format("interface IPv4 set dnsserver \"{0}\" static {1} both", name, primaryDnsIp); ControlHelpers.StartProcess(@"netsh", primaryDns); setDns = true; } if (!string.IsNullOrWhiteSpace(secondaryDnsIp) && secondaryDnsIp != "0.0.0.0" && NetworkAdapter.OpenVpnAdapter != null && NetworkAdapter.OpenVpnAdapter.SecondaryDns != adapter.SecondaryDns) { string secondaryDns = string.Format("interface ipv4 add dnsserver \"{0}\" address={1} index=2", name, secondaryDnsIp); ControlHelpers.StartProcess(@"netsh", secondaryDns); setDns = true; } if (setDns) { ControlHelpers.StartProcess("route", "add 0.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); ControlHelpers.StartProcess("route", "add 64.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); ControlHelpers.StartProcess("route", "add 128.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); ControlHelpers.StartProcess("route", "add 192.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); _log.Log("Set DNS on {0} to {1}, {2}", name, primaryDnsIp, secondaryDnsIp); } } //if (setDns) //{ // //ControlHelpers.StartProcess(@"ipconfig.exe", @"/flushdns"); // //ControlHelpers.StartProcess(@"ipconfig.exe", @"/registerdns"); //} ControlHelpers.StartProcess(@"ipconfig.exe", @"/flushdns"); ControlHelpers.StartProcess(@"ipconfig.exe", @"/registerdns"); }
public void ResetNetworkInterfaces() { Settings settings = Settings.Get(); if (!settings.DontResetDNS || !settings.SplitRoute) { var adapters = GetActiveNetworkInterfaces(); string primaryDns = ""; string secondaryDns = ""; bool setDns = false; foreach (var adapter in adapters) { if (Networking.IsVPNAdapter(adapter)) { continue; } //reset dns to what it was before connecting to vpn var settingsAdapter = settings.StartupNetworkAdapterDns.FirstOrDefault(x => adapter.Id == x.Id); if (settingsAdapter != null) { if (!string.IsNullOrWhiteSpace(settingsAdapter.PrimaryDNS) && NetworkAdapter.OpenVpnAdapter != null && NetworkAdapter.OpenVpnAdapter.PrimaryDns != adapter.PrimaryDns) { primaryDns = string.Format("interface IPv4 set dnsserver \"{0}\" static {1} both", settingsAdapter.Name, settingsAdapter.PrimaryDNS); ControlHelpers.StartProcess(@"netsh", primaryDns); setDns = true; } if (!string.IsNullOrWhiteSpace(settingsAdapter.SecondaryDNS) && NetworkAdapter.OpenVpnAdapter != null && NetworkAdapter.OpenVpnAdapter.SecondaryDns != adapter.SecondaryDns) { secondaryDns = string.Format("interface ipv4 add dnsserver \"{0}\" address={1} index=2", settingsAdapter.Name, settingsAdapter.SecondaryDNS); ControlHelpers.StartProcess(@"netsh", secondaryDns); setDns = true; } } else { SetAutoDNS(false); } if (setDns) { _log.Log("Set DNS on {0} to {1}, {2}", adapter.Name, primaryDns, secondaryDns); } } ControlHelpers.StartProcess(@"ipconfig.exe", @"/registerdns"); ControlHelpers.StartProcess(@"ipconfig.exe", @"/flushdns"); } RemoveRoutes(); }
public static void ShowMessageBoxYesNo(string message, string yesProcess, MessageBoxType type = MessageBoxType.Info) { string caption = ""; if (type != MessageBoxType.Info) { caption = type.ToString(); } DialogResult result = MessageBox.Show(message, caption, MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { ControlHelpers.StartProcess(yesProcess, ""); } //if (log) //{ // Logging.Log(message); //} }
public void RemoveRoutes() { var adapters = GetActiveNetworkInterfaces(); //Settings settings = Settings.Get(); foreach (var adapter in adapters) { if (Networking.IsVPNAdapter(adapter)) { continue; } ControlHelpers.StartProcess("route", "delete 0.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); ControlHelpers.StartProcess("route", "delete 64.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); ControlHelpers.StartProcess("route", "delete 128.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); ControlHelpers.StartProcess("route", "delete 192.0.0.0 mask 192.0.0.0 " + adapter.GatewayIP); } ControlHelpers.StartProcess(@"ipconfig.exe", @"/registerdns"); ControlHelpers.StartProcess(@"ipconfig.exe", @"/flushdns"); }
public void SetAutoDNS(bool registerAndFlush) { var adapters = GetActiveNetworkInterfaces(); //Settings settings = Settings.Get(); foreach (var adapter in adapters) { if (Networking.IsVPNAdapter(adapter)) { continue; } string primaryDns = string.Format("interface IPv4 set dnsserver \"{0}\" dhcp", adapter.Name); string secondaryDns = string.Format("interface ip set dns \"{0}\" dhcp", adapter.Name); ControlHelpers.StartProcess(@"netsh", primaryDns); ControlHelpers.StartProcess(@"netsh", secondaryDns); } if (registerAndFlush) { ControlHelpers.StartProcess(@"ipconfig.exe", @"/registerdns"); ControlHelpers.StartProcess(@"ipconfig.exe", @"/flushdns"); } }