Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
Get the default network gateway, cross-platform.
JavaScript Makefile
Branch: master
Clone or download
Cannot retrieve the latest commit at this time.
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.editorconfig
.eslintrc better fix for windows travis Aug 20, 2019
.gitattributes better fix for windows travis Aug 20, 2019
.gitignore
.npmrc
.travis.yml test on node 12 Jun 14, 2019
LICENSE init Jun 24, 2017
Makefile enable ver changelog Oct 15, 2019
README.md add note about wmic Oct 16, 2019
android.js update dependencies and refactor promise methods Aug 13, 2019
darwin.js
freebsd.js
ibmi.js update dependencies and refactor promise methods Aug 13, 2019
index.js
linux.js
openbsd.js update dependencies and refactor promise methods Aug 13, 2019
package.json 5.0.4 Oct 15, 2019
sunos.js update dependencies and refactor promise methods Aug 13, 2019
test.js test for interface property Jun 16, 2019
win32.js update dependencies and refactor promise methods Aug 13, 2019

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). On Windows, wmic 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

You can’t perform that action at this time.