Programiranje

Povećajte brzinu Interneta i zaštitite vašu privatnost sa 1.1.1.1

Kompanija Cloudflare je prošlog meseca pokrenula svoj javni DNS servis za koji se može reći da je promenio dosadašnje pretraživanje Interneta.
Kroz testove koje smo uradili, videli smo da je servis odličan u poređenju sa dosadašnjim Google ili OpenDNS servisima.

Ne samo što je poboljšana brzina, veće je reč i o zaštiti privatnosti kada je u pitanju praćenje vašeg saobraćaja od strane ISP.
Uz neke dodatne modifikacije ovog servisa ISP će sve teže moći da dolazi do podataka koje će prodavati trećim stranama.
Više o tome možete pročitati ovde.

Testiranje DNS 1.1.1.1

Recimo da želite da vidite brzinu DNS kako bi izabrali onaj sa najbržim odgovorom.

U tu svrhu imamo dosta alatki pod linuxom ali takođe ćemo napraviti naše.

Jedan od najlakših načina da testiramo odgovor DNS servera jeste kroz dve alatke: time ii nslookup.

Primer:

time nslookup gmail.com 
1.1.1.1 Server: 1.1.1.1 
Address: 1.1.1.1#53 
Non-authoritative answer: 
Name: gmail.com 
Address: 216.58.207.69
Name: gmail.com
Address: 2a00:1450:4001:825::2005
nslookup gmail.com 1.1.1.1 0.01s user 0.00s system 7% cpu 0.120 total

Ovde vidimo na kraju 0.120 total gde se nalaze vreme slanja ii odgovora.

Ako uradimo isto to za DNS server 8.8.8.8:

time nslookup gmail.com 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: gmail.com
Address: 172.217.18.69
Name: gmail.com
Address: 2a00:1450:400d:808::2005
nslookup gmail.com 8.8.8.8 0.01s user 0.01s system 11% cpu 0.145 total

Ovde vidimo da je vreme 0.145 total. Prema brzini odgovora znamo da je 1.1.1.1 stvarno brži.
Međutim šta da radimo ako imamo listu servera u jednom fajlu?
Prvo rešenje će biti kroz shell scriptu.

dns_benchmark.sh sadrži:

#!/bin/bash
declare -a dnstime
mintime=99999999999 
mindns=""
for DNS in $(cat $1)
do
start=$(($(date +%s%N)/1000000))
nslookup gmail.com $DNS >> /dev/null
end=$(($(date +%s%N)/1000000))
runtime=$((end-start ))
echo $DNS $runtime ms
if [ "$runtime" -le "$mintime" ]; then
mintime=$runtime
mindns=$DNS
fi
done
echo "Fast response: $mintime from $mindns"
#kraj sadržaja---------------------------------

Takođe moramo imati fajl sa listom dns tako da imamo dns_list.txt:

1.1.1.1
8.8.8.8
9.9.9.9

Prvo ćemo označiti fajl kao izvršni:
chmod +x dns_benchmark.sh

Ovaj program pokrećemo sa:
./dns_benchmark.sh dns_list.txt

Izlaz (može biti drugačiji):

1.1.1.1 121 ms
8.8.8.8 179 ms
9.9.9.9 137 ms
Fast response: 121 from 1.1.1.1
Kao što vidimo dobijamo rezultat ali unutar ovog rezultata imamo ii sistemsko vrijeme. 
Zato ćemo iskoristiti komandu dig za sličnu skriptu.

Početak fajla dns_benchmark2.sh:

#!/bin/bash
declare -a dnstime
mintime=99999999999
mindns=""
for DNS in $(cat $1)
do
runtime=$(dig @$DNS gmail.com|grep Query | awk '{print($4)}')
echo $DNS $runtime ms
if [ "$runtime" -le "$mintime" ]; then
mintime=$runtime
mindns=$DNS
fi
done
echo "Fast response: $mintime ms from $mindns"

Fajl dns_list.txt ostaje isti, opet dodajemo atribut izvšnog fajla:

chmod +x dns_benchmark2.sh 

Pokrećemo sa:

./dns_benchmark2.sh dns_list.txt

Izlaz posle pokretanja:

1.1.1.1 53 ms
8.8.8.8 77 ms
9.9.9.9 78 ms
Fast response: 53 ms from 1.1.1.1

Sledeći oblik merenja može biti kroz python module koji koriste dns resolving i imaju merenje vremena.
python dns_benchmark.py dns_list.txt

Оve skripte možete preuzeti sa:
https://github.com/vladimirc81/dns_benchmark

Pošto će neki od vas da pokrenu test da bi videli koji je najbrži DNS naš test je pokazao sa 147.91.249.61 sa 27 ms. iz liste nameservers.txt (24000 DNS servera).

$ sudo fdisk /dev/vdb 
$ sudo mkfs.ext4 /dev/vdb1 
$ sudo mkdir -p /nodirectwritedata/brick1 
$ 1.1.1.1 53 ms 8.8.8.8 77 ms 9.9.9.9 78 ms Fast response: 53 ms from 1.1.1.1 $ mount -a 
$ sudo mkdir /nodirectwritedata/brick1/gvol0 
$ df -H

Povećajte brzinu Interneta i zaštite vašu privatnost

Povećajte brzinu Interneta i zaštitite vašu privatnost

Windows PC:

Control Panel
Network and Internet
Change Adapter Settings
Desni klik na Wi-Fi network you are connected to, a zatim na Properties
Internet Protocol Version 4 (ili Version 6 ukoliko je potrebno)
Još jedan klik na Properties
Sačuvajte u tekst editor vaš DNS server koji već imate
Use The Following DNS Server Addresses
Zamenite postojeću sa adresom za IPv4: 1.1.1.1 i 1.0.0.1; za IPv6: 2606:4700:4700::1111 i 2606:4700:4700::1001
OK i zatvorite
Pokrenite vaš pretraživač ponovo.

Android :

Povežite se na vašu Wi-Fi mrežu
Unesite gateway IP adresu rutera u pretraživaču interneta na telefonu
Unesite lozinku i ime, ako je potrebno – moguće je da su generički, ako ih niste menjali i onda je to naznačeno na ruteru ili, ako ste ih menjali unesite postojeće’
Potražite u opcijama podešavanja DNS-ova
Zapišite sve što vidite u poljima za svaki slučaj, ako vam zatreba kasnije
Zamenite postojeće adrese sa 1.1.1.1 DNS adresama i to:
za IPv4: 1.1.1.1 i 1.0.0.1; a za IPv6: 2606:4700:4700::1111 i 2606:4700:4700::1001

Snimite podešavanja i ponovo pokrenite pregledač interneta.

MacOS :

System Preferences
Potražite DNS Servers i odaberite ih iz padajućeg menija
Pritisnite + dugme i dodajte DNS Server sa unosom 1.1.1.1
Kliknite na + ponovo i unesite 1.0.0.1
OK – a zatim Apply.

iPhone/iPad :

Pokrenite Settings aplikaciju
Tapnite Wi-Fi, onda i mrežu koju koristite sa liste
Klik na Configure DNS, zatim izaberite Manual
Prvo izbrišite trenutna podešavanja tapom na – dugme, potom Delete
Kliknite na + Add Server dugme i ukucajte 1.1.1.1
Opet na + Add Server dugme, ali sad unesite 1.0.0.1
Kucnite na Save taster gore desno i gotovi ste.

Napišite komentar