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.
$ npm install default-gateway
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'
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.
© silverwind, distributed under BSD licence