Kernel Module Snippets – Part 2 – Hello World Continued

This entry is part 2 of 5 in the series Kernel Module Snippets

Intro In the last post, I mentioned the /proc system but never got much further. We’ll delve a little deeper in this post. So what is /proc anyway? According to wikipedia – “The proc file is a special file system … that acts as an interface to internal data structures in the kernel. It can be used to obtain…

Kernel Module Snippets – Part 3 – Virtual Network Device

This entry is part 3 of 5 in the series Kernel Module Snippets

Intro A part of the project I’ve been working on requires the use of a virtual network device. Traditionally, this would be a tun/tap device. The user-space program would register a new tunnel device connected to /dev/net/tun, which presents the user with a tun0 device to which you can assign an IP address etc. IP…

Kernel Module Snippets – Part 5 – Encryption

This entry is part 5 of 5 in the series Kernel Module Snippets

Intro Key to transporting anything over the internet these days, is encryption. For a tunnel, this involved encrypting the whole packet that would be your payload. We don’t want anyone along the path to be able to intercept packets and see what the unencapsulated traffic would look like. Especially in the case of LAN to…