№42

... it's better to have good questions

Hello Containerlab with Orbstack

December 21, 2024 2 min read Technology Ronny Trommer

I still remember signing up on DockerHub 11 years ago. Learning how to build container images on real world projects is definitely a plus. Having a software and some use cases in the back of your mind, helps you to achieve things quicker and with some purpose. I’ve started to work with containerlab to build some network test environments mainly for three use cases:

  • Layer 2 network topologies for network monitoring tests using LLDP, CDP and Bridge-MIB
  • Routing topologies with protocols like BGP, OSPF or IS-IS in general
  • Some vendor specific network gear for monitoring with SNMP and streaming telemetry

Playing with OpenNMS from this perspective opens some use cases around Netflow, IPFIX, BGP monitoring, and SNMP in general. I was using Docker4Mac for a very long time. At some point in time I have switched to colima which was slim and easy to use. With switching to ARM on my Mac it got a bit more complicated.

Continue reading

Kickstart your homelab with netboot.xyz

October 17, 2024 2 min read How-To Ronny Trommer

I use a home lab for daily work and for testing purposes, I need to hop between Linux distros often. I’ve replaced my homegrown PXE boot environment with netboot.xyz. I built it for a few operating systems and all was good. I ran into netboot.xyz, and it was quickly pretty clear, this is what you want in a homelab when you have to hop between operating systems using virtual machines. Reducing the need for building bootable thumb drives or shuffling ISOs around is great. It has batteries included with boot menu configs, and it works out of the box. It allows also a lot of customization if needed. As a reminder to my future self and for others here is my config to get it working quickly.

Continue reading

UDP tuning and performance testing

October 17, 2024 1 min read Linux Networking Ronny Trommer

Problem statement

  • Ingesting UDP traffic is complicated to measure
  • Packet drops, connectionless and unreliable
  • Measuring on ingest on the network interface card
  • How can you make sure you measure reasonably?
  • You want a method to create some confidence how many UDP packets your system drops

Create a lab environment to reproduce the problem

  • Make the problem visible using with overloading a small device Raspberry Pi 3
  • Use sysctl default settings
  • Use something like hping3 or iperf to create a overload situation

You can’t improve what you don’t measure

  • Show tools like dropwatch or ss -lump or SNMP udp metrics to visualize packet drops
  • Compare packets received with tcpdump vs. iperf
  • Theory should show who be tcpdump should have more but not all then the sender

Increase buffers size?

  • What happens if you increase the buffer size?

Use PF_RING

  • How does the behavior change when you use PF_RING with TCPDUMP

Conclusion

Containers and Capabilities

July 14, 2022 5 min read Container How-To Ronny Trommer

I have to work with container images from time to time, and sometimes I need to do networking stuff. Of course, you want to do this as an unprivileged user. Especially when you mix and match with Docker or Kubernetes, it gets sometimes a bit tricky and a lot of people in our community including myself struggled on this part. To document it for my future-self and the ones interested – here is my scenario. I need regularly two things when I run OpenNMS tools in containers:

Continue reading

Docker Shell Corner Cases

January 18, 2017 2 min read Ronny Trommer

During work building Docker executables, I ran in an interesting corner case. Fortunately the Docker IRC channel helped me to investigate with special credits to Ravensoul.

When you build a container as an executable you can use the ENTRYPOINT for your binary to execute and CMD as a default overwritable argument. In most cases the CMD is the --help argument to provide a useful default behavior in case you just run the container without anything specified.

Continue reading

IPv6 and Monitoring

March 19, 2016 3 min read Ronny Trommer

We are all happy when we are able to get IPv6 connectivity for our new servers. In case the network is provided by someone else and some kernel settings you can get in some tricky situations.

With IPv6 there are so many addresses your Laptop and Mobile can have a unique public IPv6 address forever - pretty cool huh? The downside is, it would be pretty easy to trace every connection you ever do back to your device - this really not what you want! When you provide a service this behavior is not so useful. Otherwise there are several ways to autoconfigure your IPv6 configuration, beside DHCPv6 the interesting one is stateless address configuration.

Continue reading

Investigate file descriptor issues

November 7, 2014 2 min read Ronny Trommer

If you run a centralized monitoring system in large environment you can run in some issues regarding file descriptor limits. Linux gives you very detailed information in the kernel control and information center in /proc. The soft and hard limits have effect for file and network sockets, which can end up in a too many files open exception in OpenNMS.

The default values for soft and hard limits can be checked with

Continue reading