Add new ipv4 and ipv6 hostnames

This commit is contained in:
Ben Adrian Sarmiento
2024-08-17 13:07:55 +08:00
parent 7ce8a01a3b
commit 33cfdbbbea
2 changed files with 50 additions and 16 deletions

View File

@@ -541,6 +541,7 @@ func (zr *Handlers) handleHome(resp http.ResponseWriter, req *http.Request) {
<form method="post" action="/torrents/reset-repair-state">
<input type="submit" value="Reset repair state" /> Reset repair state of all torrents so they can be repaired again
</form>
// add more utilities here
</td>
</tr>
<tr>

View File

@@ -110,49 +110,82 @@ func (r *IPRepository) runLatencyTest() {
for {
lastDomainsWorked := false
for i := start; i <= limit; i++ {
domain := fmt.Sprintf("%d.download.real-debrid.com", i)
ips, err := net.LookupIP(domain)
// EU servers
ipv4Domain := fmt.Sprintf("%d-4.download.real-debrid.com", i)
ipv6Domain := fmt.Sprintf("%d-6.download.real-debrid.com", i)
ips, err := net.LookupIP(ipv4Domain)
if err != nil || len(ips) == 0 {
continue
}
latency, err := r.testDomainLatency(r.ipv4client, domain)
latency, err := r.testDomainLatency(r.ipv4client, ipv4Domain)
if err == nil {
r.ipv4latencyMap[domain] = latency
r.log.Debugf("Latency from ipv4 %s: %.5f seconds", domain, latency)
r.ipv4latencyMap[ipv4Domain] = latency
r.log.Debugf("Latency from ipv4 %s: %.5f seconds", ipv4Domain, latency)
if i >= limit-2 {
lastDomainsWorked = true
}
}
latency, err = r.testDomainLatency(r.ipv6client, domain)
latency, err = r.testDomainLatency(r.ipv6client, ipv6Domain)
if err == nil {
r.ipv6latencyMap[domain] = latency
r.log.Debugf("Latency from ipv6 %s: %.5f seconds", domain, latency)
r.ipv6latencyMap[ipv6Domain] = latency
r.log.Debugf("Latency from ipv6 %s: %.5f seconds", ipv6Domain, latency)
if i >= limit-2 {
lastDomainsWorked = true
}
}
domain = fmt.Sprintf("%d.download.real-debrid.cloud", i)
ips, err = net.LookupIP(domain)
// EU servers (old)
ipv4Domain = fmt.Sprintf("%d.download.real-debrid.com", i)
ipv6Domain = fmt.Sprintf("%d.download.real-debrid.com", i)
ips, err = net.LookupIP(ipv4Domain)
if err != nil || len(ips) == 0 {
continue
}
latency, err = r.testDomainLatency(r.ipv4client, domain)
latency, err = r.testDomainLatency(r.ipv4client, ipv4Domain)
if err == nil {
r.ipv4latencyMap[domain] = latency
r.log.Debugf("Latency from ipv4 %s: %.5f seconds", domain, latency)
r.ipv4latencyMap[ipv4Domain] = latency
r.log.Debugf("Latency from ipv4 %s: %.5f seconds", ipv4Domain, latency)
if i >= limit-2 {
lastDomainsWorked = true
}
}
latency, err = r.testDomainLatency(r.ipv6client, domain)
latency, err = r.testDomainLatency(r.ipv6client, ipv6Domain)
if err == nil {
r.ipv6latencyMap[domain] = latency
r.log.Debugf("Latency from ipv6 %s: %.5f seconds", domain, latency)
r.ipv6latencyMap[ipv6Domain] = latency
r.log.Debugf("Latency from ipv6 %s: %.5f seconds", ipv6Domain, latency)
if i >= limit-2 {
lastDomainsWorked = true
}
}
// Cloudflare servers
ipv4Domain = fmt.Sprintf("%d.download.real-debrid.cloud", i)
ipv6Domain = fmt.Sprintf("%d.download.real-debrid.cloud", i)
ips, err = net.LookupIP(ipv4Domain)
if err != nil || len(ips) == 0 {
continue
}
latency, err = r.testDomainLatency(r.ipv4client, ipv4Domain)
if err == nil {
r.ipv4latencyMap[ipv4Domain] = latency
r.log.Debugf("Latency from ipv4 %s: %.5f seconds", ipv4Domain, latency)
if i >= limit-2 {
lastDomainsWorked = true
}
}
latency, err = r.testDomainLatency(r.ipv6client, ipv6Domain)
if err == nil {
r.ipv6latencyMap[ipv6Domain] = latency
r.log.Debugf("Latency from ipv6 %s: %.5f seconds", ipv6Domain, latency)
if i >= limit-2 {
lastDomainsWorked = true
}