Iodine

From ICO wiki
Revision as of 12:58, 11 June 2015 by Rhaavel (talk | contribs)
Jump to navigationJump to search

Autor

Rait Haavel [AK31]
Viimati muudetud: 10.06.2015

Kirjeldus

Iodine abil on võimalik luua IPv4 tunnelit kasutades DNS päringuid. Kui võrgus on kasutuses tulemüür mis plokeerib ära enamus tunneli loomise võimalustest, siis üldjuhul on DNS päringud lubatud ning Iodine võimaldab just seda ära kasutada IPv4 tunneli loomiseks.

Keskkonna nõuded

Toetatud OP süsteemid: iodine töötab nii linux , mac kuid ka windows operatsioonisüsteemidel.

Et luua iodine IPv4 tunnelit, siis peavad olema tagatud vastavad eeltingimused:
1. Komponendid
1.1 Klient masin (windows, linux) - See tööjaam, millega soovitakse tunneli teenust kasutama hakata.
1.2 DNS server - DNS server, mis teenindab iodine serverit.
1.3 Iodine Server - Server kuhu paigaldatakse iodine teenus, mis töötleb DNS päringuid.
2. Üldised nõuded
2.1 Nii iodine serveril kui ka kliendil peab olema ligipääs internetti.
2.2
3.

iodine seadistus - DNS server

Oma DNS serveris tuleb lisada tsoonifaili NS kirje alamdomeenile, mida hakkad kasutama.
Lisa alamdomeeni kirje

tunnel      IN    NS  tunnel1.domeen.zz.
tunnel1           IN  A   10.0.10.1

[1]

iodine seadistus - server

NB! Näide on toodud ubuntu 14.4 operatsioonisüstemi kasutades.
Paigaldus
1. Uuenda oma repositoorium.

sudo apt-get update

2. Installeeri iodine

sudo apt-get install iodine

3. loo IPv4 tunnel

sudo iodined 10.0.10.1 tunnel1.domeen1.zz

[2]

iodine seadistus - klient

Paigaldus
1. Uuenda oma repositoorium.

sudo apt-get update

2. Installeeri iodine

sudo apt-get install iodine

3. Seadista iodine looma IPv4 tunnelit

sudo iodine tunnel1.domeen.zz

4. Nüüd võid kasutada IPv4 tunnelit. Näiteks proovi pingida kliendi arvutist serveri IP-d.

ping 10.0.10.1

[3]

Atribuudid

Iodine on küll lihte ülesse seada, kuid võimalusi seda seadistada on mitmeid. Toon välja võimalused nii serveri pool kui ka kliendi poole seadistamiseks.
Klient

-r
Ei kasuta raw UDP reziimi. Vaikimisi iodine saadab liikluse otse serverisse, mitte ei kasutada DNS relay-d.

-m fragsize
Seab maksimaalse kasutatava allalaadimis fragmendi suuruse. Vaikimise kasutaba iodine kõige suuremat võimalikku allalaadimis fragmendi suurust.

-M namelen
Maksimaalse üleslaadimise serveri hostinime pikkuse määramiseks. Vaikeväärtus on 255, kuid selle abil saab määrata vahemikku 100-255.

-T dnstype
Saab määrata DSN päringu tüübi. Võimalikud tüübid on: NULL, TXT, SRV, MX, CNAME and A (returning CNAME)

-O downenc
Saab määrata kodeerimiseks. Kui vaike seade ei toimi, siis peab muutme kodeeringut kuna on võimalik, et see on nõutud. Võimalused on : Base32, base64, base128, base64u.
Base32 on kõge madalam koodek ning see toimib alati.

-L 0|1
Lazy-mode  reziim. Selle abil on võimalik tõsta jõudlust ning vähendadada võrgu viidet.

-I interval
Maksimaalne DNS päringu intervall. Kasutada selleks, et piirata DNS päringute liiasust võrgus. Maksimaalne väärtus on 59 kuna 60 peal juba iodine ise lõpetab ühenduse kliendiga.

[4]
Server

-c
Ei küsi iga päringu peale kliendi IP aadressi. Kui kasutatakse DNS serverite klustreid, siis võib esineda probleeme.

-s
Ei ürite konfigureerida IP aadressi või MTU-d. Kasuta kui on juba seadistatud millist seadet kasutada.

-D
Saab suurendada debug taset. Tase 1 väljastab kõik RX/TX paketid.

-l listen_ip
Saab piirata sissetulevat liiklust IP põhiselt. Vaikimisi on lubatud liiklus kõikidelt IP-delt.

-p port
Saab määrata pordi, mida teenus kuulab. Ka DNS peab saatma päringud sinna porti!

-n external_ip
Saab määrata IP aadressi kuhu suunatakse NS päringud edasi. 

-b dnsport
Kui see port on määratud, siis kõik sissetulevad päringud va tunneli domeeni omad, suunatakse edasi sinna määratud porti et kasutada päris DNS serverit.

[5]

Kokkuvõte

Kasutatud kirjandus

[1] https://github.com/yarrick/iodine
[2],[3] https://grahamedgecombe.com/blog/ip-over-dns-with-iodine
[4],[5] http://linux.die.net/man/8/iodine