Category Archives: Networks

802.11ac: weniger ist eben doch manchmal mehr

Dank der baulichen Gegebenheiten (Stahlbeton) hatte ich bislang immer mindestens zwei WLAN-Router in Betrieb – pro Etage einen. Nur so war durchgängiger WLAN-Empfang zu gewährleisten. Dank ständiger Aktualisierung der Hardware war bislang noch 802.11n das Maß der Dinge. Seit einer Weile arbeitet hier aber auch ein Router, der das neue 802.11ac unterstützt: ein Belkin AC1200.
Und mit dessen Einzug fingen dann auch die Probleme an. Clients verloren immer wieder die Netzwerkverbindung, gelegentlich ließ sich gar keine Verbindung aufbauen und viele Ärgernisse mehr. Die Lösung war aber so einfach, dass ich zunächst gar nicht drauf gekommen bin: Einfach den zweiten WLAN-Router abschalten. Der AC1200 deckt problemlos alle Stockwerke ab, auch durch die Betonmauern. Damit wäre für mich zumindest belegt, das 802.11ac tatsächlich eine bessere Reichweite hat als seine Vorgänger. Und Strom für den zweiten Router spare ich auch noch. Fein.

Kleine Erfolgserlebnisse


Check name    Uptime    Downtime    Outages   Response time
#######       58.54%    9h 57m 02s    189      9649ms


Check name    Uptime    Downtime    Outages   Response time
#######       100.00%   0h 00m 00s     0        647ms

The Day The Routers Died

Can’t believe I missed that.

I especially like the part about “those who stay silent”.

Speed up SSH Logins

Ever since some upgrade of my Ubuntu workstation it would took forever (10-15 seconds) to login to remote hosts using ssh. The solution is quite easy. Edit /etc/ssh/ssh_config and make sure you have set the following options:

    GSSAPIAuthentication no
    AddressFamily inet

Since I made these changes ssh logins again work in no time.

Belkin PlayMax Saves The Day

Belkin PlayMax Router - not a beauty but has powers within ;)
Today seems to be one of these days again. Just when I started working on some projects my wireless router died. LuckilyBelkin has sent me a PlayMax router just a couple of days ago so I decided to use that one as a drop-in replacement. Installing the hardware was a breeze since all cables were already attached. Connecting to my home network only required to plug in one additional network cable. I skipped configuration and used the credentials provided on the card attached to the router to connect to the wireless network. No problems there either so I was up and running again in under five minutes. Nice: from my first judgement the PlayMax has an enhanced coverage zone. Signal strength on my Macbook Pro is a lot better than with the old WLAN router. So my first impression is very positive, we’ll see how it plays out in the long run.


Dnsmasq for ReadyNAS (Sparc & Intel)

Two things I’ve always missed on the ReadyNAS were a DNS server to serve my local network and a fully fledged DHCP server allowing me to assign IP addresses to my machines based on their MAC address. Dnsmasq can do both and more. It even integrates a TFTP/BOOTP/PXE server to boot diskless machines off the network. So I dived into the realms of add-on programming again and baked some add-ons ;)

Continue reading

Apache Patch: Pass environment variables to backends connected via mod_proxy_ajp

One popular method to connect Tomcat or JBoss to the Apache web server is using mod_proxy_ajp. This of course works very well except for the case where you want to pass some environment variables to the backends. This is especially true for those who want to implement a 404 error handler using Java or other languages backed by Java. A common request is to be able to pass the values of the REQUEST_… variables defined by Apache to the error handler. While the AJP13 protocol would actually allow for that to happen, mod_proxy_ajp doesn’t offer that functionality. Luckily it’s quite easy to patch the functionality in. All you need is the Apache source code. Download and unpack, then open the file modules/proxy/ajp_header.c in your favorite text editor. Look for this code snippet:
Continue reading

Varnish 2.0.5 released

As mentioned here, Varnish 2.0.5 has been released. Changes include performance improvements on Linux and reduced memory consumption when processing ESI. Going to test it on this site in a few …

Continue reading

Give more threads to Varnish

When running my preferred proxy cache Varnish on Linux I realized that I couldn’t start enough threads on heavily accessed systems. As I found out, reducing the stack size is the key to get to the number I need. Oh well, if everything would be easy, I wouldn’t get paid I guess ;)
Continue reading

Move it, move it (a.k.a. “Screw it up the IBM way”)

I work with web sites for a living. I give them a place to live, I trash them when they’re no longer needed and I also move them. And believe me, moving a site is the trickiest of the jobs. But in all of my professional life, I’ve never ever seen a blunder like this (output shortened for brevity):

crow:~$ dig
; < <>> DiG 9.6.0-APPLE-P2 < <>>
;		IN	A


Really. Did they outsource the last thinking person in their networking department? Ok, maybe they fixed it and the change just hasn’t trickled down. So let’s try a different approach (again, shortened:)

Continue reading

Make your ReadyNAS the NTP time server of your network

Since it wasn’t that much work I decided to honor the request and build the server component of the NTP protocol suite for the ReadyNAS Duo/NV/NV+/1100/X6.
There are two archives available:

After installation the server will start immediately. However, it will take some time for the server to actually sync time and date with the official time sources. So it takes about 15 to 20 minutes until any client on your network can actually sync its time with the time source on the ReadyNAS.
Have fun with the tool and remember: Works for me, ymmv.


