Slow Down

- 1 min read
Anyone who knows me knows I’m quite stubborn. Whenever I set my sights on something I finish it. The last couple of years I’ve been quite busy on GitHub, making at least one commit per day. I’ve had a lot of things I’ve wanted to do and complete, and this commit regimen has kept me on track to do just that. However, nothing comes for free, and although I’ve achieved my goals, I’ve also had to make a lot of sacrifices.

Multicast routing with PIM-SM over GRE

- 8 mins read

GRE tunnels are useful in many ways. This blog post shows how to set up multicast routing with pimd over a GRE tunnel. To achieve this we will also set up OSPF over GRE with Quagga, because PIM, unlike DVMRP (mrouted), require unicast routing rules to be established.

       .----{ Intranet }----.
      /    192.168.1.0/24    \
     /                        \
.10 /                          \.20
.--'---. .1  GRE Tunnel  .2 .---`--.
|      |====================|      |
|  R1  |   172.16.16.0/30   |  R2  |
|      |                    |      |
'--.---'                    '------'
   | .1                        | .1 
   |    10.0.1.0/24            |    10.0.2.0/24
   | .2                        | .2 
.--'---.                    .--'---.
|      |                    |      |
|  C1  |                    |  C2  |
|      |                    |      |
'------'                    '------'

In this post we are using the home WiFi network, 192.168.1.0/24, to hook up the GRE tunnel. It is just as easy to extend this to a big corporate Intranet with more routers between R1 and R2. As long as that IT department takes care of the unicast routing between R1 and R2 so that the GRE tunnel can be established.

Set up a Debian/Ubuntu APT Repository

- 3 mins read

How to set up a Debian/Ubuntu APT repository with GPG signing.

At first I tried to use Bas Wijnen’s mini-dinstall howto, but never managed to get it working. Probably due to problems with GPG. Then I went down the tried and true path of using reprepro.

I’ve tried to document my steps here, but I’ve very likely missed a few steps that a beginner admin may run into. YMMV B-)

Threads vs Event Loop, Again ...

- 2 mins read

I still get asked this, from time to time. Maybe it’s because I only use event loops, maybe it’s because I’ve written libuEv, or maybe people still don’t understand:

Why an event loop, why not use threads?

So here’s my response, once more.

GIT, Autoconf and Automake in OpenBSD

- 1 min read
Reminder to self: echo "https://ftp.eu.openbsd.org/pub/OpenBSD/" >/etc/installurl pkg_add git autoconf automake libtool Select the latest versions, then add the following to ~/.profile: AUTOCONF_VERSION=2.69 AUTOMAKE_VERSION=1.15 export AUTOCONF_VERSION AUTOMAKE_VERSION With your selected versions, of course.

HTTPS proxy for Merecat httpd

- 2 mins read
This is a HTTPS proxy HowTo for Merecat httpd using pound and OpenSSL. Pound is a reverse proxy, load balancer, and HTTPS front-end for Web servers. It is available in Debian/Ubuntu and is very simple to set up: First install the package, including OpenSSL, or LibreSSL: sudo apt install pound openssl Use OpenSSL to create a self-signed certificate: mkdir ~/certs cd ~/certs openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.

HowTo: Set up Merecat with Ikiwiki

- 1 min read
This is a HowTo for setting up ikiwiki with Merecat httpd. First install ikiwiki $ sudo apt install ikiwiki libcgi-session-perl libcgi-formbuilder-perl Follow the steps to setup a new Wiki or Blog. In this example we set up a wiki in our ~/public_html: $ ikiwiki --setup /etc/ikiwiki/auto.setup ... Successfully set up wiki: url: http://localhost/~jocke/wiki srcdir: ~/wiki destdir: ~/public_html/wiki repository: ~/wiki.git To modify settings, edit ~/home.setup and then run: $ ikiwiki --setup ~/home.