Dns-tuneling internet gratuit

O modalitate neobișnuită de a obține Internet gratuit este tunelul DNS. Motivul pentru nepopularitatea acestei metode este necesitatea unui server cu acces root, software pentru tuneling numai pentru sistemele Unix și foarte puține informații despre tunelul DNS în limba rusă. Tot ce avem este mai multe programe și documentație în limba engleză. Până în prezent, această metodă funcționează cu adevărat și tot ceea ce este descris în articol a fost testat de mai mulți furnizori. Testele au avut succes.







Programele
Am găsit mai multe programe în aceste scopuri - udptunnel, utunnel, iproxy și nstx. Primul a dispărut imediat, pentru că în timpul citirii docurilor sa dovedit că încorporează UDP în TCP și nu invers. Celelalte trei programe au avut și un mic incident. Problema este că calculatorul meu local funcționează sub Linux, iar serverul de la distanță în cadrul FreeBSD. În prezent, utilitățile iproxy și nstx sunt compilate și executate numai sub Linux, astfel încât partea serverului nu poate fi pornită. Programul utunnel, dimpotrivă, funcționează numai în cadrul FreeBSD, iar până când a fost scris articolul, Fryakhi nu era la îndemână. Așa că nu a trebuit să găsesc un server pe Linux (datorită persoanei care a ajutat-o ​​în cazul în care citește) și să testeze serverul de tunel pe el.

iproxy
Voi începe cu iproxy, pentru că este mai ușor să lucrați cu el, nu lipsit de bug-uri și nu are nevoie de configurație specială. Programul este foarte simplu - implementează TCP peste UDP și nimic mai mult. Procesul de compilare și instalare a programului este standard:

Apropo, nu trebuie să o instalați - o puteți folosi direct din directorul de acasă. După ce l-ați colectat pe partea clientului, comanda:

iproxy-client -p 33333 -d 53 -u -v -I 123.45.67.89

Pe computerul client, totul este gata, mergeți la partea serverului. Primul lucru pe care trebuie să-l facem este să ridicăm serverul proxy, deoarece iproxy-server folosește serviciile proxy-ului local și transmite rezultatele către client. Un proxy poate fi orice. Este de dorit ca aceasta să accepte metoda CONNECT, apoi să o utilizați nu numai pentru Web. Am folosit serverul proxy Squid.







Acum colectăm iproxy la fel ca în partea clientului și comandăm următoarele:

iproxy-server-u-v-p 53 -d 8080

Din nou, am explicat opțiunile: -u și -v sunt toate același mod unicast și verbose, respectiv, așa cum am indicat pe partea clientului. -p este portul UDP pe care îl vom asculta și -d este portul TCP al serverului proxy local.

Ca urmare a testelor, programul nu sa prezentat pe cea mai bună parte. Pentru a transfera pachete mari în condiții de comunicare proaste (la urma urmei este o conexiune dial-up), nu este capabil. De exemplu, HTTP funcționează grozav - câteva kilobyte de pagină sunt descărcate și conexiunea este terminată. De asemenea, am încercat IRC-ul. Dacă în mod constant vorbiți sau vă pingeți (prin IRC), atunci conexiunea este normală, dar este oprită pentru câteva secunde, deoarece conexiunea se întrerupe din nou.

nstx
Cu nstx, totul este un pic mai complicat. NSTX - este un protocol (Nameserver Transfer Protocol), dezvoltat de cei de la cald german Heinz Florian (Florian Heinz) și Dzhulenom Oster (Julien Oster). Acesta poate fi folosit pentru implementarea tunelului "IP over DNS". Deoarece DNS-protocol nu permite transmiterea de date de peste 512 bytes, NSTX utilizează fragmentarea și introduce unele caracteristici IP UDP și TCP. În plus, există o reconciliere regulată de la client (deoarece serverul nu poate fi inițiatorul conexiunii - note ed.).

Pentru muncă, nstx utilizează pseudo-interfața Ethertap. Pentru aceasta avem nevoie de modulele sistemului.

Mai întâi, încărcăm aceste module:

insmod netlink_dev
insmod etertap

Acum creați fișierul dispozitivului:

mknod / dev / tap0 c 36 16

Lansați pseudo-interfața configurată la 10.0.0.1 (inserați IP):

ifconfig tap0 10.0.0.1 up

Acum, același lucru se face și pe partea de server.

Rămâne să ne conducem nstxd pe ambele părți. Mai întâi rulați un server de nume fals pe server:

Apoi, pe client:

nstxd zone.server.com 123.45.67.89

Și cum funcționează?
Datele sunt încapsulate într-un mesaj DNS, iar datele noastre sunt transmise de DNS la care avem acces. Furnizorul DNS accesează serverul responsabil pentru zona zone.server.com și trimite toate informațiile către serverul de nume fals, care returnează răspunsul necesar pe aceeași rută. Astfel, DNS ne ajută să facem ceea ce nu intenționa inițial să facă.

Furnizorii ar trebui să se gândească, în scopul de a controla cererile transmise de DNS primar în modul de acces pentru vizitatori și dezactiva regulile de firewall pentru a avea acces la alte gazde prin portul UDP 53rd. Aceasta este singura modalitate de a împiedica tunelul DNS și, ca o consecință, traficul nedorit de la conectarea oaspeților.







Articole similare

Trimiteți-le prietenilor: