Irina Glushko 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
..
LICENSE 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
README.md 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
android.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
darwin.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
freebsd.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
ibmi.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
index.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
linux.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
openbsd.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
package.json 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
sunos.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos
win32.js 2389e7160b HW1 done %!s(int64=3) %!d(string=hai) anos

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 the iproute2 package). On IBM i, the db2util command must be available (provided by the db2util package).

Installation

$ npm install default-gateway

Example

const defaultGateway = require('default-gateway');

defaultGateway.v4().then(result => {
  // result = {gateway: '1.2.3.4', interface: 'en1'}
});

defaultGateway.v6().then(result => {
  // result = {gateway: '2001:db8::1', interface: 'en2'}
});

const result = defaultGateway.v4.sync();
// result = {gateway: '1.2.3.4', interface: 'en1'}

const result = defaultGateway.v6.sync();
// result = {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