Hi Gareth,
Each Azure Storage endpoint public IP address serves many different storage accounts. As a result of this incoming connections have to be accepted so that the front end layer can determine whether or not it should be authorized.
For example, Test-NetConnection essentially attempts TCP three-way handshake and reports the result (success/fail). At this stage of the connection process, the front end has no ability to see which storage account is the destination, so the TCP connection needs to proceed.
In the case of attempting to browse a share, there is a point in the process where it is knows the destination storage account and can take that into consideration. If the destination account has public access disabled it knows to refuse.
Please click Accept Answer and upvote if the above was helpful.
Thanks.
-TP