icmp
v2.0.1
Published
Internet Control Message Protocol in Node
Downloads
205
Maintainers
Readme
Internet Control Message Protocol in Node
Node wrapper for the ICMP protocol.
Install
npm install icmp
On Windows, Windows Build Tools are required: npm install -g windows-build-tools
Usage
Properties
ICMP.host: string
The requested HOST (can be an IP)
ICMP.ip: string
The requested IP, when host parameter is given to the constructor, the DNS will be resolved to get this IP adress
ICMP.open: boolean
This property will be true
or false
, depending on the ping response
ICMP.type: string
ICMP response type, will be one from this array:
['REPLY', 'NA', 'NA', 'DESTINATION_UNREACHABLE', 'SOURCE_QUENCH', 'REDIRECT']
ICMP.code: string
ICMP response code, will be one from this array:
['NET', 'HOST', 'PROTOCOL', 'PORT', 'FRAGMENTATION', 'ROUTE_FAILED', 'NET_UNKNOWN', 'HOST_UNKNOWN', 'HOST_ISOLATED', 'NET_PROHIBITED', 'HOST_PROHIBITED', 'NET_UNREACHABLE', 'HOST_UNREACHABLE', 'COMM_PROHIBITED', 'HOST_PRECEDENCE', 'PRECEDENCE_CUTOFF', 'NETWORK', 'HOST', 'SERVICE_NETWORK', 'HOST_NETWORK']
Methods
Note: default timeout
of each methods is 5000ms
.
(static) ICMP.ping(host: string, timeout?: number): Promise
Send a ping to a specific host. Returns a Promise resolving an ICMP instance and rejecting an Error.
ICMP.ping(timeout?: number): Promise
Send a ping to the defined ICMP instance's host. Returns a Promise, resolving nothing and rejecting an Error.
(static) ICMP.send(host: string, data?: string)
Send data to a specific host through ICMP. Returns a Promise resolving an ICMP instance and rejecting an Error.
icmp.send('10.43.65.9', "Hey, I'm sending a message!")
.then(obj => {
console.log(obj.open ? 'Done' : 'Failed')
})
.catch(err => console.log(err));
ICMP.send(data?: string, timeout?: number)
Send data to the defined ICMP instance's host. Returns a Promise resolving nothing and rejecting an Error.
(static) ICMP.listen(cb: (buffer, source) => void)
Listen to incomming ICMP requests.
ICMP.listen(cb: (buffer, source) => void)
Listen to incomming ICMP requests.
ICMP.close()
Close the raw socket stream. Can be used to stop a request.
Author
👤 Nathanael Demacon
- Twitter: @qtmsheep
- Github: @quantumsheep
Show your support
Give a ⭐️ if this project helped you!