blog.kyri0s.org


Stuff longer than 140 characters I find important to save in the internets.

building iodine on 10.6 SnowLeopard

I just happened to come across iodine. It’s a client/server project to tunnel IPv4 traffic through DNS requests. This can be useful if the only internet access you have is DNS. (Read: public Wifi)

It’s slow but reliable. It’s not yet another port 53 tunnel but encapsulates IP Packets in real random DNS Queries. The DNS Server of your provider is therefor forced to contact your DNS Server which in this case is the iodine endpoint.

There’s not much you can do to block this kind of traffic.

Please note that this might or might not be illegal or other legal stuff involved. It’s your own responsibility.

Requirements:

  • DNS Zone which you can use for the tunnel (subdomain) e.g. tunnel.mydomain.com
  • A Server (debian comes with iodine packages)
  • A Client (in my case this is my Mac)

I won’t give install instructions. Just check out the very good README that comes with the source.

However building iodine under Snowleopard requires an additional step I thought it would be a good idea to document.

when building (make) you will receive the following error:

dns.c:30:34: error: arpa/nameser8_compat.h: No such file or directory

You can fix this by symlinking the file nameser_compat.h to the missing one.

ln -s /usr/include/arpa/nameser_compat.h /usr/include/arpa/nameser8_compat.hnameser_compat.h

It’s probably a good idea to remove the symlink again after building.


Comments
blog comments powered by Disqus