{"id":92,"date":"2014-08-18T00:21:30","date_gmt":"2014-08-17T15:21:30","guid":{"rendered":"http:\/\/manatails.net\/blog\/?p=92"},"modified":"2022-04-03T13:48:56","modified_gmt":"2022-04-03T04:48:56","slug":"setting-up-a-ip-over-dns-tunnel","status":"publish","type":"post","link":"https:\/\/manatails.net\/blog\/2014\/08\/setting-up-a-ip-over-dns-tunnel\/","title":{"rendered":"Setting up an IP-over-DNS tunnel"},"content":{"rendered":"<p>Iodine is a piece of software designed to forward IP traffic over DNS queries. Its main purpose is to circumvent the captive portals of public Wi-Fi networks. That can be possible because a lot of captive portals does not restrict DNS queries.<\/p>\n<p>http:\/\/code.kryo.se\/iodine\/<\/p>\n<p>I thought it is a fun idea to try out, so I set up my own server.<\/p>\n<p>First I created a delegate for a subdomain to my linux server<br \/>\n<a href=\"http:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/dns.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-93\" src=\"http:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/dns.png\" alt=\"dns\" width=\"763\" height=\"445\" srcset=\"https:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/dns.png 763w, https:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/dns-300x174.png 300w\" sizes=\"auto, (max-width: 763px) 100vw, 763px\" \/><\/a><\/p>\n<p>Then I installed iodine on my linux box.<br \/>\nIodine comes in a package for Ubuntu, I could simply use that.<\/p>\n<p><code>apt-get install iodine<\/code><\/p>\n<p>Then start iodine<\/p>\n<p><a href=\"http:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodined.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-94\" src=\"http:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodined.png\" alt=\"iodined\" width=\"675\" height=\"424\" srcset=\"https:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodined.png 675w, https:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodined-300x188.png 300w\" sizes=\"auto, (max-width: 675px) 100vw, 675px\" \/><\/a><\/p>\n<p>At first try I got Bad Handshake errors and was unable to connect<br \/>\n<code><br \/>\nOpened dns0<br \/>\nOpened UDP socket<br \/>\nVersion ok, both running 0x00000401. You are user #0<br \/>\nReceived bad handshake<br \/>\nRetrying login...<br \/>\nReceived bad handshake<br \/>\nRetrying login...<br \/>\n<\/code><\/p>\n<p>I found that adding a -c option fixes the problem. If you are stuck with handshake, add -c to your launch options.<\/p>\n<p><a href=\"http:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodine.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-95\" src=\"http:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodine.png\" alt=\"iodine\" width=\"677\" height=\"442\" srcset=\"https:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodine.png 677w, https:\/\/manatails.net\/blog\/wp-content\/uploads\/2014\/08\/iodine-300x195.png 300w\" sizes=\"auto, (max-width: 677px) 100vw, 677px\" \/><\/a><\/p>\n<p>I downloaded precompiled iodine for Windows and started it.<br \/>\nThen I could connect to my linux box via ssh at 10.0.0.1<\/p>\n<p>I could use SOCKS forwarding over SSH to browse the web.<br \/>\nBut browsing the web is very slow, opening the Google main page takes about 20 seconds to finish. So I would say that its not practically useful. It would be better to use a text based browser like elinks over the SSH connection.<br \/>\nAnyway with Iodine enabled I could successfully connect to the internet on a local Wimax network without paying for subscription.<br \/>\nIn conclusion I say that Iodine is a neat application but it requires so much time (and patience) to actually use it.<\/p>\n<p>&nbsp;<\/p>\n<p>+to add the iodined as a service, edit\u00a0\/etc\/init.d\/iodined and adjust DAEMON_ARGS as per your needs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Iodine is a piece of software designed to forward IP traffic over DNS queries. Its main purpose is to circumvent the captive portals of public Wi-Fi networks. That can be possible because a lot of captive portals does not restrict DNS queries. http:\/\/code.kryo.se\/iodine\/ I thought it is a fun idea to try out, so I &hellip; <a href=\"https:\/\/manatails.net\/blog\/2014\/08\/setting-up-a-ip-over-dns-tunnel\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Setting up an IP-over-DNS tunnel<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[33,34,35],"class_list":["post-92","post","type-post","status-publish","format-standard","hentry","category-computer","tag-dns","tag-iodine","tag-tunneling"],"_links":{"self":[{"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/posts\/92","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/comments?post=92"}],"version-history":[{"count":3,"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/posts\/92\/revisions"}],"predecessor-version":[{"id":568,"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/posts\/92\/revisions\/568"}],"wp:attachment":[{"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/media?parent=92"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/categories?post=92"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/manatails.net\/blog\/wp-json\/wp\/v2\/tags?post=92"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}