Shrew Soft VPN Client: negotiation timeout occurred

Heute hatte ich mit dem Problem zu kämpfen, dass der Shrew Soft VPN Client keine VPN-Verbindung zum Kundennetzwerk aufbauen konnte. Die immer wiederkehrende Meldung: negotiation timeout occurred

Setup: Windows 10 Client, WLAN-Verbindung

Zunächst dachte ich, dass es an der Windows-Firewall oder an der installierten Sicherheitssoftware (Virenscanner etc.) liegen könnte. Nachdem ich das alles deaktiviert hatte, war es trotzdem nicht möglich, das VPN aufzubauen. Letztendlich habe ich jedoch den Hinweis gefunden, dass da eine ganz andere Komponente, die in neueren Windows-Versionen enthalten ist, eine Rolle spielt: Der „Microsoft Wi-Fi Direct Virtual Adapter“

Offenbar hat der Shrew-Client Probleme damit, wenn dieser virtuelle Adapter vorhanden ist. Nachdem ich den „Microsoft Wi-Fi Direct Virtual Adapter“ dann im Gerätemanager deaktiviert hatte, konnte das VPN erfolgreich aufgebaut werden.

Hätte man versucht, das VPN aufzubauen, wenn der Rechner per Kabel verbunden gewesen wäre, hätte vermutlich alles anstandslos funktioniert. Das hilft nur dann nicht mehr, wenn der Mitarbeiter unterwegs und auf WiFi-Verbindungen angewiesen ist.

Ich kann nicht ausschließen, dass das Problem nur in wenigen Fällen auftritt. Soweit habe ich das noch nicht getestet. Aber wenn das Problem auftritt, dass die VPN-Verbindung mit dem Shrew-Client nicht aufgebaut werden kann, wenn der Client eine WLAN-Verbindung nutzt, dann sollte dies eine der ersten Ansatzpunkte für die Problemlösung sein.

 

 

Veeam Backup & Replication – Error: VSSControl: Failed to prepare guest for freeze, wait timeout 900 sec

Bei einem Kunden funktionierte das Veeam Backup für eine VM nach der Installation eines Microsoft SQL Server 2016 Express nicht mehr. Fehlermeldung in Veeam:

Error: VSSControl: Failed to prepare guest for freeze, wait timeout 900 sec

Die von Veeam bereitgestelle KB1377 hat nicht geholfen. Bei der Überprüfung der Volumenschattenkopiedienste mit „vssadmin list writers“ wird der SQLWriter nicht aufgeführt. Die Anwendung von KB2095 von Veeam hilft allerdings auch nicht.

In den Ereignislogs des Servers findet sich folgende Fehlermeldung mit der Ereignis-ID 24583:

Sqllib-Fehler: OLE DB-Fehler beim Aufrufen von
                    IDBInitialize::Initialize. hr = 0x80004005.
                    SQLSTATE: HYT00, Native Error: 0
Source: Microsoft SQL Server Native Client 11.0
Error message: Anmeldungstimeout abgelaufen SQLSTATE: 08001, Native
               Error: -1
Source: Microsoft SQL Server Native Client 11.0
Error message: Netzwerkbezogener oder instanzspezifischer Fehler beim
               Herstellen einer Verbindung mit SQL Server. Der Server
               wurde nicht gefunden, oder auf ihn kann nicht
               zugegriffen werden. Überprüfen Sie, ob der Instanzname
               richtig ist und ob SQL Server Remoteverbindungen
               zulässt. Weitere Informationen erhalten Sie in der SQL
               Server-Onlinedokumentation.
SQLSTATE: 08001, Native Error: -1
Error state: 1, Severity: 16
Source: Microsoft SQL Server Native Client 11.0
Error message: SQL Server-Netzwerkschnittstellen: Fehler beim Suchen
               des angegebenen Servers/der angegebenen Instanz
               [xFFFFFFFF].
DBPROP_INIT_DATASOURCE: SRV003\SQLEXPRESS
DBPROP_INIT_CATALOG: master
DBPROP_AUTH_INTEGRATED: SSPI

Nachdem ich da nicht weiter wusste (diverse Dinge überprüft, wie bspw. die Zugriffsberechtigungen auf die Datenbank etc.), habe ich dann erstmal die SQL-Datenbanken in Veeam von der Sicherung ausgeschlossen. Ein Backup lief dann für den Server durch. Anschließend habe ich mir ein Script zur Datenbank-Sicherung erstellt, welches eigentlich als geplante Aufgabe täglich einmal durchlaufen sollte. Dazu habe ich die von Microsoft bereitgestellte Anleitung verwendet: https://support.microsoft.com/en-us/kb/2019698

Beim Testen des Scripts in der Testumgebung lief alles glatt. Auf dem Produktivserver erhielt ich dann aber die Fehlermeldung, dass die Instanz „.\SQLEXPRESS“ nicht gefunden wurde (obwohl sie lief). Das hat mir zu denken gegeben. Nachdem ich das Script so angepasst habe, dass die Instanz „SQLEXPRESS“ nicht mehr benannt wird (also nur „.\“), konnte ein Backup erstellt werden. Somit war mir klar, dass die Instanz quasi „unsichtbar“ ist. Nachdem ich mir dann die SQL-Server-Konfiguration im SQL Server Configuration Manager angeschaut habe, insbesondere bei den Server-Protokollen und dies mit der Konfiguration in der Testumgebung verglichen hatte, stellte ich fest, dass das Protokoll „Shared Memory“ nicht aktiviert war. Nachdem ich das Protokoll „Shared Memory“ sowie zur Sicherheit auch noch „Named Pipes“ aktiviert und den SQL-Server neu gestartet hatte, lief das Backup-Script auch mit der Benennung der Instanz. Eine Überprüfung der VSS-Writer mit „vsadmin list writers“ zeigte nun auch den SQL-Writer mit an.

