We had the problem that one domain (freenet.de) started replying with “550-inconsistent or no DNS PTR record for <IPv6> (see RFC 550 1912 2.1)”. Seems that they started checking whether the reverse DNS to the IP is a plausible one. (DNS PTR record and Revese DNS Entry are synonyms.)

Trying to set reverse DNS for IPv6

On one server we never even set the DNS PTR record for the IPv4 – we adjusted that. Yet the webtropia (our server hoster) interface for the reverse DNS for IPv6 did not work – no feedback, nothing. We asked the support which replied to just disable IPv6 on the server for the network adapter.

Trying to disable IPv6

I removed the check for IPv6 in the network adaptor. Now I could send mails to freenet.de again. But a few days later we got the same error. Seemed like our hMailServer still used the IPv6 to send emails. Looking into the issue I was about to disable IPv6 for good via the registry.

Setting IP binding in hMailServer

Before restarting the server I checked the hMailServer logs. Turns out that hMailServer tries to send via the IPv4 first, but gets a "457 Greylisted, please come back later" reply. (That is normal behaviour to avoid spams when the triplet (IP, sender, recipient) has not occurred yet.) Only after a few tries hMailServer uses the IPv6 to send, which results in the above mentioned 550 error. Another search brought up a setting in hMailServer where you can explicitly state which IP it should use for sending (Settings/Protocols/SMTP –> Advanced –> "Bind to local IP address"). After configuring that sending emails worked again without problems.


We use multiple build steps in our TeamCity configuration. One build step runs NUnit on our test project dll. If it fails some tests the build status is set to failed but the build step status may not be set to failed (even if process returns 1 – which usually corresponds to failed)!

We use TeamCity Professional 2017.1.3 with the following failure conditions for our configuration:


And we used the following setting in all subsequent build steps after the NUnit build step:


We had to change that setting to “Only if build status successful” (thanks to Ahmed on stackoverflow):


That way we can stop within one build configuration after unit tests fail and before we deploy :).


Today something weird happened: When pulling from one specific repository Git Extensions prompted me for my github login (it did not do that for other repositories). After searching a bit online I came to the solution that I may have used a different URL for cloning. There are two possibilities:


Using “HTTPS” you will have to enter login and password every time you interact with the remote repository. Using “SSH” will allow Git Extensions to use the private/public key pair you created (and which were used for the other repositories.

To change the settings in Git Extensions go to “Repository” menu –> “Remote repositories…”. There you can change the Url:


After that everything worked as expected.


If you are using your own domain to send emails, you may get the suspicion that your mails may land in the spam folder of your recipients.

MxToolBox is an easy way to check if your domain (or the IP of your mail server) is listed on a spam list.

With MailRadar you can check if you configured your mail server correctly: not allowing others to use it as a relay server.



Auch dieses Jahr war ich wieder bei der Spartakiade in Berlin. Das ist eine Wochenend-Konferenz die aus Workshops besteht. Jeden Tag gibt es ca. 10 verschiedene Workshops.

Am Samstag war ich bei einer Einführung in Angular 4 (Ferdinand Malcher und Johannes Hoppe). Ich hatte letztes Jahr an einem “funky friday” schon mal eine kleine Beispielanwendung mit Angular 2 gebaut. Damals war ich ziemlich erschlagen von der Komplexität der Komponenten (TypeScript, Transpilierung, Konfigurationen), die alle zusammenspielen, um eine Single-Page-Anwendung mit Angular zu bauen. Aus dem Workshop ging ich aber mit einem Gefühl raus die Komplexität deutlich besser verstanden zu haben. Ich würde aber weiterhin Angular nur dann empfehlen, wenn man eine neue, nicht gerade kleine Webpage bauen möchte. Man muss sich in die Struktur reindenken – da macht es keinen Sinn, wenn man nur ab und zu etwas an dem Projekt macht.

Spartakiade 2017 Angular 4

Am Sonntag war ich beim Workshop “.NET in the box” von Frank Pommerening. Ich habe mich da zum ersten Mal ausführlich mit dem Thema Container beschäftigt. Wir probierten mit Docker das Erstellen und Starten von Containern aus. Ich sehe da noch keine sinnvolle Anwendung für unsere Firma, aber eine interessante Technologie.

Insgesamt hat es mir das Wochenende gut gefallen. Wir haben in den Workshops viel an unseren Rechnern programmiert und konfiguriert – das hat Spaß gemacht. Der Service rundum war wieder toll: leckeres, vielfältiges Essen und Trinken, nette Leute :).

Spartakiade 2017 Mittag