venerdì 13 gennaio 2012

Velocizzare la navigazione internet su Linux Mint

Recentemente ho installato Linux Mint su un Notebook Toshiba Equium a100-171 (un po' datato) con 1 giga di RAM ed un processore anch'esso da un giga; la scelta e' nata dalla curiosita' di provare una delle distribuzioni piu' recenti di Linux senza appesantire troppo la macchina per cui ho provato alcune distro Linux ed infine ho scelto Linux Mint 9 LXDE.

Dopo aver installato i vari applicativi ho riscontrato grosse difficolta' nella navigazione internet; inizialmente avevo ipotizzato che il browser Mozilla Firefox avesse qualche problematica poi ho provato Opera e Cromium ma i risultati non sono migliorati.

Dopo diverse ricerche su internet (c'e' pieno di forum con pseudo esperti che non sanno cosa scrivono) ho trovato la soluzione (piu' semplice di quanto non pensassi).

La problematica e' connessa con il DNS, il servizio del pc che dal nome del sito risale al suo indirizzo IP.
Per esempio quando nel browser viene digitato "www.google.com" il DNS interpreta il nome del sito identificando l'indirizzo IP restituendolo al browser che accede cosi' al "sito" corretto.

Ma arriviamo alla soluzione:

Utilizziamo un software chiamato dnsmasq. Per prima cosa lo installiamo dal terminale unix col comando:

sudo apt-get install dnsmasq

(Se non lo traovate probabilmente non avete inserito nei repository Linux "Universe repository")

A questo punto occorre togliere il carattere # dalle seguenti righe (allo scopo di trasformare il commento in istruzioni "attive") del file /etc/dnsmasq.conf:
Per fare cio', aprire il terminal e dare il comando:

sudo gedit /etc/dnsmasq.conf

(se viene restituito un errore su gedit occorre allo installare prima il paccheto gedit col comando sudo apt-get gedit install poi proseguire con il comando sopra indicato per aprire il dnsmasq.conf).

Una volta entrati sil file dnsmasq.conf occorre cercare la stringa listen-address= e modificarla come segue listen-address=127.0.0.1

Dopo aver salvato il documento occorre editare /etc/dhcp3/dhclient.conf (col comando da terminale sudo gedit /etc/dhcp3/dhclient.conf ) e controllare l'esatta corrispondenza delle seguenti righe e soprattutto della riga "prepend domain-name-servers 127.0.0.1;"

#supersede domain-name "fugue.com home.vix.com";
prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;
require subnet-mask, domain-name-servers;
timeout 60;
retry 60;
reboot 10;
select-timeout 5;
initial-interval 2;

(qualora le righe siano procedute da # (cioe' sono un commento) occorre eliminare il carattere # affinche' diventino attive)

La modifica serve per dare istruzione al computer affinche' cerchi prima sul computer e solo successivamente vada a cercare nei server DNS. Cio' velocizza gli accessi alla rete in quanto effettuando l'accesso ad un sito, la prima volta accede ai server DNS per trovare l'IP mentre le volte successive l'indirizzo lo trova gia' sul computer locale (in quanto al primo accesso il computer si e' salvato l'IP in locale) ed i tempi di accesso al sito si riducono sensibilmente.

A questo punto occorre aprire il file /etc/resolv.conf col comando da terminale sudo gedit /etc/resolv.conf ed aggiungere una riga con i seguenti dati nameserver 127.0.0.1

Esempio: se il file aperto e' questo

# Generated by NetworkManager
nameserver 218.248.241.5
nameserver 8.8.8.8

deve essere modificato cosi':

# Generated by NetworkManager
nameserver 127.0.0.1
nameserver 218.248.241.5
nameserver 8.8.8.8

Ovviamente i i nameserver 218.248.241.5 e nameserver 8.8.8.8 sono un esempio e variano da un computer ad un altro (potrebbe anche esserci solo un nameserver).

Ora occorre salvare ed uscire dal file i ristartare il servizio di DSNMASQ col comando da terminal

sudo /etc/init.d/dnsmasq restart

Per verificare che tutto funzioni provare da terminare a dare il comando

dig google.com

Tra le varie righe di risposta c'e' anche qualcosa di simile

";; Query time: 42 msec"

Ora rieseguire il comando dig google.com ed ora il Query time dovrebbe essere a 0:

";; Query time: 0 msec"

Cio' indica che sul secondo comando il computer ha trovato l'IP di google.com in locale e non e' andato a cercato sui servr DNS.

Nessun commento: