Fiber7 an einem IPv6 Linux router


Konfiguration unter Linux Dieser Artikel befasst sich mit der Konfiguration von IPv6 + Fiber7. Warum IPv6? Weil es zu IPv4 eigentlich nicht viel zu sagen gibt :-) IPv6 auf dem Router einrichten Wir gehen von einem Router mit 2 physikalischen interfaces aus: wan0 und lan0. Sysctl und router interface einrichten Zuerst stellen wir sicher, dass der Router sich nicht via SLAAC automatisch konfiguriert, da Init7 dies nicht (mehr) wirklich supported.…
Read more ⟶

Ejabberd cluster setup


Some notes about ejabberd clustering Setup the first node Note: If you are already running a single ejabberd node (called ejabberd@localhost) i’d recommend to simply dump mnesia and import it again: changing the node name might be too much work We will call the first node ejabberd@first.example.com Install erlang and ejabberd Create your ejabberd.cfg file In ejabberdctl.cfg: set INET_DIST_INTERFACE={10,0,0,1} (where 10.0.0.1 is the ip of first.example.com!) Start the node via ejabberdctl --node ejabberd@first.…
Read more ⟶

Dyson Pure Cool Link Internals


I got a Dyson Pure Cool Link fan a few days ago and started to tinker with it :-) (after having a look at the app and deleting it after ~5 Minutes. Ugh). Device Overview Well: It is a Fan. But a fan with a remote control and Wifi! Plug it in The fan can be used without all the Wifi stuff, but that wouldn’t be much fun. Unfortunately, you are forced to install Dysons app which has tons of ‘analytics-tracking’ built in.…
Read more ⟶

libfairydust.so - fixing closed source software


I’ve developed a small cuda/openCL wrapper library for the Brutus Cluster. The code is hosted at github and should work with cuda 4.x and ATI/AMDs OpenCL implementation. How does it work? Simply LD_PRELOAD libfairydust.so (export LD_PRELOAD=/path/to/libfairydust.so) and start ‘fairyd.pl’. The library works by ‘hijacking’ some cuda/opencl calls: Do i need it? Unless you are running a cluster: no. Libfairydust only makes sense while used in combination with a batchsystem, such as LSF.…
Read more ⟶

Qualcomm crypto driver


The tale of two identical devices I own two Xperia Z devices: One for my daily use and one to test my AOSP port. My (unencrypted) test device always feelt snappier than my encrypted for-daily-use phone. Well: That’s not a big surprise: Running with an encrypted /data partion will have some performance impact… but sometimes it just felt a little bit too slow. Searching for the root cause I quickly discovered (as expected) that my slow/encrypted device is much slower at doing any IO on /data.…
Read more ⟶

How to deploy DNSCurve


I’ve recently started to support DNSCurve on my nameservers running djbdns and you might do the same on your infrastructure: deploying DNSCurve turned out to be very easy and took about 1 hour of work! Migrating your server to DNSCurve But let’s start with the installation: First, you need to install a dnscurve-forwarder: The forwarder will listen for incoming requests on your public_interface:53 and forwards all queries to the dns-server (such as tinydns) listening on 127.…
Read more ⟶

Bittorrent specification mess


I am the author of a (rather unpopular ;-)) BitTorrent client called Bitflu and started to notice that the protocol specification went from ‘very good’ to ‘bad’ in the last few months. Sometimes there are undocumented features/extensions, sometimes it’s just hard to find the location of the documentation. This small page attempts to collect and extend the BitTorrent protocol documentation. Bencoding All clients need to implement some encoding called Bencoding (it’s like a binary form of XML).…
Read more ⟶

Changing the stylus pressure on a technics sl-7 turntable


I own an old Technics SL-7 and was (until recently) not smart enough to change the stylus pressure — even after reading the manual (you can download the sl-7 manual from here). The magic screw is located on the right side (the location in the manual is therefore completly wrong ;-) ) and the pressure can be chanbed by 0.25g: …
Read more ⟶