We are seeing ECONNRESET issues when using a shrinkwrapped package installed through our internal ProGet server. When configuring npm registry to be the regular npm registry and shrinkwrapping a package based on that, everything installs fine. We delete node_modules and execute npm cache clean in between runs to ensure we force downloads from ProGet. Interestingly, all 1,000+ resource requests that are listed in npm-shrinkwrap.json download correctly when plugged into a file downloader.
When installing with the verbose flag, we see a number of 404s where the npm client appears to arbitrarily alter the registry url from http://<internal-url>/npm/npm to omit npm/npm for some requests, but we don't know why that occurs or whether it relates.
We use ProGet 3.8.6, npm 3.3.11 and 3.5.4 (testing on two developer machines with the same results), and node 4.2.1.