学习?学个屁 06c63c15cc 初始化提交 10 mesi fa
..
LICENSE 06c63c15cc 初始化提交 10 mesi fa
README.md 06c63c15cc 初始化提交 10 mesi fa
android.js 06c63c15cc 初始化提交 10 mesi fa
darwin.js 06c63c15cc 初始化提交 10 mesi fa
freebsd.js 06c63c15cc 初始化提交 10 mesi fa
ibmi.js 06c63c15cc 初始化提交 10 mesi fa
index.js 06c63c15cc 初始化提交 10 mesi fa
linux.js 06c63c15cc 初始化提交 10 mesi fa
openbsd.js 06c63c15cc 初始化提交 10 mesi fa
package.json 06c63c15cc 初始化提交 10 mesi fa
sunos.js 06c63c15cc 初始化提交 10 mesi fa
win32.js 06c63c15cc 初始化提交 10 mesi fa

README.md

default-gateway

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 Windows, wmic must be available.
  • On IBM i, the db2util command must be available (provided by the db2util package).
  • On Unix (and macOS), the netstat command must be available.

Installation

$ npm i 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