And you still get "Host is up" but, of course, the service you want isn't....
Err read the man page? -Pn assumes the host is up (skips the initial ping
in case something drops that when you are interested in a port) so it will say the host is up in that case - but we don't care about the host being up... we want the service so you need to parse the service output.