2018

Network-Automation with Salt, NAPALM and Kubernetes

Since the native integration of NAPALM into the Salt core which was officially done since Salt Carbon (2016.11) by Mircea Ulinic it is possible to manage network-devices directly with Salt. I thought about how to scale this out and how to manage a lot of (hundreds or even thousands) network-devices...
February 6

Blog hosted on heroku

My blog is now hosted on heroku. I decided to switch from GitHub Pages. Heroku has also support for git and jekyll, which is perfect for my blog. So like before I can just make my changes, watch and check them locally with jekyll serve and if everything is okay...
February 5

2017

Ansible-playbook wrapped in docker container

Today I’ve tested some of the new Cisco ACI modules which get shipped with Ansible 2.4. So I built my local ansible project, created the inventory and the playbook. I run into an authentication issue which was based on the python version ansible was using. I corrected this with the...
October 11

Ansible python interpreter

If you run into problems with the python which ansible uses to execute playbooks you can ensure that a specific python version gets used with the ansible_python_interpreter value set in the inventory file. It is possible to hardcode the path to a custom python executable or what I prefer is...
October 10

Private vs. public vs. hybrid Cloud

Because of this interesting article written by Cumulus Networks I decided to think about some questions regarded to this topic. Below you can read my personal thougths about the different kinds of a cloud. Some information are out of the mentioned article. My definition of a Cloud A cloud is...
August 21

ACI 3.0 released

I just installed ACI 3.0(1k). The improved GUI looks very cool :)
August 11

Career thoughts

Inspired by the book Unintended Features (written by Daniel Dib and Russ White) I decided to think about some questions regarded to my career as a network engineer. The questions are mentioned in the third chapter (Education) and are in my opinion very helpful to think about. You should answer...
April 10

2016

Event-driven network automation using Slack, hubot, StackStorm and Ansible

Event-driven automation is a very interesting topic. Think about executing task X when a POST-request gets fired to an application. Or about executing task Y as soon as a special mail gets obtained. I thought about bringing this topic together with network-automation and the things I have learned about Ansible...
April 1

Using the official network modules with Ansible 2.0.X

About one month ago Ansible released official core modules to work with network equipment. With Ansible 2.1 they will be included in the stable-release. Their functionality is described in the documentation. Different vendors and platforms like Cisco IOS, Cisco NX-OS, Cisco IOS-XR, Juniper JUNOS or Arista EOS are supported. Typically...
March 13

Cisco APIC-EM as an Ansible dynamic-inventory

APIC-EM is a product of Cisco which delivers SDN to the Enterprise WAN, Campus and Access networks. It provides centralized automation of policy-based application profiles. Through programmability, automated network control helps IT rapidly respond to new business opportunities. APIC-EM can be downloaded at no additional charge using a free membership...
February 10

Securing plesk with user/password dialog

If you want to add additional security to your plesk installation (this method is not working for all plesk versions) it is possible to use a .htaccess-like user/password dialog. Plesk uses sw-cp-server as a webserver. You have to edit the plesk.socket.sh script which starts the server. Insert the following lines...
February 8

2015

SSH encountered an unknown error (Broken Pipe)

I just setup a Babun environment on my Windows 10 workstation and installed vagrant&ansible. While testing my complete setup I got an error while using multiple vagrant vms in an ansible playbook or ansible command. Most of the time only 1 or even 0 hosts were reachable with ansible: vagrant2...
December 26

vSphere Web Client Sprache anpassen

Der vSphere Web Client nutzt als Default die eingestellte Sprache des Betriebssystems. Viele Dinge lassen sich jedoch gerade im VMware-Umfeld mit englischer Sprache besser ausdrücken. Viele Ausdrücke sind auch auf Englisch bekannter und werden sehr umständlich in das Deutsche übersetzt. Mit folgender URL kann der Web Client unabhängig von den...
November 23

Spotify hinter Web-Proxy

