Update to Push Diagnostics, a utility to troubleshoot Apple Push Notification Service (APNS)

tperfitt
New Contributor III

I just released an update to Push Diagnostics, a utility that allows people to test if push notifications servers are reachable on a network. One of the tasks when deploying MDM is making sure that push notifications works. Push Diagnostics makes testing APNS servers easy. It is in the Mac App Store and is $4.99, and is a great way to "get the lay of the land" on a new or existing network when deploying MDM.

More info here: http://twocanoes.com/push-diagnostics?utm_campaign=JN13

11 REPLIES 11

jimlee
New Contributor III

For testing APNS can't you just run the two commands below or is there something else involved?

telnet gateway.push.apple.com 2195
telnet feedback.push.apple.com 2196

bentoms
Honored Contributor III
Honored Contributor III

Nope a little more is needed. http://support.apple.com/kb/TS4264

stevehahn
Contributor

@tperfitt Thanks!

I'm wondering if there is a Windows equivalent; my JSS is on Windows Server 2012 R2 and I want to confirm that it is able to communicate properly with APNS through our DMZ. I'm getting somewhat frequent APNS feedback errors when deploying configuration profiles and trying to narrow down the cause.

jwojda
Valued Contributor II

@tperfitt - is the app still functional? when I test, it says failed on the test push from the twocannoes servers.

Starting Tests..... APNs tests beginning #info #network Feedbackhost (gateway.sandbox.push.apple.com): Resolving DNS Name Pushhost (gateway.sandbox.push.apple.com): Resolving DNS Name Altcourierhost (5-courier.sandbox.push.apple.com): Resolving DNS Name Courierhost (5-courier.sandbox.push.apple.com): Resolving DNS Name Altcourierhost (5-courier.sandbox.push.apple.com): 17.110.226.165 Pushhost (gateway.sandbox.push.apple.com): 17.172.232.45 Feedbackhost (gateway.sandbox.push.apple.com): 17.172.232.45 Courierhost (5-courier.sandbox.push.apple.com): 17.110.226.165 Altcourierhost (5-courier.sandbox.push.apple.com): Checking for proxy Pushhost (gateway.sandbox.push.apple.com): Checking for proxy Feedbackhost (gateway.sandbox.push.apple.com): Checking for proxy Courierhost (5-courier.sandbox.push.apple.com): Checking for proxy Altcourierhost (5-courier.sandbox.push.apple.com): No proxy found. Attempting to connect Pushhost (gateway.sandbox.push.apple.com): No proxy found. Attempting to connect Feedbackhost (gateway.sandbox.push.apple.com): No proxy found. Attempting to connect Courierhost (5-courier.sandbox.push.apple.com): No proxy found. Attempting to connect Registered for APNs with token E...BB Connected to Pushhost (gateway.sandbox.push.apple.com) at IP address 17.172.232.45 on port 2195 Connected to Feedbackhost (gateway.sandbox.push.apple.com) at IP address 17.172.232.45 on port 2196 Connected to Altcourierhost (5-courier.sandbox.push.apple.com) at IP address 17.110.226.165 on port 443 Connected to Courierhost (5-courier.sandbox.push.apple.com) at IP address 17.110.226.165 on port 5223 Trying to sending ourselves a push notification Sent Push....Waiting for a response No push received... APNs tests completed with 4 passed and 0 failed. #info #network

oh, and the completion message is in error, it shows failed, but your results say all passed.
Version 2.3 (1059)

tperfitt
New Contributor III

This may have been a casualty of the migration from Urban Airship to Amazon for APNS. Thanks for letting me know. I'll look into it.

tim

tperfitt
New Contributor III

I spoke too soon. I just tried for me and it worked fine for both the test and production servers. Send me the push token and I can investigate further. Send it to support@twocanoes.com.

tim

bradtchapman
Valued Contributor

This is good stuff. Thanks for sharing.

anthonytji
New Contributor III

im having issues with the push diagnostics page as well, any help? 5315b84081964b0a8f33fad9a5179eb6
6452913c50554f4da3dcbe20cc4a457e

abdo_iracheta
New Contributor III

Same issue here, someone can help me with it?, this only happens on just 1 DEP Mac.

973c05aa576f4360bcf7297d881f1f92
d712b66a0d074db6807206967e3847f3

NightFlight
New Contributor III

