2017-08-16

Rewriting mmanon

Currently, rsyslog's mmanon module has the task of anonymizing ip-addresses. However, due to only being able to anonymize ipv4-addresses, I decided to overhaul the module to be able to also work with ipv6-addresses (see this feature request). In doing this, I also noticed some bugs with the ipv4-module.

Now there are two options: try to fix these or rewrite the function. While it might seem like more work, I have decided to rewrite the function, since I was already planning to add new configuration options like the option to randomize ip-addresses.

I have already worked on a similar tool for liblognorm which has never been released due to a lack of time on my part. An UNFINISHED VERSION of this work is available in my private repository.

Since this function already has some of the options I plan to implement, I will implement this as part of the new mmanon ipv4 anonymization.

But what about the current options? I will try to implement as many as possible in the initial rewrite, however some may be up for later reintroduction since I also plan on starting with the ipv6 anonymization as soon as possible. However I think that not too many people were using the module and consequently, its options. At least searching the github issue tracker for mmanon did not bring up many issues. Most of them not even really related to mmanon. There are also only few questions regarding mmanon on the mailing list. I think this proves my point, since some of the bugs affect major parts of the function.

If you were using or are currently using the module, I would be glad if you could tell me what configurations you are using and what is important to you when using the module. I have created a github issue tracker for this purpose.

2017-08-08

Improving rsyslog debug output

2013-06-30

Wie man die interne ip-adresse von Linux feststellt

Um die ip von Linux festzustellen, muss man zuerst ein Terminal öffnen. Dort gibt man dann den Befehl ifconfig ein. Dann werden einem verschiedene ips angegeben. Die interne Adresse ist eth0, was für Ethernet steht. Mit dieser Adresse kann man, wenn man sich  im selben Netzwerk befindet, auf Linux zugreifen. Die Adresse, die meistens mit lo angegeben ist, ist die loopback-adresse. Diese verwendet das System, wenn es auf etwas im selben System zugreift. Diese ist immer 127.0.0.1.

2013-06-29

Die Zählschleife

Hier ist eine beschreibung eines wichtigen Programmelements des Fischertechnikroboters: der Zählschleife. Die Beschreibung des Roboters ist hier zu finden

Die Zählschleife hat zwei Eingänge und zwei Ausgänge mit je einer individuellen Funktion. Bei den Eingängen hat einer die Funktion, dass der eingehende Wert gleich eins gesetzt wird. Auf dem anderen Eingang wird der eingehende Wert um eins erhöht. An dem ersten Eingang geht man in die Zählerschleife. Dann ist der Wert eins. Wird nun die Zählerschleife auf einen Wert konfiguriert, so wird auf dem anderen Eingang der Wert solange um eins erhöht, bis der Wert größer dem konfigurierten ist. Das  ist so, da der Startwert bereits eins ist, man ansonsten also einen Durchgang zu viel hätte. Bei den Ausgängen gibt es erneut zwei Möglichkeiten: einmal das Ergebnis, der aktuelle Wert ist nicht größer dem vorgegebenen oder der Wert ist größer dem vorgegebenen. Ist der Wert nicht größer dem vorgegebenen, wird die Zählschleife ausgeführt, ist er größer, ist die Zählschleife beendet und das Programm läuft weiter. Der Sinn einer Zählschleife ist es, ein bestimmtes Programm n-mal durchzuführen und man es nicht n-mal programmieren muss.

2013-06-17

Was ist ein Unterprogramm?

Hier ist eine Zusammenfassung darüber, wie bei dem Fischertechnik-roboter Unterprogramme funktionieren.

Ein Unterprogramm dient in erster Linie der Übersicht über das Hauptprogramm. Es ist ein Programm, das man in der oberen Zeile auswählen kann. Man kann beliebig viele Unterprogramme erstellen. Wenn man ein Unterprogramm erstellt hat, kann man es mit einen Unterschied wie ein normales Programm programmieren: Statt Start und Stopp gibt es einen Eingang und einen Ausgang. Das liegt daran, dass ein Unterprogramm in dem Hauptprogramm wie ein ganz normaler Teil, zum Beispiel Motor Start, hinzugefügt wird, also kein eigenständiges Programm ist. Durch Unterprogramme wird das Hauptprogramm wesentlich übersichtlicher, da es wie bereits erwähnt nur als ein Element dargestellt wird, jedoch selbst wesentlich größer als ein Element ist und sogar sehr komplexe Abläufe beinhalten kann. Ein weiterer, großer Vorteil des Unterprogrammes ist, dass, wenn man einen sehr komplexen Ablauf mehrfach in einem Programm braucht, man ihn nur einmal Programmieren muss. Danach kann man das Unterprogramm beliebig oft als einzelnes Element einfügen.

2013-06-09

Über den Fischertechnik-Roboter


Ein Roboter ist eine technische Maschine, die durch ein Signal eines Sensors, zum Beispiel einem Lichtsensor, ein Programm ausführt. Dafür braucht man jedoch nicht nur Sensoren. Der Eingang des Sensors geht in die Systemsteuerung. Dort wird durch ein bestimmtes Programm einem bestimmten Eingang ein bestimmter Ausgang zugeordnet. An dem Ausgang sind dann Aktoren, z.B. Motoren. Der Fischertechnikroboter funktioniert genauso, nur besteht er aus gewöhnlichen Fischertechnikbauteilen und einigen Sonderteilen.

Der Roboter

2013-05-28

Präsentation "Gewinnung von Eisen" jetzt online

Meine Präsentation zur Gewinnung von Eisen ist jetzt online. In ihr geht es um Grundwissen zu Eisen und den chemischen Prozessen bei der Eisengewinnung