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.
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.
# # 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.
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.
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.
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 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 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.
This blog post details how to set Alpine up with the Finit init system,
replacing the default OpenRC.