summaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README47
1 files changed, 47 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..2c56d8a
--- /dev/null
+++ b/README
@@ -0,0 +1,47 @@
+dnsfind je program za iskanje delujočih rekurzivnih DNS srežnikov v podomrežjih naslovnega prostora IPv4.
+
+namestitev na debianske sisteme:
+ dodati je treba moj APT repozitorij, navodila za to so na http://prog.sijanec.eu
+ apt install dnsfind
+
+prevod in namestitev na ostale s posix kompatibilne sisteme:
+ make && make install
+
+program vsakemu strežniku v kot argumenti navedenih omrežjih pošlje majhen IPv4(UDP(DNS)) paket, manjši od 68 bajtov, tako da se ne fragmentira, vsebujoč DNS zahtevo za poljubno domeno. domena mora imeti v DNS sistemu en A zapis, program pa preveri, če se zapis v morebitnem odgovoru ujema z dejanskim A zapisom in ustrezno sporoči na standardni izhod.
+
+da se nastaviti časovne zamike, recimo zamik med pošiljanjem paketov. program po želji lahko shranjuje bodisi prejete in poslane bodisi samo prejete pakete v PCAP datoteko za nadaljno statistično obdelavo.
+
+ob vsakem prejetem paketu se izpiše vrstica na standarni izhod v slednji obliki:
+ vsaka vrstica se začne z RESPONSE, temu sledi tabulator in naslov strežnika nato pa:
+ eno izmed - WORKING, kar pomeni, da je prvi A zapis odgovora pravilen,
+ - LYINGWITH predledek naslov, kar pomeni, da je 1. A zapis napačen in ga pove,
+ - NOA, kar pomeni, da A zapisa ni bilo v odgovoru.
+ prvima dvema zapisoma (WORKING in LYINGWITH) lahko sledi še en tabulator in MORETHANONE
+ presledek številka, ki pove, da je odgovor vseboval več kot en A zapis in pove koliko jih je.
+
+stikala za razne opcije je treba navesti pred omrežji in so sledeča:
+ -a Nastavi IP naslov A RR domene, podane v -d, ki naj se uporabi namesto klica getaddrinfo(3)
+ -b Uporabi mrežno kartico, katere IP naslov je podan, za pošiljanje in prejemanje paketov
+ -d Nastavi domeno z enim A zapisom, ki bo poslana kot vprašanje (privzeto: dnsfind.sijanec.eu)
+ -e Ne vključi poslanih paketov, ki so itak vedno isti, v PCAP datoteko, nastavljeno z -o
+ -h Pokaže besedilo pomoči
+ -o Sproti naj se v navedeno datoteko piše vsak poslan/prejet (glej -e) paket v PCAP obliki
+ -p Nastavi številko izvornih UDP vrat. Če ni navedena, jedro izbere eno prosto.
+ -t Zamik pred pošiljanjem naslednjega paketa v mikrosekundah (privzeto in minimalno 1000)
+ -w Končaj toliko mikrosekund po prejemu zadnjega paketa po koncu pošiljanja (privzeto 1000000)
+stikalom sledijo omrežja, ki so podana kot naslov omrežja, poševnica in omrežna maska.
+ omrežja so ločena s presledki, z drugimi besedami mora biti vsako svoj argument.
+ naslov omrežja in omrežja maska sta lahko tudi domeni, ki sta na začetku prevedeni v IPv4.
+ omrežne maske so lahko tudi število začetnih nastavljenih bitov (24 za 255.255.255.0).
+ omrežne maske, ki niso CIDR, so dovoljene, recimo 255.0.255.255.
+ na primer za skeniranje celotnega Interneta se lahko uporabi kakršen koli naslov in maska 0.
+
+opozorilo: pred skeniranjem velikih omrežij se posvetujte s ponudnikom omrežne povezljivosti in
+vsekakor zamenjajte domeno iz dnsfind.sijanec.eu na nekaj svojega s stikalom -d.
+
+teoretično bi trajalo en dan za skeniranje celotnega naslovnega prostora IPv4 (2^32 računalnikov), a
+je ta številka lahko veliko večja, recimo tudi zato, ker jedro skoraj vedno malo zamudi zamik med
+pošiljanjem dveh paketov, ki je uveljavljen s sistemskim klicem <code>poll(2)</code>. prav tako se
+čas porablja tudi ob pisanju na standardni izhod, standardno napako, vtičnice in PCAP datoteko.
+
+ -- Anton Luka Šijanec <anton@sijanec.eu> Tue, 18 Jan 2022 14:30:00 +0200