hostname-is-private

Check whether or not an hostname refer to a private IP

Usage no npm install needed!

<script type="module">
  import hostnameIsPrivate from 'https://cdn.skypack.dev/hostname-is-private';
</script>

README

hostname-is-private Build Status

Check whether or not an hostname refers to a private IP

Setup

npm install hostname-is-private

Usage

isPrivate(hostname: {String}, f: (err : {Error,Null}, isPrivate: {Boolean}))

var isPrivate = require('hostname-is-private').isPrivate;

isPrivate('127.0.0.1.xip.io', function(err, isPrivate){
    console.log(err === null, isPrivate == true);
});

isPrivate('localhost', function(err, isPrivate){
    console.log(err === null, isPrivate === true);
});

isPrivate('google.com', function(err, isPrivate){
    console.log(err === null, isPrivate === false);
});

isPrivateIncludingPublicIp(hostname: {String}, f: (err : {Error,Null}, isPrivateIncludingPublicIp: {Boolean}))

var isPrivateIncludingPublicIp = require('hostname-is-private').isPrivateIncludingPublicIp;

isPrivateIncludingPublicIp('YOUR-PUBLIC-IP.xip.io', function(err, isPrivate){
    console.log(err === null, isPrivate == true);
});

isPrivate('localhost', function(err, isPrivate){
    console.log(err === null, isPrivate === true);
});

isPrivate('google.com', function(err, isPrivate){
    console.log(err === null, isPrivate === false);
});

How it works

It uses dns.lookup underneath and ip.isPrivate to check if the resolved IP is private (or not).

Changelog