Lync DeviceUpdate

Fast ganz neu hat Microsoft mit Lync den Device Update Service für die Telefone aufgelegt. War das früher noch eine Sharepoint Seite und mit OCS2007R2 ein knifflig zu konfigurierender Webservice war, so ist es mit Lync weiterhin ein Webservice, der aber nun zum Teil in die GUI integriert ist. Sicher ein Tribut an die einfache Einbindung der neuen Lync Telefone. Ganz "Plug ans Play" ist das aber immer noch nicht. Das ist sicher auch der beschränkten Funktion der Telefone geschuldet, die sich nur sehr rudimentär am Gerät selbst verwalten lassen. Viele SIP-Telefone wie z.B. SNOM Telefone haben einen integrierten Webserver. Die Lync-Telefone hingegen nutzen nur DNS und DHCP. Bis ein Device Update funktioniert, müssen einige Komponenten zusammen spielen:

  • Uhrzeit
    Da Lync mit Zertifikaten arbeitet, ist es wichtig, dass alle Clients die "richtige" Uhrzeit haben. Die Stunden und Minuten sind meist weniger relevant, sondern Tag/Monat/Jahr sollten schon stimmen.
  • DNS Einträge
    Die Telefone nutzen DNS, um zum einen den Lync-Server zu finden und anhand des Domainnamens dann auch den Updateserver über "ucUpdates-r2.<sipdomain>" zu finden.
  • DHCP-Einträge
    Wer nicht alles per DNS machen möchte, kann auch per DHCP den LyncPool, den Certificate Service und die WebServices vorgeben
  • Zertifikate
    Alle Telefone nutzen per Default HTTPS. Daher muss zum einen auf dem WebService ein Zertifikat vorhanden sein, welche auch den Namen "ucUpdates-r2.<sipdomain>" enthält und von einer vertrauenswürdigen CA ausgestellt wurde.
  • Firmware-Dateien einspielen und freigeben
    Auf dem Lync Pool müssen die Firmware-Dateien eingestellt und "Approved" werden, damit die Geräte diese auch bekommen können
  • Reset
    An zwei Stellen kann ein Reset "notwendig" werden. Zum einen ist nach erfolgtem Update ein Reset angeraten. Zum anderen lädt ein Gerät nur bei aller ersten Connect zu einem Lync-Server dessen Zertifikatskette als "Trusted" in den lokalen Speicher. Wer also "interne" Zertifikate nutzt, kann kein Gerät einfach in Betrieb nehmen.
  • Zeit
    Das Update kann man nicht "jetzt" durchführen. Immer wenn das Gerät sich am Lync-Server anmeldet, prüft es auf Update und wenn welche anstehen, dann werden diese per HTTPS herunter geladen. Die Installation erfolgt bei einem angemeldeten Gerät aber erst, wenn 5 Minuten keine Aktivität vorliegt. Nicht angemeldete Geräte installieren das Update nach 1 Minute Inaktivität.

Es sind also ein paar Voraussetzungen erforderlich, ehe ein Gerät ein Update per HTTPS vom Device Update-Server bekommt. Eine umfangreiche Beschreibung finden Sie auch in:

Microsoft Lync Server 2010 Client and Device Deployment Guide
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=39d317af-3b6e-43cd-a53c-a0ef561e3355&displaylang=en

Hinweis
Der Lync Device Update Service hat aus meiner Sicht eine große Einschränkung: Man kann pro Devicetypp immer nur eine produktive Firmware für alle und eine "Testfirmware" für ausgewählte Geräte hinterlegen. Sie können für das gleiche Gerät also nie mit drei Firmware-Versionen hantieren.

Uhrzeit per NTP

Hinweis: Bei Lync ist dieser Eintrag nicht mehr erforderlich, sondern wird per DHCP Option 42 übertragen.

Kontrollieren Sie bitte die uhrzeit auf dem Lync Server und stellen Sie per DNS sicher, dass die Telefone auch einen Zeitserver, z.B. die DCs, finden. Das machen die Lync Telefone einmal per Service-Record und wenn der nicht gefunden wird, eben über einen einfachen A-Records mit dem Namen NTP

_ntp._udp.meinedomain.tld 123 0 0 timeserver
ntp,meinedomain.tld timeserver

Dieser Eintrag hilft dem Telefon auch beim Einschalten, die richte uhrzeit zu bekommen. Normalweise starten diese immer mit 12:00 uhr

DNS weist den Weg

