The original multicast routing daemon

- 2 mins read
mrouted is an implementation of the IPv4 multicast routing protocol DVMRP, RFC 1075. It is capable of turning a UNIX workstation, or Linux device, into a multicast router with tunneling support. Tunneling may be required to cross non-multicast-aware routers. The Distantance Vector Multicast Routing Protocol (DVMRP), derived from RIP, is suitable for smaller/dense networks. It employs the “flood and prune” method, where multicast is flooded until neighboring routers opt out from unwanted multicast groups.

HowTo: Build & Use My Projects

Joachim Wiberg - - 5 mins read

Ever so often someone new to Open Source show up on GitHub or in my inbox. It usually starts something like this:

  • “Hey, I just downloaded your software, what’s next?”
  • “Your software doesn’t work on my system!!!!”
  • “How can I do that weird-thing that fits my odd use-case?”
  • “I have zero documented experience but I think you should fix your build system!”

This HowTo is for you.

0. Short Version

  • Download a versioned archive from the project’s Releases page
  • Extract archive for v1.2.3 and change to its directory, cd archive-1.2.3/
  • ./configure --help, or use something like the following …
  • ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var && make && sudo make install

Some projects of mine are available in Debian/Ubuntu/FreeBSD, if you use that, please report bugs to them and not me. I have no control over what they do.

Cheers
/Joachim

smcroute.conf example

- 3 mins read
# # smcroute.conf example # # The configuration file supports joining multicast groups, to use # Layer-2 signaling so that switches and routers open up multicast # traffic to your interfaces. Leave is not supported, remove the # mgroup and SIGHUP your daemon, or send a specific leave command. # # NOTE: Use of the mgroup command should be avoided if possible. # Instead configure "router ports" or similar on the switches # or bridges on your LAN.
This is a very short blog post, mostly intended as a reminder to myself. Basically, there are two methods of adding multicast routing support to the FreeBSD kernel: Rebuild the kernel with options MROUTING Load the kernel module: kldload ip_mroute The kernel rebuild assumes the src.txz set was installed previously. cd /usr/src cd sys/amd64/conf cat GENERIC | sed 's/GENERIC$/MULTICAST/' > MULTICAST echo 'options MROUTING # Multicast routing' >> MULTICAST echo 'options PIM # Enable for pimd' >> MULTICAST cd - make kernel KERNCONF=MULTICAST reboot That’s it.

N E M E S I S

- 3 mins read
Nemesis is a command-line network packet crafting and injection utility for UNIX-like and Windows systems. Well suited for testing Network Intrusion Detection Systems, firewalls, IP stacks and a variety of other tasks. As a command-line driven utility, it is perfect for automation and scripting. Nemesis can natively craft and inject ARP, DNS, ETHERNET, ICMP, IGMP, IP, OSPF, RIP, TCP and UDP packets. Using the IP and the Ethernet injection modes, almost any custom packet can be crafted and injected.
With lots of help from the tireless Tobias Waldekranz, I think I’ve finally found the perfect “magit like” email setup. With Emacs, of course. This is the story of how I did it. First install notmuch, mbsync (from the isync package), and afew: sudo apt install notmuch isync afew Do initial setup of notmuch for your user. I’ve opted to store my mail in ~/mail, this is used throughout the text below, ymmv.
finit logo

This is a blog post about Finit. Each post is concluded with a video summarizing the topic. The impatient reader can scroll down to the video.

Most non-trivial systems require dependency tracking between services. Not only does it help ensure correct operation, it is also an enabler for starting services in parallel. Less known, but just as important, is handling dependencies at system reconfiguration.

Advanced watchdog daemon for Linux

- 1 min read
watchdogd(8) is an advanced system and process supervisor primarily intended for embedded Linux and server systems. It supports “kicking” multiple watchdog timer (WDT) devices and can also monitor critical system resources, supervise the heartbeat of processes1 and record process deadline transgressions. Read more about Built-in Monitors in the extended documentation. The configuration determines how the daemon acts on monitored resources and supervised processes. See watchdogd.conf(5) for how to set up watermarks and trigger external scripts to suit your particular setup.

It's Here! ♥

- 1 min read
finit logo

Finit v4 was finally released the other day! \o/

It represents the culmination of many years of hard work and careful thought put in by many people. There’s so much to tell, hardly know where to begin … the plan anyway is to use this blog for a series of posts detailing different aspects and important features.

The impatient reader can either scroll down to the video below, or move on to the project home page: https://troglobit.com/finit.html

Alpine Linux with Finit

- 3 mins read

Alpine Linux is an amazing little operating system. It’s small, boots quick, and easy to use. The size alone makes it very attractive to container builders.

Alpine Linux started with Finit

Alpine Linux started with Finit

This blog post details how to set Alpine up with the Finit init system, replacing the default OpenRC.