如何在js或node js中ping ip

How to ping ip in js or node js

我创建了检查 ip 可用性的电子应用程序。要检查可用性,您应该 ping ip。我使用 fetch api 并使用 domens 它工作正常,但如果我尝试在本地网络中 ping ip,如 192.168.1.190 我被拒绝,但如果我通过 cmd ping 它让我成功结果。我找到了库 ping,但它的工作方式类似于获取并拒绝本地 ip。我应该如何 ping?

P.S

ip like 8.8.8.8 也 return 拒绝获取 api,但在 cmd 中 ping 正常。

如果使用nodejs,可以使用exec调用系统ping命令

const exec = require('child_process').exec;
function process(error, stdout, stderr) {
    //TODO: process result or logging.
}
exec("ping -c 3 localhost", process);

或者您可以使用第 3 方库。 https://github.com/nospaceships/node-net-ping

使用 icmp 包:

const icmp = require('icmp');

icmp.send('8.8.8.8', "Hey, I'm sending a message!")
    .then(obj => {
        console.log(obj.open ? 'Done' : 'Failed')
    })
    .catch(err => console.log(err));