Windows computers and Adak time & timezones

A few weeks ago, I ran into an issue where computers in Adak were completely wrong after Daylight Savings. Adak is 1 hour behind the rest of Alaska (per Wikipedia, and the client), but was now 2 hours behind.

From Wikipedia’s entry for Adak:

Time zone Hawaii-Aleutian (HST) (UTC-10)
• Summer (DST) HDT (UTC-9)

After a bit of research, the computers had been configured with the Hawaiian timezone before being shipped out, which wouldn’t be a problem except that Hawaii doesn’t use Daylight Savings Time (DST). This means that outside of DST, Adak is set to the correct time, but during DST, Adak is still using the Hawaiian timezone without DST.

From Microsoft’s support page:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Alaskan Standard Time]
"TZI"=hex:1c,02,00,00,00,00,00,00,c4,ff,ff,ff,00,00,0b,00,00,00,01,00,02,00,00,00,00,00,00,00,00,00,03,00,00,00,02,00,02,00,00,00,00,00,00,00
"Display"="(UTC-09:00) Alaska"
"Dlt"="Alaskan Daylight Time"
"Std"="Alaskan Standard Time"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Alaskan Standard Time\Dynamic DST]
"2006"=hex:1c,02,00,00,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,00,00,00,00,00,00,00,04,00,00,00,01,00,02,00,00,00,00,00,00,00
"2007"=hex:1c,02,00,00,00,00,00,00,c4,ff,ff,ff,00,00,0b,00,00,00,01,00,02,00,00,00,00,00,00,00,00,00,03,00,00,00,02,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007d6
"LastEntry"=dword:000007d7

And

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Hawaiian Standard Time]
“TZI”=hex:58,02,00,00,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
“Display”=”(UTC-10:00) Hawaii”
“Dlt”=”Hawaiian Daylight Time”
“Std”=”Hawaiian Standard Time”

Note on the support page that there is no Hawaiian Standard Time with DST.

While I might have been able to reverse or discover the format of the hex values used to set the DST start/end and had each computer create an “Adak” timezone, I opted to create a GPO that set two scheduled tasks. The GPO included one task to run the morning of DST start to set the timezone to “Alaskan Standard Time_dstoff” , and one task to run the morning of DST end to set the timezone back to “Hawaiian Standard Time”. I also included an extra trigger on the initial task in the future an evening so the GPO would have time to propagate out to all the computers at the site, and then trigger that evening to update them without waiting until the end of DST.

Adak Timezone GPO - tzutil.exe /s "Alaskan Standard Time_dstoff"
Adak Timezone GPO – tzutil.exe /s “Alaskan Standard Time_dstoff”

 

Adak Timezone GPO - tzutil.exe /s "Hawaiian Standard Time"
Adak Timezone GPO – tzutil.exe /s “Hawaiian Standard Time”

Leave a comment

Your email address will not be published. Required fields are marked *