You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
林华焜
b6f8f922cf
|
4 years ago | |
---|---|---|
.. | ||
node_modules | 4 years ago | |
LICENSE | 4 years ago | |
README.md | 4 years ago | |
android.js | 4 years ago | |
darwin.js | 4 years ago | |
freebsd.js | 4 years ago | |
ibmi.js | 4 years ago | |
index.js | 4 years ago | |
linux.js | 4 years ago | |
openbsd.js | 4 years ago | |
package.json | 4 years ago | |
sunos.js | 4 years ago | |
win32.js | 4 years ago |
README.md
default-gateway
Get the default network gateway, cross-platform.
Obtains the machine's default gateway through exec
calls to OS routing interfaces.
- On Linux and Android, the
ip
command must be available (usually provided by theiproute2
package). - On Windows,
wmic
must be available. - On IBM i, the
db2util
command must be available (provided by thedb2util
package). - On Unix (and macOS), the
netstat
command must be available.
Installation
$ npm install default-gateway
Example
const defaultGateway = require('default-gateway');
const {gateway, interface} = await defaultGateway.v4();
// gateway = '1.2.3.4', interface = 'en1'
const {gateway, interface} = await defaultGateway.v6();
// gateway = '2001:db8::1', interface = 'en2'
const {gateway, interface} = defaultGateway.v4.sync();
// gateway = '1.2.3.4', interface = 'en1'
const {gateway, interface} = defaultGateway.v6.sync();
// gateway = '2001:db8::1', interface = 'en2'
API
defaultGateway.v4()
defaultGateway.v6()
defaultGateway.v4.sync()
defaultGateway.v6.sync()
Returns: result
Object
gateway
: The IP address of the default gateway.interface
: The name of the interface. On Windows, this is the network adapter name.
The .v{4,6}()
methods return a Promise while the .v{4,6}.sync()
variants will return the result synchronously.
The gateway
property will always be defined on success, while interface
can be null
if it cannot be determined. All methods reject/throw on unexpected conditions.
License
© silverwind, distributed under BSD licence