https://play.spotify.com/?http=1
September 21

Meteor: autopublish / insecure

Wenn ein neues Meteor Projekt erstellt wird, so sind automatisch die beiden Packages autopublish und insecure mit dabei. Diese sind für das Development gut geeignet, sollten aber mit der Zeit auf jeden Fall entfernt und mit entsprechenden Meteor.Methods und Publish-/Subscribe Funktionen abgelöst werden. Entfernen der Pakete mit: meteor remove autopublish...
August 4

Meteor: special directory names

Meteor lädt alle Dateien automatisch. Wenn man nicht per Meteor.isServer und Meteor.isClient unterscheiden möchte, was Clientseitig und was Serverseitig ausgeführt wird, so kann man den gleichen Effekt auch über eine Ordnerstruktur bewirken. client (entspricht Meteor.isClient) server (entspricht Meteor.isServer) public (static assets, z.B. ein Logo oder fontawesome) private (assets, die nur...
July 31

MEAN-Stack / Meteor-Framework

Dieser Post soll einen kleinen Vergleich zwischen dem MEAN-Stack und dem Meteor-Framework aufzeigen. MEAN In den letzten Wochen war ich sehr begeistert von Web-Applikationen, die auf einem reinen Javascript-Stack basieren. Der bekannte MEAN-Stack nutzt dafür: M = mongoDB E = Express A = AngularJS N = nodejs Mit solch einem...
July 30

Multicast-Routing: PIM

Multicast-Routing ist kein triviales Thema. Dieser Post zeigt einen Vergleich zwischen verschiedenen Multicast-Routing Protokollen und deren Konfiguration auf Cisco-Devices. Cisco bietet 3 Wege für die Realisierung von PIM Sparse-mode (IPv4): static automatisch mit AutoRP (proprietär) automatisch mit BSR (standard) Der PIM sparse-mode unterscheidet sich grundlegend vom dense-mode. keine “Push”-Technologie wie...
July 23

Stop and remove docker containers

Commands to stop and remove all docker containers: docker stop $(docker ps -a -q) docker rm $(docker ps -a -q)
July 18

PDH/SDH Merker

PDH und SDH sind international standardisierte Techniken zum Multiplexen digitaler Datenströme. Sie sind leitungsbasierte Übertragungsverfahren. SDH = synchrones Zeitmultiplex-Verfahren “Pointer” Datenströme/Takte mit sehr geringer Abweichung synchron (10 mal so genau wie PDH) weit höhere Datenübertragungsraten möglich (hier nur die häufig verwenden aufgelistet) STM-0 51,84 Mbit/s STM-1 155,52 Mbit/s STM-4 622,08...
June 10

QoS Merker

Als Netzwerkadministrator kommt man auch immer wieder mit dem Thema Quality of Service (QoS) in Berührung. Dieser Post soll mir eine Übersicht der verschiedenen Möglichkeiten in Layer2/Layer2 bieten. Generelle Fragen: 1. Welche Traffic-Klassen habe ich? 2. Welches Modell soll verwendet werden (4 class, 8 class, 12 class)? COS (=Class of...
April 29

2013

LWL

Für Lichtwellenleiter (LWL) gibt es was Kabeltypen, Interfaces, Steckertypen und Längen angeht verschiedene Möglichkeiten und Spezifikationen. Im folgenden werden diese in einfacher Form zusammengefasst. Kabeltypen: Monomode (9µ/125µ) Multimode (50µ/125µ, seltener 62,5µ/125µ) Patchkabel: Monomode: OS1,OS2 (OS1 schlechter, OS2 besser) Multimode: OM1, OM2, OM3, OM4 (OM1 schlechter, OM4 besser) GBIC-Interfaces: SX (500...
December 10

Weil ich es immer vergesse…

… Router# session slot X processor 1 Route# service-module analysis-module slot X session Router(config)# power enable module X
November 4

The next generation data-center

Leider konnte ich mein Ziel, den CCNP im Jahr 2013 zu bekommen, nicht einhalten. Sowohl privat (Hochzeit, Umzug…) als auch geschäftlich war mein Jahr anders (aber keineswegs negativ *g*) geprägt. So konnte ich mich zwar nicht gezielt auf den CCNP vorbereiten, machte aber doch viele Fortschritte in Sachen Netzwerktechnik. Für...
October 27

2012

My way to CCNP?

Inspiriert durch das Buch Your Route to Cisco Career Success habe ich mir vorgenommen, nach meiner CCNA Zertifizierung im November 2011, den CCNP als mein nächstes Ziel zu definieren. Um diese Zertifizierung zu bekommen, müssen drei Prüfungen abgelegt und bestanden werden. Entgegen einiger Meinungen werde ich nicht mit der ROUTE...
December 24

Joomla „Beiträge“ Überschrift entfernen

Möchte man bei Joomla 2.5 die störende Überschrift “Beiträge” bei intern verlinkten Seiten entfernen, so geht dies indem man die default.php wie folgt editiert: Aus <?php if ($this->params->get('show_page_heading', 1)):?> wird <?php if ($this->params->get('show_page_heading', )):?>
December 19

chmod rekursiv für Dateien/Verzeichnisse

Die Rechte können für Dateien/Verzeichnisse rekursiv mit folgenden Befehlen geändert werden: Für Dateien: find . -type f -exec chmod 644 {} \; Für Verzeichnisse: find . -type d -exec chmod 755 {} \;
November 23

Opened Ports

Um unter einem Linuxsystem die opened Ports zu sehen nutze ich meist das folgende Command. netstat -anpt
April 18

Ein kleines IPsec Howto

IPsec ist ein ziemlich komplexes Protokoll beziehungsweise eine Protokollsammlung, die es ermöglichen soll über VPNs (“Tunnel”) zwischen Netzwerken sicher kommunizieren zu können. Dabei können je nach Konfiguration Vertraulichkeit, Authentizität und Integrität gewährleistet werden. Zwei Modi: Transport-Mode [Host-to-Host Verbindung] Tunnel-Mode [Net-to-Net Verbindung] Drei Protokolle: Authentication Header (AH) [Authentizität/Integrität] Encapsulating Security Payload...
April 5

PLESK und mailman: mm_wrapper

Wer wie ich PLESK und mailman parallel auf einem Server betreibt, könnte auf die gleichen, hier geschilderten, Probleme stoßen. Nachdem ich auf meinem Debian vServer PLESK von der Version 8.6 zuerst auf die Version 9.3 und dann auf die Version 10.4.4 geupdated hatte, stellte ich kurze Zeit später fest, dass...
March 24

Lambda-Ausdrücke in C#

Seit C# 3.0 ist es möglich sogenannte Lambda-Ausdrücke zu benutzen. Auf diese bin ich heute in einer Vorlesung gestoßen, habe jedoch nicht direkt verstanden, wie diese funktionieren. Deswegen möchte ich die Funktionsweise anhand von einfachen Beispielen erklären. Lambda-Ausdrücke werden oft im Zusammenhang mit Delegates (Methodenverweisen) verwendet. Im folgenden Beispiel werden...
March 21

BIND 9.7.3: DNSSEC

Heute habe ich auf meinem LAN-DNS-Server - als Nameserversoftware wird BIND 9.7.3 genutzt - die DNSSEC Funktion sowie die DNSSEC Validierung aktiviert. Der Nameserver dient den Clients zur Auflösung von Hostnamen im LAN sowie zur Auflösung von Domainnamen im Internet. Obwohl er für Internetdomains einen festen Forwarder konfiguriert hat, kann...
February 1

2011

Steganografie: Daten in Bildern verschleiern

Die Steganographie (auch: Steganografie) ist die Kunst oder Wissenschaft der verborgenen Speicherung oder Übermittlung von Informationen in einem Trägermedium (Container). Das Wort lässt sich auf die altgriechischen Bestandteile στεγανός steganós ‚bedeckt‘ und γράφειν gráphein ‚schreiben‘ zurückführen, bedeutet also wörtlich „bedeckt schreiben“ bzw. „geheimes Schreiben“. Das modifizierte Medium wird als Steganogramm...
October 15

Debian sources.list

Da auf meinem vServer noch Debian etch (also Debian 4.0) läuft, für diese Version der offizielle Support abgelaufen ist und leider nun auch die Pakete vom offiziellen Debian-Server entfernt wurden musste ich die sources.list editieren, um weiterhin per “apt-get update” und “apt-get upgrade” die Programme auf meinem Server aktuell zu...
March 23

2010

Apple Links

Da ich nun einen MacbookPro besitze, hier eine kleine Linksammlung… http://www.free-mac-software.com http://www.apple.com/downloads/macosx/ http://www.macgadget.de/opensource
September 18

C++ für Spieleprogrammierer

In letzter Zeit beschäftigte ich mich mit dem Buch “C++ für Spieleprogrammierer” von Heiko Kalista. Das Buch ist nicht, wie der Titel vermuten lässt, nur für angehende Spieleprogrammierer geeignet, sondern erklärt C++ von Anfang an sehr verständlich. Dabei achtet der Autor stets darauf, dass keine Langeweile aufkommt und sorgt mit...
August 7

O-Kalkül Sortierverfahren

Sehr Allgemein gehalten… Einfache Verfahren** **O(n²)* (bubble, insertion, selection)* Mittlere Verfahren** **O(nlog n²) (shell)* Schnelle Verfahren** **O(nlog n) (merge,heap,quick)*
July 25

C++: TicTacToe

Im Rahmen unserer Vorlesung zu C++ bekamen wir die Aufgabe, das bekannte Spiel TicTacToe als Konsolenanwendung zu programmieren. Mein Ergebnis steht nun zum Download bereit: TicTacToe (.exe) TicTacToe (.exe und Quellcode) Verbesserungsvorschläge sind immer Willkommen!
July 12

Blackberry und SSH?

Im Moment sitze ich in der DHBW und suche nach einer Möglichkeit, per Blackberry Curve über eine SSH-Verbindung auf meinen Debian vServer zu kommen. Dabei sind mir die folgenden Software-Lösungen aufgefallen: bbssh midpssh PaderSyncSSH
May 18

Passwortschutz durch .htaccess

Durch eine .htaccess in Verbindung mit einer .htusers Datei ist es möglich Verzeichnisse auf einem z.B. (Apache-)Webserver durch eine User/Passwort-Abfrage zu schützen. Ich selbst nutze diese Funktion auch immer wieder… Dazu einfach im entsprechenden Verzeichnis eine Datei namens “.htaccess” mit z.B. folgendem Inhalt anlegen: AuthType Basic AuthName “Passwortschutz” AuthUserFile PFADZURDATEI/.htusers...
May 15

Fibonacci Folge

Bei der Fibonacci-Folge handelt es sich um eine rekursiv definierte Folge, die wie folgt entsteht: für mit den Anfangswerten und Auch hierfür habe ich in C einen Algo geschrieben… einen rekursiven und einen iterativen. Wieder mal ein Beispiel, bei dem die Anwendung der Rekursion um einiges verständlicher ist als die...
May 15

Türme von Hanoi

Wer jemals das Vergnügen haben sollte mit den Türmen von Hanoi in Kontakt zu kommen und womöglich auch noch einen rekursiven Algorithmus dafür finden zu müssen, für den und natürlich auch alle Anderen habe ich hier ein kleines Beispiel, wie dies gelöst werden kann. Geschrieben ist er in C. #include<stdio.h>...
May 14