Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
network-diagnostics
Advanced tools
#network-diagnostics Network-diagnostics provides a library for diagnosing network problems.
This module, network-diagnostics , is published under the MIT license. It is written by Nate Watson and Oluwafunmiwo Juda Sholola. Copyright 2015.
Goto the directory that the module is requred in: "cd directory".
Run this instruction:
npm install network-diagnostics
Ensure you have the right to perform global module installations.
Run this instruction:
npm install -g network-diagnostics
Navigate to the directory of installation.
Run this instruction:
node diagnosticsTester.js
var diagnostics = require("./diagnostics");
var diagnoseProcedure = diagnostics.diagnose(function(result){
console.dir(result);
for (var index = 0; index< result.length; index++) {
console.log(diagnostics.getError(result[index]));
}
});
network-diagnostics provides the following features:
network-diagnostics provides two functions for changing the URL that HTTP is tested with. By default, the URL that is used for network tests is "google.com".
var result = diagnostics.getTestURL(); /*result would be "google.com"*/
diagnostics.setTestURL("yahoo.com");
This function returns a boolean value which states if an IPv4 connection is usable, not counting the one for localhost.
if (diagnostics.haveIPv4() == false) {
console.log("We have a problem.");
}
This function returns a boolean value which states if an IPv6 connection is usable, not counting the one for localhost.
if (diagnostics.haveIPv6() == false) {
console.log("We have a bad network.");
}
This function returns a boolean value which states if an IP connection of any type is usable, not counting the one for localhost.
if (diagnostics.haveConnection() == false) {
console.log("This is all there is. The outside world is a myth.");
}
This function returns a boolean value which states if it's possible to perform non-cached DNS lookups.
var checkDNS = diagnostics.haveDNS(function(result){
if (result == false) {
console.log("Start memorizing numbers. DNS isn't working.");
}
});
This function returns a boolean value which states if it's possible to perform non-cached HTTP requests.
var checkHTTP = diagnostics.haveHTTP(function(result){
if (result == false) {
console.log("Don't worry, stackoverflow uses https, not http.");
}
});
This function returns a boolean value which states if it's possible to perform non-cached HTTP requests.
var checkHTTPS = diagnostics.haveHTTPS(function(result){
if (result == false) {
console.log("Uh oh. Without HTTPS, we can't get to stackoverflow to solve the problem we just found!");
}
});
##Standardized Test This function performs every network test in the script that does not require any complex input from the user. Tests that require complex input must be run explicitly. It then returns the results as a number array in a callback function.
var diagnoseProcedure = diagnostics.diagnose(function(result){
console.dir(result);
for (var index = 0; index< result.length; index++) {
console.log(diagnostics.getError(result[index]));
}
});
##Error Code Lookups diagnostics.getError is a function takes a numerical error code, and returns a string that relates to it.
console.log(diagnostics.getError(80)); /*NoHTTPconnection*/
As a general rule, every error code is the default port of the protocol that was tested, with a few logical exceptions. These are the codes which the function will actually evaluate:
Num | Error |
---|---|
0 | "NormalNetworkActivity" |
1 | "NoConnection" |
4 | "NoIPv4Connection" |
6 | "NoIPv6Connection" |
7 | "DiagnosticsScriptFailure" |
53 | "NoDNS" |
80 | "NoHTTPconnection" |
443 | "NoHTTPSconnection" |
These error codes are going to be used in the future when tests are written for them. Until that point, they are not directly usable.
Num | Error |
---|---|
20 | "FTPFailure" |
22 | "SSHfailure" |
23 | "TelnetFailure" |
25 | "SMTPfailure" |
37 | "TimeProtocolFailure" |
70 | "NoGopher" |
88 | "NoKerberosThankIKEA" |
110 | "NoInsecurePOP3" |
143 | "NoInsecureIMAP" |
161 | "NoSNMP" |
194 | "NoIRC" |
993 | "NoSecureIMAP" |
995 | "NoSecurePOP3" |
FAQs
Performs diagnostics on the network to determine network problems.
The npm package network-diagnostics receives a total of 36 weekly downloads. As such, network-diagnostics popularity was classified as not popular.
We found that network-diagnostics demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.