Make your ReadyNAS your scanning hub

Finally being bothered enough by always having to connect my USB scanner to yet another computer, I decided to bring the SANE backends to the ReadyNAS. As a result, I proudly presend sane-backends_1.0.20-readynas-0.1.0. Using this addon will add support for a vast variety of USB scanners to your ReadyNAS.
To use the scanner attached to your ReadyNAS, you’ll also need a compatible SANE frontend. Those are available for Linux and Windows (XSane) as well as for Mac OS/X (TWAIN SANE, even already with a version for Snow Leopard).

Some screenshots (taken on Linux):

Continue reading

Host your SVN repositories on your ReadyNAS

I just finished creating two Addons for the ReadyNAS Duo, NV, NV+, 1100 and X6 that allow you to host SVN repositories. The first obviously is Subversion itself. This addon includes all the subversion command line tools and also adds support for accessing the repositories on your ReadyNAS through the browser interface.

The second addon is WebSVN. In addition to browsing the repositories in a much nicer interface than SVN itself provides, this modified version also allows the creation of new repositories for authenticated users. To use WebSVN, PHP support has to be installed on the ReadyNAS which can be achieved by using the PHP_1.1.bin from

As always: Works for me, ymmv. If these addons break your ReadyNAS you own the parts.

Ah, and before you ask: Yes, versions for the Intel based ReadyNAS products are to come shortly. Don’t hold your breath, though.


How to build cheap cloud storage


At Backblaze, we provide unlimited storage to our customers for only $5 per month, so we had to figure out how to store hundreds of petabytes of customer data in a reliable, scalable way—and keep our costs low. After looking at several overpriced commercial solutions, we decided to build our own custom Backblaze Storage Pods: 67 terabyte 4U servers for $7,867. In this post, we’ll share how to make one of these storage pods, and you’re welcome to use this design.

Wow. If I had the money to spare, I’d definitely go and try to build one myself.

[ More » ]


Real Internet Gaming

An attack by a Chinese online game provider meant to cripple the servers of its rivals ballooned to cause an Internet outage in much of the country in May.

[ More &#187 ]

iSCSI-Target 0.4.17svn220 fixes memory leaks

I just upgraded the iSCSI support for the older ReadyNAS line to version 0.4.17svn 220. Most notably this version includes a fix for some memory leaks in the previous versions.

For more information see the details or if you aren’t that patient go and get the file ;)

Speed up WordPress with memcache

We all love WordPress. But, honestly, it’s everything but fast. An easy way to speed it up a good deal is to make it use memcached for storing some of it’s data. And doing this is actually easier than one might think. There are some pre-requisites:

  1. Download and install libevent
  2. Download and install memcached
  3. Download and install the memcache extension for PHP

The first two follow the standard

"./configure; make; make install

route. For the third I suggest using

./configure --enable-memcache
make install

Take note where the extension is intalled and have PHP load it by adding

to your php.ini. There’s a chance you’ll have to edit the line


, too, to reflect the actual path where the extensions can be found. After restarting PHP you should see the


extension in the output of phpinfo.

If everything is fine, we can add memcache support to our WordPress installation:

Continue reading

Bypass fsck on Linux startup

While re-installing the server hosting this site yesterday I ran into an interesting problem: The inital run of


on booting up the Linux image provided by my hoster would would report a file system inconsistency and wait for either the “root” password or a press of CTRL-D.
Since I didn’t know the “root” password (this is only supplied after installation has finished) and CTRL-D resulted in a reboot with the same result as before, I was stuck in a catch 22. Or so it seemed.


Luckily I had access to a serial console. So I could interrupt the boot process and edit the grub line with the kernel options. There adding the statement


made the Linux kernel skip the inital fsck run and voila, installation completed successfully.

To give you the whole picture: All I had to was to change this

title CentOS 5
    root (hd0,0)
    kernel /vmlinuz ro root=LABEL=/ console=tty0 console=ttyS0,57600
    initrd /initrd

to that

title CentOS 5
    root (hd0,0)
    kernel /vmlinuz ro root=LABEL=/ console=tty0 console=ttyS0,57600 fastboot
    initrd /initrd

Rapider Preisverfall

Die ZyXEL Modelle MGS-3712 (1180 Euro inkl. MwSt.) und MGS-3712-F (1099 Euro inkl. MwSt.) sind speziell für den Aggregations-Bereich von Fiber to the Building (FTTB) Infrastrukturen konzipiert. Beide Versionen verfügen über jeweils 12 Gigabit Ports. Beim MGS-3712 (786 Euro inkl. MwSt.) sind es 8x Kupfer und 4 Dual Personality Ports für den alternativen Anschluss von SFP Glasfasermodulen.

Noch 10 Zeilen mehr und man hätte wahrscheinlich Geld für den MGS-3712 bekommen, wenn man ihn nimmt ;)


Cloudy Buzzword Compliance

Jeff Caruso over at Network World wrote a nice piece about buzzword driven product marketing for networking hardware:

Network equipment vendors are getting a little buzzword-crazy when it comes to one of the biggest buzzwords today – “cloud computing” – and suddenly all of their switches and routers have “cloud” capabilities. Give me a break.


[ Full Story » ]