Also habe ich die Ausnahme aus Veeam wieder entfernt und das Backup gestartet, welches dann erfolgreich durchgelaufen ist.

The Tiniest Vampire (Kinderbuch)

The Tiniest Vampire ist ein englisches Kinderbuch von Jason L. Witter. Ich habe das Projekt bei Kickstarter unterstützt und bin begeistert von dem Ergebnis. Es räumt in kurzen Gedichten und schönen Zeichnungen mit dem Vorurteil auf, dass Vampire, Skelette, Mumien oder das Monster unterm Bett böses wollen. Eigentlich sind sie nämlich genau so empfindsame und tollpatschige Wesen wie wir selbst. Klare Empfehlung für Kinder, die auch englisch verstehen. Oder natürlich für einen selbst 🙂

Google Now: Fehler beim Laden der Erinnerungen

2015-10-28 18_15_41-KalenderEin kleines Problem (Bug?) hatte bei mir dafür gesorgt, dass ich in der Google Now App auf meinem Android Smartphone keine Erinnerungen mehr anzeigen konnte. Also die Erinnerungen an sich kamen, nur konnte ich mir die Liste der bisher angelegten Erinnerungen nicht anzeigen lassen. Es kam immer die Meldung: „Fehler beim Laden der Erinnerungen“. Ungefähr ein halbes Jahr hat es gedauert, bis ich die eigentlich simple Lösung dafür gefunden habe.

Das Problem betrifft womöglich nur sehr wenige Leute. Ich hatte eine Erinnerung für den 29. Februar angelegt und den Reminder auf jährlich eingestellt. Das macht man ja für gewöhnlich nicht, außer es handelt sich bspw. um eine Geburtstagserinnerung. Google Now bzw. die App kam jetzt nun aber damit überhaupt nicht klar, weil der 29. Februar ja bekanntlich nur alle vier Jahre im Kalender steht. Also verweigerte mir die App die Anzeige aller Erinnerungen.

Nachdem ich schon ziemlich zu Anfang des Problems auch nach gefühlt etlichen Stunden Recherche nichts gefunden hatte, habe ich mich erstmal damit abgefunden. Heute habe ich mich dann aber doch nochmal auf die Suche nach der Lösung des Problems gemacht und bin über einen ganz interessanten Eintrag bei Reddit gestolpert, den ich im Prinzip auch schon vor einem halben Jahr hätte finden können, wenn ich die richtigen Suchbegriffe verwendet hätte.

Wie dem auch sei: Man kann sein Googlemail-Konto seit der Übernahme von Inbox durch Google auch über Inbox verwalten. Ich hatte auch schon irgendwie vermutet, dass Google die Reminder irgendwo mit dem Mail-Konto verknüpft, nur ist es nicht möglich, über Gmail auf die Erinnerungen zuzugreifen. Und auch sonst innerhalb der Google-Konto-Einstellungen/Apps habe ich keinen Weg gefunden, mir die Reminder anzuzeigen.

Der Post bei Reddit verwies nun auf https://inbox.google.com/u/0/reminders, also quasi auf die Inbox-Version von Gmail. Und siehe da, dort konnte ich die „fehlerhafte“ Erinnerung sehen und löschen.

 

Schwangerschaftscounter für moderne Mütter und Väter

Vor einiger Zeit habe ich eine kleine Countdown-App gebaut, die den aktuellen Status einer Schwangerschaft anzeigt. Das PHP-Script zeigt neben den verbleibenden Monaten, Wochen und Tagen auch die aktuelle Schwangerschaftswoche und den aktuellen Schwangerschaftsmonat (nach Naegele) sowie durchschnittliche Größe und Gewicht des zukünftigen Nachwuchses an (nach der Tabelle bei babycenter.de). Außerdem wird für Leute, die auf Statusbalken abfahren, der Fortschritt in genau so einem angezeigt.Zwergen-CounterDas Script ist auch für Smartphone-Displays geeignet.

Ich bin nicht der beste „Programmierer“, deshalb kann es sein, dass das Script technisch nicht so doll ist. Ich habe verschiedene Code-Snippets aus dem Internet verwendet. Außerdem möchte ich nicht ausschließen, obwohl ich es getestet habe, dass am Tag der Geburt (bzw. am errechneten Geburtstermin) oder danach irgendwelche Fehler auftreten.

Bevor das Script eingesetzt werden kann, muss der erste Tag der letzten Periode sowie der errechnete Geburtstermin eingesetzt werden. Dazu das Script mit einem Texteditor öffnen und in den ersten Zeilen die beiden „0000-00-00“ durch eure Daten ersetzen (Format: JJJJ-MM-TT, bspw.: „2016-05-28“)

Das Script könnt ihr hier herunterladen: zwerg.zip