mirror of
https://github.com/openziti/desktop-edge-win.git
synced 2026-10-22 20:25:29 +00:00
remove unused functions and change the reset funcs
This commit is contained in:
@@ -122,7 +122,7 @@ func RunDNSserver(dnsBind []net.IP, ready chan bool) {
|
||||
go runListener(&bindAddr, 53, reqch)
|
||||
}
|
||||
|
||||
windns.ReplaceDNS(dnsBind)
|
||||
windns.RemoveAllNrptRules()
|
||||
|
||||
ready <- true
|
||||
|
||||
@@ -236,14 +236,8 @@ func dnsPanicRecover(localDnsServers []net.IP, now time.Time) {
|
||||
lastDnsRecover = time.Now()
|
||||
log.Infof("dnsPanicRecovery set time to: %s", lastDnsRecover.String())
|
||||
|
||||
//reset all network interfaces...
|
||||
windns.ResetDNS()
|
||||
|
||||
// get dns again and reconfigure
|
||||
go runDNSproxy(windns.GetUpstreamDNS(), localDnsServers)
|
||||
|
||||
// reconfigure DNS
|
||||
windns.ReplaceDNS(localDnsServers)
|
||||
}
|
||||
|
||||
func runDNSproxy(upstreamDnsServers []string, localDnsServers []net.IP) {
|
||||
|
||||
@@ -108,9 +108,6 @@ func (dns *dnsImpl) RegisterService(svcId string, dnsNameToReg string, port uint
|
||||
if ip != nil {
|
||||
dnsNameToReg = ip.String()
|
||||
isIp = true
|
||||
} else {
|
||||
// register hostname in NRTP
|
||||
//go windns.AddNrptRule(dnsNameToReg, dnsip.String())
|
||||
}
|
||||
|
||||
icept := intercept{isIp: isIp, host:dnsNameToReg, port: port}
|
||||
|
||||
+2
-106
@@ -31,23 +31,6 @@ import (
|
||||
|
||||
var log = logging.Logger()
|
||||
|
||||
func ResetDNS() {
|
||||
/*
|
||||
log.Info("resetting DNS server addresses")
|
||||
script := `Get-NetIPInterface | ForEach-Object { Set-DnsClientServerAddress -InterfaceIndex $_.ifIndex -ResetServerAddresses }`
|
||||
|
||||
cmd := exec.Command("powershell", "-Command", script)
|
||||
cmd.Stderr = os.Stdout
|
||||
cmd.Stdout = os.Stdout
|
||||
|
||||
err := cmd.Run()
|
||||
if err != nil {
|
||||
log.Errorf("ERROR resetting DNS: %v", err)
|
||||
}
|
||||
*/
|
||||
log.Warnf("SKIPPING DNS RESET")
|
||||
}
|
||||
|
||||
func GetConnectionSpecificDomains() []string {
|
||||
script := `Get-DnsClient | Select-Object ConnectionSpecificSuffix -Unique | ForEach-Object { $_.ConnectionSpecificSuffix }; (Get-DnsClientGlobalSetting).SuffixSearchList`
|
||||
|
||||
@@ -107,64 +90,6 @@ func GetUpstreamDNS() []string {
|
||||
return names
|
||||
}
|
||||
|
||||
|
||||
func ReplaceDNS(ips []net.IP) {
|
||||
/*
|
||||
ipsStrArr := make([]string, len(ips))
|
||||
for i, ip := range ips {
|
||||
ipsStrArr[i] = fmt.Sprintf("'%s'", ip.String())
|
||||
}
|
||||
ipsAsString := strings.Join(ipsStrArr, ",")
|
||||
|
||||
log.Infof("injecting DNS servers [%s] onto interfaces", ipsAsString)
|
||||
|
||||
script := fmt.Sprintf(`$dnsinfo=Get-DnsClientServerAddress
|
||||
$dnsIps=@(%s)
|
||||
|
||||
# see https://docs.microsoft.com/en-us/dotnet/api/system.net.sockets.addressfamily
|
||||
$IPv4=2
|
||||
$IPv6=23
|
||||
|
||||
$dnsUpdates = @{}
|
||||
|
||||
foreach ($dns in $dnsinfo)
|
||||
{
|
||||
if($dnsUpdates[$dns.InterfaceIndex] -eq $null) { $dnsUpdates[$dns.InterfaceIndex]=[System.Collections.ArrayList]@() }
|
||||
if($dns.AddressFamily -eq $IPv6) {
|
||||
$dnsServers=$dns.ServerAddresses
|
||||
$ArrList=[System.Collections.ArrayList]@($dnsServers)
|
||||
$dnsUpdates[$dns.InterfaceIndex].AddRange($ArrList)
|
||||
}
|
||||
elseif($dns.AddressFamily -eq $IPv4){
|
||||
$dnsServers=$dns.ServerAddresses
|
||||
$ArrList=[System.Collections.ArrayList]@($dnsServers)
|
||||
foreach($d in $dnsIps) {
|
||||
if(($dnsServers -ne $null) -and ($dnsServers.Contains($d)) ) {
|
||||
# uncomment when debugging echo ($dns.InterfaceAlias + " IPv4 already contains $d")
|
||||
} else {
|
||||
$ArrList.Insert(0,$d)
|
||||
}
|
||||
}
|
||||
$dnsUpdates[$dns.InterfaceIndex].AddRange($ArrList)
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($key in $dnsUpdates.Keys)
|
||||
{
|
||||
Set-DnsClientServerAddress -InterfaceIndex $key -ServerAddresses ($dnsUpdates[$key])
|
||||
}`, ipsAsString)
|
||||
|
||||
cmd := exec.Command("powershell", "-Command", script)
|
||||
cmd.Stderr = os.Stderr
|
||||
cmd.Stdout = os.Stdout
|
||||
|
||||
if err := cmd.Run(); err != nil {
|
||||
log.Errorf("ERROR resetting DNS (%v)", err)
|
||||
}
|
||||
*/
|
||||
log.Warnf("SKIPPING DNS INJECT")
|
||||
}
|
||||
|
||||
func FlushDNS() {
|
||||
log.Info("flushing DNS cache using ipconfig /flushdns")
|
||||
script := `ipconfig /flushdns`
|
||||
@@ -179,21 +104,6 @@ func FlushDNS() {
|
||||
}
|
||||
}
|
||||
|
||||
func AddNrptRule(hostname string, server string) {
|
||||
RemoveNrptRule(hostname)
|
||||
script := fmt.Sprintf(`Add-DnsClientNrptRule -Namespace "%s" -NameServers "%s" -Comment "Added by ziti-tunnel" -DisplayName "ziti-tunnel:%s"`, hostname, server, hostname)
|
||||
log.Debugf("adding nrpt rule with: %s", script)
|
||||
|
||||
cmd := exec.Command("powershell", "-Command", script)
|
||||
cmd.Stderr = os.Stdout
|
||||
cmd.Stdout = os.Stdout
|
||||
|
||||
err := cmd.Run()
|
||||
if err != nil {
|
||||
log.Errorf("ERROR adding nrpt rule: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func RemoveAllNrptRules() {
|
||||
script := fmt.Sprintf(`Get-DnsClientNrptRule | Where { $_.Comment.StartsWith("Added by ziti-tunnel") } | Remove-DnsClientNrptRule -ErrorAction SilentlyContinue -Force`)
|
||||
log.Debugf("removing all nrpt rules with: %s", script)
|
||||
@@ -208,20 +118,6 @@ func RemoveAllNrptRules() {
|
||||
}
|
||||
}
|
||||
|
||||
func RemoveNrptRule(hostname string) {
|
||||
script := fmt.Sprintf(`Get-DnsClientNrptRule | Where { $_.Namespace -eq '%s' } | Remove-DnsClientNrptRule -ErrorAction SilentlyContinue`, hostname)
|
||||
log.Debugf("removing nrpt rule with: %s", script)
|
||||
|
||||
cmd := exec.Command("powershell", "-Command", script)
|
||||
cmd.Stderr = os.Stdout
|
||||
cmd.Stdout = os.Stdout
|
||||
|
||||
err := cmd.Run()
|
||||
if err != nil {
|
||||
log.Errorf("ERROR removing nrpt rule: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func AddNrptRules(domainsToMap map[string]struct{}, dnsServer string) {
|
||||
tmpFile, err := ioutil.TempFile(os.TempDir(), "ziti-tunnel-nrpt-rules-*.ps1")
|
||||
if err != nil {
|
||||
@@ -238,7 +134,7 @@ func AddNrptRules(domainsToMap map[string]struct{}, dnsServer string) {
|
||||
return
|
||||
}
|
||||
|
||||
for hostname,_ := range domainsToMap {
|
||||
for hostname := range domainsToMap {
|
||||
text := []byte(fmt.Sprintf(`@{ Namespace ="%s"; NameServers = @("%s"); Comment = "Added by ziti-tunnel"; DisplayName = "ziti-tunnel:%s"; }%s`, hostname, dnsServer, hostname, "\n"))
|
||||
if _, err = tmpFile.Write(text); err != nil {
|
||||
log.Errorf("Failed to write to temporary file, %v", err)
|
||||
@@ -252,7 +148,7 @@ ForEach ($Rule in $Rules) {
|
||||
}`))
|
||||
|
||||
if _, err = tmpFile.Write(text); err != nil {
|
||||
log.Errorf("Failed to write to temporary file", err)
|
||||
log.Errorf("Failed to write to temporary file: %v", err)
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user