How to: Clear DNS cache on all kind of systems

Every few weeks I stumble across the same issue again: “How could the DNS cache be cleared again?” I admit, clearing DNS cache is not a daily task, but when it comes to it, you usually forgot the commands. That’s why the following is a short tutorial on how to empty the DNS cache in various operating systems and browsers.
Before we get to the individual solutions, I’d like to quickly explain what the DNS cache is for in the first place and when you should flush it (that’s the English term).
What is the DNS cache and when should you clear it?
The Domain Name System (DNS) is an essential service within IP-based networks, such as the Internet. If a user makes a request to a server via a program and uses a domain such as “code-bude.net”, the program first makes a request to a name server, which then determines the corresponding […]

Change Logitech FN-key behaviour without software

Change standard FN-key behaviourToday there is once again a short tip – this time for all owners of Logitech keyboards with a FN-key. Some time ago I was looking for a new keyboard. Criterion: Parallel usage of several devices – usually via Bluetooth. In the end the choice fell on the Logitech K375s. Stylish design, support for up to 3 devices that can be connected via Bluetooth or Logitech Unifying receiver. Only one small problem remained: the FN key.
No products found.
By pressing the FN key, the second assignment of individual keys can be activated. For example: You can control the volume by pressing the F12 key while holding down the FN key. So that’s the way I would prefer it at least. In practice, the FN key is active […]

.NET Core – gdiplus.dll not found in Linux

A few days ago there was an issue raised in my QrCoder project. It was reported that the code would not run under Linux, as the following error message would occur:

Unhandled Exception: System.TypeInitializationException: The type initializer for ‘System.Drawing.KnownColors’ threw an exception.
—> System.TypeInitializationException: The type initializer for ‘System.Drawing.GDIPlus’ threw an exception.
—> System.DllNotFoundException: Unable to load DLL ‘gdiplus.dll’: The specified module could not be found.
(Exception from HRESULT: 0x8007007E)
at System.Drawing.GDIPlus.GdiplusStartup(UInt64& token, GdiplusStartupInput& input,
[…]

However the error message had its origin not in my QrCoder, but in the interplay of the .NET core framework with the GDI Plus library. The .NET Core Framework tries to access “gdiplus.dll” when accessing “System.Drawing.GDIPlus”, which is simply not available on Linux.
First solution approach
First, ensure that GDI+ is installed at all. This can be done with the following shell command:

sudo apt-get install libgdiplus

If libgdiplus is installed, however, another important step is missing …
Link libgdiplus for .NET Core
Because the […]

How to fix SSL error 61 in Citrix Web Receiver on Linux

How to fix SSL error 61 in Citrix on LinuxI admit, the title is quite specific and will certainly appeal to only a small readership. But anyone who is facing the problem will be, like me, grateful for a solution.
In particular, the problem is about the SSL error 61 in the Citrix (Web) receiver under Linux and how to fix it. Since I have been running almost exclusively under Kubuntu for several months, the Citrix Reiceiver also moved into the new Linux box. Unfortunately, no connection to systems could be established, since the receiver disconnected with the following error message.
SSL Error 61: You have not chosen to trust “Go Daddy Root Certificate Authority – G2”, the issuer to the server’s security certificate.
Citrix-SSL-Fehler-61

How to read, calculate and set MTU in Windows, Linux and OSX

After I released the MTU Optimizer, a small tool for determining the optimal MTU, some days ago, let’s look at how to determine the optimal MTU by hand, how to read the currently set MTU and how to set new MTU value now. Of course we will discuss the whole thing for the three major operating systems: Windows, OSX and Linux.
Before we look at the implementation within the individual operating systems, we first briefly clarify what the MTU is and how its optimal value can be calculated.
Theory – Identify ideal MTU
The MTU (Maximum Transfer Unit) describes the maximum packet size of a protocol. It therefore indicates the maximum size of a data packet, so that it can be transmitted via a protocol. If a data packet is larger, it becomes fragmented – i.e. divided into several packages.
For example, let’s assume that we (=PC) would have a factory for sugar packets and our packet […]