IsIPInRanges
Returns yes if the IP is in one of the ranges provided, returns no otherwise.
javascript · Common Scripts
Source
var private_subnets = [ '172.16.0.0/12', '10.0.0.0/8', '198.18.0.0/15', '192.168.0.0/16', '100.64.0.0/10', '127.0.0.0/8', '169.254.0.0/16', '192.0.0.0/24', '0.0.0.0/8', '224.0.0.0/4', '240.0.0.0/4', '255.255.255.255/32' ]; var ip = args.ip; var ipranges = argToList(args.ipRanges); if (!ipranges || ipranges.length === 0) { ipranges = private_subnets; } var isInRange = ipranges.some(function(iprange) { return isIPInSubnet(ip, iprange.replace(/[\s]/g, '')); }); var ipObj = {}; ipObj.Address = ip; ipObj.InRange = isInRange ? 'yes' : 'no'; var ec = {'IP(val.Address == obj.Address)' : ipObj}; return { Type: entryTypes.note, Contents: isInRange ? 'yes' : 'no', ContentsFormat: formats.text, EntryContext: ec };
README
Returns “yes” if the IP address is within one of the ranges provided. Otherwise it will return “no”.
Script Data
| Name | Description |
|---|---|
| Script Type | javascript |
| Tags | ip |
Inputs
| Argument Name | Description |
|---|---|
| ip | The IP address to check in ranges. |
| ipRanges | The list of IP address ranges to check the IP addresses in. The list should be provided in CIDR notation, separated by commas. For example, “172.16.0.0/12,10.0.0.0/8,192.168.0.0/16” (without quotes). If a list is not provided, it will use a default list provided in the IsIPInRanges script (the known IPv4 private address ranges). |
Outputs
| Path | Description | Type |
|---|---|---|
| yes | Whether a given value is within an IP address range. | Unknown |
| no | Whether a given value is not within an IP address range. | Unknown |
| IP.Address | The IP address. | Unknown |
| IP.InRange | Whether the IP address is within the input ranges. Can be, “yes” or “no”.) | Unknown |