Dann bleibt natürlich noch die Frage, wie denn die Telefone das nun hinbekommen. Wie finden Sie den Server und woher holen Sie sich die Daten. An dieser stelle bedient sich Lync der DNS und DHCP-Struktur in ihrem LAN, die sie für die Device-Updates entsprechend erweitern müssen. Zwei DNS-Einträge haben Sie schon durch die Installation von Lync oder OCS gemacht:

Servername.meinedomain.tld             A  ip.ip.ip.ip
_sipinternaltls._tcp.meinedomain.tld SRV  5061 100 0 0 Servername.meinedomain.tld ucUpdates-r2.meinedomain.tld A ip.ip.ip.ip

Interessant für das Device Update ist hingegen der dritte Eintrag "ucUpdates-r2", welcher von den Phone-Clients genutzt wird, um einen Updateserver zu finden.

DHCP liefert die Webservice URL

Aber mit dem DNS-Eintrag alleine ist es nicht getan. Über drei zusätzliche DHCP-Optionen muss ein Administrator dem Client auch noch weitere Daten mitteilen:

Das richtige Zertifikat

Wenn Sie dann glauben, Sie seien am Ziel, dann bremst sie doch noch jemand aus. Auf der Seite updating Devices (http://technet.microsoft.com/en-us/library/gg412864.aspx) steht zwischen den Zeilen, dass das Telefon nicht einfach auf "UCUpdates-R2" oder "UCUpdates-R2.contoso.com" zugreift, sondern das natürlich per HTTPS tut. Und wenn der dahinter stehende Webserver dann im Zertifikat diesen Namen nicht enthält, dann aktualisiert sich das Device natürlich auch nicht. Ein einfacher Lync-Server braucht also ein Zertifikat mit folgenden zusätzlichen Namen:

DNS Name = UCUpdates-R2
DNS Name = UCUpdates-R2.dnsdomain.tld

Achtung:
Leider vergisst der Lync Assistent bei allen Schritten diese zusätzlichen Namen. Achten Sie daher bei der Beantragung darauf, dass diese Namen auch mit "drin" sind.

Und wenn Sie nun eine interne CA verwenden, dann funktioniert das Deviceupdate erst, nachdem sich einmalig ein Benutzer angemeldet und damit das Enterprise Zertifikat ihrer AD-integrierten CA auf das Telefon herunter geladen wurde. Ansonsten benötigen Sie ein Zertifikat einer vertrauenswürdigen Zertifizierungsstelle. Und auch hierbei gibt es nur eine Teilmenge, die auf den Telefonen als vertrauenswürdig vorinstalliert sind. Siehe Certificates für Lync 2010 Phone Edition (http://technet.microsoft.com/en-us/library/gg398270.aspx)

Beim Einsatz einer privaten CA stellt sich natürlich die Frage, wie das "Root-Zertifikat" auf das Telefon kommt. Hier gibt es zwei Optionen:

  • Per USB
    Wer ein CX600, CX700, Aastra 6725ip oder anderes Gerät hat, welches per USB an einen Desktoprechner gekoppelt werden kann, bekommt über den Weg auch die RootCAs der Firma.
  • Per Anmeldung am SIP-Server
    Bei den kleineren CX500 oder Aastra 6721ip werden die Zertifikate als "Root" addiert, die bei der ersten Verbindung zum Lync-Server per SIP (5061/TLS) in der Chain übermittelt werden, als "Vertrauenswürdig" angesehen. Das passiert aber nur einmalig bei der ersten Verbindung.

Wenn Sie also ihr Gerät in in eine andere Firma übertragen oder die RootCA tauschen müssen, dann ist ein "Reset" auf dem Gerät mit anschließender Neueinrichtung erforderlich.

Device Update Store

Gehen wir mal davon aus, dass ihr Lync Telefon sich erfolgreich mit dem Lync Server verbunden hat. Sollte dies noch nicht funktioniert haben, dann lesen Sie bitte auf LyncPhone Funktion weiter.

Über das Lync Control Panel können Sie dann aber die Update verwalten. Zuerst ist die Liste aber leer und zeigt an, wie Sie die Device Updates einspielen:

Updates einspielen

Da ist zuerst der Schritt, die Updates in das System zu bringen. Der Download von Microsoft ist ja noch schnell erledigt, aber der Import geht nur über die Lync-PowerShell.

PS C:\install> Import-CsDeviceUpdate -FileName .\ucUpdates.cab -Identity "Service:WebServer:nawocs.netatwork.de"

Wer gleich mehrere Lync-Server hat, kann über folgende Kopplung alle Lync Webservices bedienen.

PS C:\> Get-CsService -WebServer | ForEach-Object {Import-CsDeviceUpdate -Identity $_.Identity -FileName C:\RTMDeviceTanjay\UCUpdates.cab}
PS C:\> Get-CsService -WebServer | ForEach-Object {Import-CsDeviceUpdate -Identity $_.Identity -FileName C:\RTMDevicePolycom\UCUpdates.cab} 
PS C:\> Get-CsService -WebServer | ForEach-Object {Import-CsDeviceUpdate -Identity $_.Identity -FileName C:\RTMDeviceAastra\UCUpdates.cab}

Wer es noch kompletter haben will, kann die CAB-Dateien der verschiedenen Hersteller, z.B. Snom und Polycom, in ein Verzeichnis legen und dann folgendes Skript starten

$cablist = get-childitem *.cab
Get-CsService -WebServer `
   | % {
      write-host "Import to " $_.Identity 
      foreach ($cabfile in $cablist) {
         Write-host "Importing " $cabfile.fullname
         Import-CsDeviceUpdate -Identity $_.Identity -FileName $cabfile.fullname
   } 
}
write-host  "Done - don't forget to approve the firmware"

Mit dem Skript New-CsFirmware.ps1 können Sie mehrere Updates auf einmal auf allen Server einspielen

New-CsFirmware.ps1 – upload multiple Lync Phone Edition firmware Updates to a single or multiple pools
http://www.ehloworld.com/1217

Danach erscheinen die Treiber auch im Lync Control-Panel:

Updates Approval

Idealerweise weisen Sie ein Update erst mal nur einem Gerät zum Test zu, ehe Sie es "für alle Freigeben". Das ist ein bisschen wie Windows Server patchen und Updaten. Auch wenn Microsoft und andere sehr viel testen, so ist jede Umgebung auf ihre Art individuell. Die Freigabe erfolgt einfach über die Konsole:

Über den Punkt "Test Device" daneben können Sie natürlich auch einzelne Geräte losgelöst von der Allgemeinheit mit der aktuellsten Version vorab versorgen. Um alle ausstehenden Updates freizugeben, können Sie folgende Powershell nutzen:

Get-CsDeviceUpdateRule  `
   | Where-Object {$_.Pendingversion -ne $null} `
   | Approve-CsDeviceUpdateRule

Update am Telefon

Nun kommen wir zu dem wichtigsten Teil: Das Endgerät wird mit einer alten Firmware am LAN eingeschaltet und bekommt natürlich erst mal per DHCP eine IP-Adresse. Auf der Oberfläche des Telefons sehen Sie aber erst mal gar nicht, selbst wenn alles korrekt installiert ist. Dies liegt daran, dass das Telefon zwar sehr schnell erkennt, wenn es ein Update einspielen muss, aber erst auf "Inaktivität" wartet.

  • 1 Minute
    Ist an dem Telefon niemand angemeldet, dann wird das Update nach Ablauf von ca. 1 Minute gestartet
  • 5 Minuten
    Wenn das Telefon aber schon an Lync angemeldet ist, dann wartet es 5 Minuten Inaktivität ab, ehe es das Update installiert

Über den Systemstatus können Sie den letzten Update-Status und Zeitpunkt auslesen: Hier am Beispiel eines Aastra 6725ip und eines Tanjay

Geduld kann schon nervend sein, aber sie können in der Zwischenzeit ja schon mal das IISLog kontrollieren. Dort können Sie nämlich sehen, welches Telefon welches Update vielleicht schon heruntergeladen hat. (Das Log ist um die IP-Adressen und Datum/Zeit-Informationen gekürzt)

POST /locationinformation/liservice.svc/WebTicket_Bearer - 443 - 192.168.102.6 OC/4.0.7577.0+(Microsoft+Lync+2010) 200 0 0 205
POST /RequestHandler/ucdevice.upx - 443 - 10.1.1.35 Microsoft+UCPhone+Device 200 0 0 1475
GET /RequestHandler/Files/UCPhone/AASTRA/6725ip/A/ENU/4.0.7577.107/CPE/CPE.nbt - 80 - Microsoft+UCPhone+Device+(lcs_se_w14_main:824457:2010/10/21:23:13:00) 200 0 0 81460
GET /RequestHandler/Files/UCPhone/AASTRA/6725ip/A/ENU/4.0.7577.107/CPE/CPE.cat - 80 - Microsoft+UCPhone+Device+(lcs_se_w14_main:824457:2010/10/21:23:13:00) 200 0 0 20
GET /RequestHandler/Files/UCPhone/AASTRA/6725ip/A/ENU/4.0.7577.107/CPE/CPE.cat - 80 - Microsoft+UCPhone+Device+(lcs_se_w14_main:824457:2010/10/21:23:13:00) 200 0 0 5
GET /RequestHandler/Files/UCPhone/LG-Nortel/IP8540/A/ENU/4.0.7577.107/CPE/CPE.nbt - 80 - 10.1.1.35 Microsoft+UCPhone+Device 200 0 995 37640
POST /RequestHandler/ucdevice.upx - 443 - 10.1.1.35 Microsoft+UCPhone+Device 200 0 0 185
POST /RequestHandler/ucdevice.upx - 443 - UCPhone+Log+Upload+1.0 200 0 0 205
POST /RequestHandler/ucdevice.upx - 443 - UCPhone+Log+Upload+1.0 200 0 0 2310

Die erste Zeile zeigt die Anfrage nach der Location Information über SSL (443) die dann von einer allgemeinen Anfrage per SSL zu "ucdevice.upx" gefolgt wird. In der nicht sichtbaren Antwort bekommt das Telefon die Informationen über Updates, die es dann aber ohne SSL (Port 80) vom Webserver herunterlädt. Das Aastra macht das mit drei Zugriffen und da Tanjay kommt mit einem Zugriff aus.

Wer auf dem Telefon noch ein Logging aktiviert und die Logs auch hoch lädt., sieht diesen "UCPhone+Log+Upload"-Eintrag und findet im LyncShare im Verzeichnis des WebServices unter \DeviceUpdateLogs\Client\CELog die Protokolldateien des Geräts-

 

Leider sind diese Daten binäre und können nur mit dem Programm ReadLog aus dem Windows CE Platform Builder Paket in eine Textdatei verwandelt werden. Leider ist dieses Paket nicht kostenfrei und das Programm gibt es nicht einzeln.

C:\READLOG.EXE -v UCPhone_6725ip.CLG1 UCPhone_6725ip.TXT

Aber auch die Serverlogs sind durchaus interessant.

Diese Dateien protokollieren jeden Tag die Update Anfragen und den Status. Hier ein Auszug (Wieder gekürzt um IO-Adresse, SIP-Adresse, DateTime und überlange Zeilen umgebrochen.

Logging DateTime,User Name,User Host Address,Device Type,Request DateTime,Mac Address,Serial Number,Vendor,Model,Revision,Locale,Requested<FileName;Version;TimeStamp>[# Seperated für Multiple],
    Response<Internal FileName;External FileName;Version;TimeStamp>[# Seperated für Multiple]
04.01.2011 01:55:12,user1@msxfaq.de,192.168.102.10,UCPhone,01.04.2011 01:55:10,"00085D281EA9","0L1045000B","Aastra","6725ip","A","ENU",cpe.nbt;4.0.7577.107;11.01.2011 15:32:36,
04.01.2011 13:33:25,,10.1.1.35,UCPhone,01.04.2011 13:30:18,"001B9E4B5B10","1108015382","LG-Nortel","IP8540","A","DEU",cpe.nbt;3.5.6907.30;11.03.2009 14:05:12,
04.01.2011 13:58:26,User2@msxfaq.de,10.1.1.35,UCPhone,01.04.2011 13:58:23,"001B9E4B5B10","1108015382","LG-Nortel","IP8540","A","ENU",cpe.nbt;3.5.6907.30;11.03.2009 14:05:12,
    http://nawlync001.netatwork.de/RequestHandler/Files/UCPhone/LG-Nortel/IP8540/A/ENU/4.0.7577.107/CPE/CPE.nbt;https://www.owa.netatwork.de/RequestHandlerExt/Files/UCPhone/LG-Nortel/IP8540/A/ENU/4.0.7577.107/CPE/CPE.nbt;4.0.7577.107;11.01.2011 22:23:02
04.01.2011 13:59:40,User2@msxfaq.de,10.1.1.35,UCPhone,01.04.2011 13:59:39,"001B9E4B5B10","1108015382","LG-Nortel","IP8540","A","DEU",cpe.nbt;3.5.6907.30;11.03.2009 14:05:12,
04.01.2011 15:30:40,User2@msxfaq.de,10.1.1.22,UCPhone,01.04.2011 06:30:32,"00085D281EA3","0L10450008","Aastra","6725ip","A","ENU",cpe.nbt;4.0.7576.0;02.03.2011 06:30:32,
    http://nawlync001.netatwork.de/RequestHandler/Files/UCPhone/AASTRA/6725ip/A/ENU/4.0.7577.107/CPE/CPE.nbt;https://www.owa.netatwork.de/RequestHandlerExt/Files/UCPhone/AASTRA/6725ip/A/ENU/4.0.7577.107/CPE/CPE.nbt;4.0.7577.107;11.01.2011 15:32:36
04.01.2011 15:42:57,User2@msxfaq.de,10.1.1.22,UCPhone,01.04.2011 15:42:47,"00085D281EA3","0L10450008","Aastra","6725ip","A","ENU",cpe.nbt;4.0.7577.107;11.01.2011 15:32:36,
04.01.2011 16:40:56,User2@msxfaq.de,10.1.1.35,UCPhone,01.04.2011 16:40:55,"001B9E4B5B10","1108015382","LG-Nortel","IP8540","A","DEU",cpe.nbt;3.5.6907.30;11.03.2009 14:05:12,

Auch hier ist gut zu sehen, das das LG nach ENU und DE fragen, aber da ich ein deutsches Telefon habe, die deutsche Firmware wohl noch nicht auf meinem Update-Server vorliegt. Anders das Aastra, welches problemlos die englische (mehrsprachige) Firmware lädt. Nebenbei können Sie aus der Auswertung dieses Logs natürlich auch ein Inventory all ihrer Lync-Telefone erstellen. Zumindest solange die Device Updatedienste laufen.

Fallback

Nicht immer bringt ein Firmware das erhoffte Ergebnis. Ein Downgrade ist auf den ersten Blick so einfach nicht möglich. Aber es gibt zwei Dinge, die sie wissen sollten:

  • Firmware-Reset
    Durch ein Reset der Firmware (LyncPhone Funktion) über die entsprechende Tastenfunktion kann das Telefon wieder in den Auslieferungszustand versetzt werden
  • 5-Reboot-Regel
    Vielen nicht bekannt ist, dass die Telefone intern einen Counter haben, welcher von dem Betriebssystem des Telefons nach dem Start und einer erfolgreichen Anmeldung wieder zurückgestellt werden muss. Passiert dies nicht, weil z.B. die Firmware nicht korrekt geflashed wurde oder es die falsche Firmware war oder ein anderer Grund verhindert, dass das Telefon korrekt startet, dann wird der Counter nicht mehr zurück gesetzt. Nach dem fünften fehlerhaften Start stellt das Telefon den vorherigen Stand, also die vorherige Firmware wieder her

Insofern kann gar nicht so viel kaputt gehen.

Get-Arieslog

Da sowohl die Polycom also auch die Aastra-Telefone bei Microsoft als "Aries"-Telefone bezeichnet werden, habe ich das PowerShell-Skript zum Auswerten der Device UpdateLogs eben "Get-Arieslog" genannt. Zum Start müssen Sie natürlich eine Lync-Managementshell öffnen, wenn Sie keine Pfad manuell angeben.

Das Skript akzeptiert optional einen Poolnamen oder Pfadnamen und die Möglichkeit nur jüngere Dateien auszuwerten

param (
	[string]$poolfqdn="",   	# optional name of the pool
	[string]$path = "" ,  		# optional path to the logfiles
	[int]$maxdays =99999, 		# optional maximum number of days to parse
	[switch]$verbose = $false,
	[switch]$debug = $false
	)

Wird kein Pool oder Pfad angegeben, dann sucht sich das Skript alleine mit Lync PowerShell Commandlets die Pools und die erforderlichen Shares, auf die Sie natürlich weiterhin Zugriff haben müssen. Die Ausgabe wird natürlich wieder über die Pipeline ausgegeben und kann anderweitig weiter verarbeitet werden. Hier ein Beispiel.

PS C:\temp> .\get-Arieslog.1.0.ps1 | ft User*,vendor,model,serial*,fwv*
Processing  WebServer:nawlync001.netatwork.de User Name User Host Add Vendor       Model        Serial Numbe fwversion
              ress                                    r
---------     ------------- ------       -----        ------------ ---------
frank.cari... 192.168.10... Aastra       6725ip       0L10450008   4.0.7577.250
frank.cari... 192.168.10... LG-Nortel    IP8540       1108015382   4.0.7577.250 uwe.ulbric... 192.168.10... Aastra       6725ip       0L1045000B   4.0.7577.107

Das Skript zum Download:

get-arieslog.1.0.ps1
Bitte nach dem Download die Erweiterung auf "PS1" ändern und in einer Lync-PowerShell aufrufen.

Firmware Reset

Beim Update meines Aastra 6525ip von der Firmware 4.0.7576.0 auf 4.0.7577.107 konnte sich das Telefon nicht mehr anmelden. Ein Hard-Reset (* + # beim Einschalten gedrückt halten) hat das Problem gelöst.

Siehe auch LyncPhone Funktion. Das Tanjay hat nach dem Firmware-Update sogar selbst einen Factory Reset gemacht.

Debugging

Wenn es nicht sofort geht, dann erst mal nicht verzweifeln. Da Sie nun wissen, wie das Lync Phone arbeitet, sollten Sie noch einmal alle Schritte prüfen.

Überprüfung Status

NSLOOKUP _ntp._udp.domain.tld
NSLOOKUP ntp..domain.tld
Kann der Name aufgelöst werden (und ist dort auch ein NTP-Server aktiv ?)

 

NSLOOKUP ucUpdates-r2.domain.tld
Können Sie diesen Namen auflösen

 

Anrufen von https://ucUpdates-r2.domain.tld
Surfen Sie selbst einmal auf diese URL mit ihrem Browser. Es sollte keine Zertifikatsfehlermeldung kommen. Schalten Sie dazu den Proxy im Browser ab, da auch ein Telefon keinen Proxy verwendet.

 

Anmeldung am Telefon
Wenn Sie sich am Telefon anmelden können, dann funktioniert die SIP-Verbindung zum Lync Server. Wenn das Zertifikat auf dem Lync-Server von der gleichen CA ist, wie das Zertifikat auf dem Webserver, dann sind die Stammzertifikat schon aktualisiert.

 

DHCPUTIL -emulateclient
Nutzen Sie das Programm auf einem PC im gleichen Subnetz wie das Telefon und schauen Sie, ob die vom DHCP-Server zurückgelieferten URLs korrekt sind.

 

IISLOG
Da die meiste Kommunikation bezüglich "Updates" per HTTPS gegen den Pool erfolgt, sollten Sie einen Blick in das IISLog werfen. Hier müssen die Anfragen des Client erscheinen, zumindest wenn er über den SSL-Handshake hinaus kommt.

 

Snooper
Wenn sich das Telefon schon nicht am Lync-Server anmelden kann, dann ist eine Kontrolle mit dem Snooper eine Möglichkeit, mehr zu erfahren. Snooper erkennt z.B. auch, wenn die Verbindung gestartet aber dann vorzeitig abgebrochen wird, was immer ein Hinweis auf nicht vertrauenswürdige Zertifikate ist.

 

NETMON
Wenn das Telefon allerdings nirgends erscheint, dann sollten Sie den Netzwerkverkehr des Telefons mitschneiden, z.B. indem Sie es an einen Hub mit einem zweiten PC und Netmon hängen oder auf dem Switch den Port spiegeln. Sie müssen dann die DHCP-Anfragen und Antworten sehen, die DNS-Anfragen auf ucupdate-r2.domain.tld und die nachfolgenden Versucht per TCP/443 auf den Webserver zu kommen.

 

Device Logfiles
Wenn die grundlegende Verbindung schon i.O. ist und das Update dennoch scheitert, dann kann wieder der Blick in das IISLog oder Snooper helfen. Sie können aber auch ein Logfile des Geräts auf den Lync-Server hochladen lasen und einsehen
Log File Types and Locations http://technet.microsoft.com/en-us/library/gg398250.aspx
Die Dateien liegen dann auf %ProgramFiles%\Lync Server 2010\Web Components\DeviceUpdateFiles\Logs
Einige ältere Geräte lassen sogar einen Zugriff per FTP zu.

 

Geduld
Sie wissen ja, dass das Telefon das Update erst nach 5 Minuten "Inaktivität" durchführt. Sie sehen aber den erfolgten Download wieder im IISLog und müssen einfach etwas warten

 

Device Connection Process
Kontrollieren Sie noch mal alle Schritte auf http://technet.microsoft.com/en-us/library/gg398261.aspx

 

Mit diesen Schritten sollten Sie in der Lage sein, die Ursache für nicht funktionierende Updates gefunden zu haben.

Weitere Links