I don't see any indication that with the latest version (3.2) it does any test push. Just DNS and connectivity checks. That's great, but it assumes that the infra on the Apple side is working. This is not sufficient when trying to crack into an actual problem.

I've emailed twocanoes.

Starting Up...
APNs tests beginning #info #network
Appldnld.Apple.Com (appldnld.apple.com): Resolving DNS Name
Identity.Apple.Com (identity.apple.com): Resolving DNS Name
Ocsp.Digicert.Com (ocsp.digicert.com): Resolving DNS Name
Captive.Apple.Com (captive.apple.com): Resolving DNS Name
Gdmf.Apple.Com (gdmf.apple.com): Resolving DNS Name
Crl.Apple.Com (crl.apple.com): Resolving DNS Name
Xp.Apple.Com (xp.apple.com): Resolving DNS Name
Iprofiles.Apple.Com (iprofiles.apple.com): Resolving DNS Name
Static.Ips.Apple.Com (static.ips.apple.com): Resolving DNS Name
Ns.Itunes.Apple.Com (ns.itunes.apple.com): Resolving DNS Name
Swcdn.Apple.Com (swcdn.apple.com): Resolving DNS Name
Tbsc.Apple.Com (tbsc.apple.com): Resolving DNS Name
Gnf-Mdn.Apple.Com (gnf-mdn.apple.com): Resolving DNS Name
5-Courier.Push.Apple.Com (5-courier.push.apple.com): Resolving DNS Name
Mdmenrollment.Apple.Com (mdmenrollment.apple.com): Resolving DNS Name
Swdownload.Apple.Com (swdownload.apple.com): Resolving DNS Name
5-Courier.Sandbox.Push.Apple.Com (5-courier.sandbox.push.apple.com): Resolving DNS Name
Swdist.Apple.Com (swdist.apple.com): Resolving DNS Name
Gs.Apple.Com (gs.apple.com): Resolving DNS Name
Gateway.Push.Apple.Com (gateway.push.apple.com): Resolving DNS Name
Crl.Entrust.Net (crl.entrust.net): Resolving DNS Name
Gg.Apple.Com (gg.apple.com): Resolving DNS Name
Gs.Apple.Com (gs.apple.com): Resolving DNS Name
Gateway.Sandbox.Push.Apple.Com (gateway.sandbox.push.apple.com): Resolving DNS Name
Mesu.Apple.Com (mesu.apple.com): Resolving DNS Name
Oscdn.Apple.Com (oscdn.apple.com): Resolving DNS Name
Deviceservices-External.Apple.Com (deviceservices-external.apple.com): Resolving DNS Name
Swdownload.Apple.Com (swdownload.apple.com): Resolving DNS Name
5-Courier.Sandbox.Push.Apple.Com (5-courier.sandbox.push.apple.com): Resolving DNS Name
5-Courier.Push.Apple.Com (5-courier.push.apple.com): Resolving DNS Name
Captive.Apple.Com (captive.apple.com): Resolving DNS Name
Gg.Apple.Com (gg.apple.com): Resolving DNS Name
Ocsp.Apple.Com (ocsp.apple.com): Resolving DNS Name
Itunes.Apple.Com (itunes.apple.com): Resolving DNS Name
A3.Mzstatic.Com (a3.mzstatic.com): Resolving DNS Name
Skl.Apple.Com (skl.apple.com): Resolving DNS Name
Osrecovery.Apple.Com (osrecovery.apple.com): Resolving DNS Name
Updates.Cdn-Apple.Com (updates.cdn-apple.com): Resolving DNS Name
Ppq.Apple.Com (ppq.apple.com): Resolving DNS Name
Updates-Http.Cdn-Apple.Com (updates-http.cdn-apple.com): Resolving DNS Name
Apps.Apple.Com (apps.apple.com): Resolving DNS Name
Itunes.Apple.Com (itunes.apple.com): Resolving DNS Name
Deviceenrollment.Apple.Com (deviceenrollment.apple.com): Resolving DNS Name
Ocsp.Verisign.Net (ocsp.verisign.net): Resolving DNS Name
Lcdn-Registration.Apple.Com (lcdn-registration.apple.com): Resolving DNS Name
Gs.Apple.Com (gs.apple.com): Resolving DNS Name
Crl4.Digicert.Com (crl4.digicert.com): Resolving DNS Name
Swscan.Apple.Com (swscan.apple.com): Resolving DNS Name
Gateway.Sandbox.Push.Apple.Com (gateway.sandbox.push.apple.com): Resolving DNS Name
Itunes.Apple.Com (itunes.apple.com): Resolving DNS Name
Crl3.Digicert.Com (crl3.digicert.com): Resolving DNS Name
Ig.Apple.Com (ig.apple.com): Resolving DNS Name
Humb.Apple.Com (humb.apple.com): Resolving DNS Name
Osrecovery.Apple.Com (osrecovery.apple.com): Resolving DNS Name
Swpost.Apple.Com (swpost.apple.com): Resolving DNS Name
Vpp.Itunes.Apple.Com (vpp.itunes.apple.com): Resolving DNS Name
Gateway.Push.Apple.Com (gateway.push.apple.com): Resolving DNS Name
Mesu.Apple.Com (mesu.apple.com): Resolving DNS Name
Oscdn.Apple.Com (oscdn.apple.com): Resolving DNS Name
Itunes.Apple.Com (itunes.apple.com): Resolving DNS Name
Ocsp.Entrust.Net (ocsp.entrust.net): Resolving DNS Name
Static.Ips.Apple.Com (static.ips.apple.com): Resolving DNS Name
Gnf-Mr.Apple.Com (gnf-mr.apple.com): Resolving DNS Name
Xp.Apple.Com (xp.apple.com): Checking for proxy
Xp.Apple.Com (xp.apple.com): No proxy found.  Attempting to connect
Crl3.Digicert.Com (crl3.digicert.com): Checking for proxy
Crl4.Digicert.Com (crl4.digicert.com): Checking for proxy
Crl3.Digicert.Com (crl3.digicert.com): No proxy found.  Attempting to connect
Crl4.Digicert.Com (crl4.digicert.com): No proxy found.  Attempting to connect
Ocsp.Digicert.Com (ocsp.digicert.com): Checking for proxy
Ocsp.Digicert.Com (ocsp.digicert.com): No proxy found.  Attempting to connect
Itunes.Apple.Com (itunes.apple.com): Checking for proxy
Itunes.Apple.Com (itunes.apple.com): Checking for proxy
Itunes.Apple.Com (itunes.apple.com): No proxy found.  Attempting to connect
Itunes.Apple.Com (itunes.apple.com): No proxy found.  Attempting to connect
Itunes.Apple.Com (itunes.apple.com): Checking for proxy
Itunes.Apple.Com (itunes.apple.com): No proxy found.  Attempting to connect
Itunes.Apple.Com (itunes.apple.com): Checking for proxy
Itunes.Apple.Com (itunes.apple.com): No proxy found.  Attempting to connect
Crl.Entrust.Net (crl.entrust.net): Checking for proxy
Crl.Entrust.Net (crl.entrust.net): No proxy found.  Attempting to connect
Apps.Apple.Com (apps.apple.com): Checking for proxy
Apps.Apple.Com (apps.apple.com): No proxy found.  Attempting to connect
Crl.Apple.Com (crl.apple.com): Checking for proxy
Gateway.Push.Apple.Com (gateway.push.apple.com): Checking for proxy
Crl.Apple.Com (crl.apple.com): No proxy found.  Attempting to connect
Gateway.Push.Apple.Com (gateway.push.apple.com): No proxy found.  Attempting to connect
Updates-Http.Cdn-Apple.Com (updates-http.cdn-apple.com): Checking for proxy
Updates-Http.Cdn-Apple.Com (updates-http.cdn-apple.com): No proxy found.  Attempting to connect
5-Courier.Push.Apple.Com (5-courier.push.apple.com): Checking for proxy
Swcdn.Apple.Com (swcdn.apple.com): Checking for proxy
5-Courier.Push.Apple.Com (5-courier.push.apple.com): No proxy found.  Attempting to connect
Swcdn.Apple.Com (swcdn.apple.com): No proxy found.  Attempting to connect
Mesu.Apple.Com (mesu.apple.com): Checking for proxy
Mesu.Apple.Com (mesu.apple.com): Checking for proxy
Ocsp.Apple.Com (ocsp.apple.com): Checking for proxy
Mesu.Apple.Com (mesu.apple.com): No proxy found.  Attempting to connect
A3.Mzstatic.Com (a3.mzstatic.com): Checking for proxy
Mesu.Apple.Com (mesu.apple.com): No proxy found.  Attempting to connect
Ocsp.Apple.Com (ocsp.apple.com): No proxy found.  Attempting to connect
A3.Mzstatic.Com (a3.mzstatic.com): No proxy found.  Attempting to connect
Gateway.Push.Apple.Com (gateway.push.apple.com): Checking for proxy
Gateway.Push.Apple.Com (gateway.push.apple.com): No proxy found.  Attempting to connect
Tbsc.Apple.Com (tbsc.apple.com): Checking for proxy
Tbsc.Apple.Com (tbsc.apple.com): No proxy found.  Attempting to connect
5-Courier.Push.Apple.Com (5-courier.push.apple.com): Checking for proxy
Ocsp.Entrust.Net (ocsp.entrust.net): Checking for proxy
5-Courier.Push.Apple.Com (5-courier.push.apple.com): No proxy found.  Attempting to connect
Ocsp.Entrust.Net (ocsp.entrust.net): No proxy found.  Attempting to connect
Gdmf.Apple.Com (gdmf.apple.com): Checking for proxy
Vpp.Itunes.Apple.Com (vpp.itunes.apple.com): Checking for proxy
Gdmf.Apple.Com (gdmf.apple.com): No proxy found.  Attempting to connect
Vpp.Itunes.Apple.Com (vpp.itunes.apple.com): No proxy found.  Attempting to connect
5-Courier.Sandbox.Push.Apple.Com (5-courier.sandbox.push.apple.com): Checking for proxy
Gnf-Mdn.Apple.Com (gnf-mdn.apple.com): Checking for proxy
Updates.Cdn-Apple.Com (updates.cdn-apple.com): Checking for proxy
5-Courier.Sandbox.Push.Apple.Com (5-courier.sandbox.push.apple.com): Checking for proxy
Captive.Apple.Com (captive.apple.com): Checking for proxy
5-Courier.Sandbox.Push.Apple.Com (5-courier.sandbox.push.apple.com): No proxy found.  Attempting to connect
Gnf-Mdn.Apple.Com (gnf-mdn.apple.com): No proxy found.  Attempting to connect
Updates.Cdn-Apple.Com (updates.cdn-apple.com): No proxy found.  Attempting to connect
5-Courier.Sandbox.Push.Apple.Com (5-courier.sandbox.push.apple.com): No proxy found.  Attempting to connect
Captive.Apple.Com (captive.apple.com): No proxy found.  Attempting to connect
Swdist.Apple.Com (swdist.apple.com): Checking for proxy
Identity.Apple.Com (identity.apple.com): Checking for proxy
Gg.Apple.Com (gg.apple.com): Checking for proxy
Gg.Apple.Com (gg.apple.com): Checking for proxy
Captive.Apple.Com (captive.apple.com): Checking for proxy
Osrecovery.Apple.Com (osrecovery.apple.com): Checking for proxy
Swdist.Apple.Com (swdist.apple.com): No proxy found.  Attempting to connect
Identity.Apple.Com (identity.apple.com): No proxy found.  Attempting to connect
Gg.Apple.Com (gg.apple.com): No proxy found.  Attempting to connect
Osrecovery.Apple.Com (osrecovery.apple.com): Checking for proxy
Gg.Apple.Com (gg.apple.com): No proxy found.  Attempting to connect
Captive.Apple.Com (captive.apple.com): No proxy found.  Attempting to connect
Osrecovery.Apple.Com (osrecovery.apple.com): No proxy found.  Attempting to connect
Osrecovery.Apple.Com (osrecovery.apple.com): No proxy found.  Attempting to connect
Swdownload.Apple.Com (swdownload.apple.com): Checking for proxy
Swdownload.Apple.Com (swdownload.apple.com): No proxy found.  Attempting to connect
Gs.Apple.Com (gs.apple.com): Checking for proxy
Gs.Apple.Com (gs.apple.com): Checking for proxy
Gs.Apple.Com (gs.apple.com): No proxy found.  Attempting to connect
Gs.Apple.Com (gs.apple.com): No proxy found.  Attempting to connect
Gs.Apple.Com (gs.apple.com): Checking for proxy
Swdownload.Apple.Com (swdownload.apple.com): Checking for proxy
Gs.Apple.Com (gs.apple.com): No proxy found.  Attempting to connect
Swdownload.Apple.Com (swdownload.apple.com): No proxy found.  Attempting to connect
Swscan.Apple.Com (swscan.apple.com): Checking for proxy
Skl.Apple.Com (skl.apple.com): Checking for proxy
Swscan.Apple.Com (swscan.apple.com): No proxy found.  Attempting to connect
Skl.Apple.Com (skl.apple.com): No proxy found.  Attempting to connect
Iprofiles.Apple.Com (iprofiles.apple.com): Checking for proxy
Gnf-Mr.Apple.Com (gnf-mr.apple.com): Checking for proxy
Ig.Apple.Com (ig.apple.com): Checking for proxy
Ns.Itunes.Apple.Com (ns.itunes.apple.com): Checking for proxy
Deviceenrollment.Apple.Com (deviceenrollment.apple.com): Checking for proxy
Mdmenrollment.Apple.Com (mdmenrollment.apple.com): Checking for proxy
Deviceservices-External.Apple.Com (deviceservices-external.apple.com): Checking for proxy
Humb.Apple.Com (humb.apple.com): Checking for proxy
Swpost.Apple.Com (swpost.apple.com): Checking for proxy
Iprofiles.Apple.Com (iprofiles.apple.com): No proxy found.  Attempting to connect
Gnf-Mr.Apple.Com (gnf-mr.apple.com): No proxy found.  Attempting to connect
Ig.Apple.Com (ig.apple.com): No proxy found.  Attempting to connect
Ns.Itunes.Apple.Com (ns.itunes.apple.com): No proxy found.  Attempting to connect
Deviceenrollment.Apple.Com (deviceenrollment.apple.com): No proxy found.  Attempting to connect
Mdmenrollment.Apple.Com (mdmenrollment.apple.com): No proxy found.  Attempting to connect
Deviceservices-External.Apple.Com (deviceservices-external.apple.com): No proxy found.  Attempting to connect
Humb.Apple.Com (humb.apple.com): No proxy found.  Attempting to connect
Swpost.Apple.Com (swpost.apple.com): No proxy found.  Attempting to connect
Static.Ips.Apple.Com (static.ips.apple.com): Checking for proxy
Ppq.Apple.Com (ppq.apple.com): Checking for proxy
Static.Ips.Apple.Com (static.ips.apple.com): Checking for proxy
Static.Ips.Apple.Com (static.ips.apple.com): No proxy found.  Attempting to connect
Ppq.Apple.Com (ppq.apple.com): No proxy found.  Attempting to connect
Static.Ips.Apple.Com (static.ips.apple.com): No proxy found.  Attempting to connect
Lcdn-Registration.Apple.Com (lcdn-registration.apple.com): Checking for proxy
Lcdn-Registration.Apple.Com (lcdn-registration.apple.com): No proxy found.  Attempting to connect
Oscdn.Apple.Com (oscdn.apple.com): Checking for proxy
Oscdn.Apple.Com (oscdn.apple.com): Checking for proxy
Oscdn.Apple.Com (oscdn.apple.com): No proxy found.  Attempting to connect
Oscdn.Apple.Com (oscdn.apple.com): No proxy found.  Attempting to connect
Ocsp.Verisign.Net (ocsp.verisign.net): Checking for proxy
Ocsp.Verisign.Net (ocsp.verisign.net): No proxy found.  Attempting to connect
Appldnld.Apple.Com (appldnld.apple.com): Checking for proxy
Appldnld.Apple.Com (appldnld.apple.com): No proxy found.  Attempting to connect
Gateway.Sandbox.Push.Apple.Com (gateway.sandbox.push.apple.com): Checking for proxy
Gateway.Sandbox.Push.Apple.Com (gateway.sandbox.push.apple.com): Checking for proxy
Gateway.Sandbox.Push.Apple.Com (gateway.sandbox.push.apple.com): No proxy found.  Attempting to connect
Gateway.Sandbox.Push.Apple.Com (gateway.sandbox.push.apple.com): No proxy found.  Attempting to connect
APNs tests completed with 63 passed and 0 failed. #info #network

NightFlight
New Contributor III

Confirmation back from Twocanoes. It no longer sends out a test push. The author didn't have enough people interested in paying for the product to maintain the certificate updates.