https://github.com/thorium/cloudip
Checks if an IP is within a known IP-address range of a cloud provider.
https://github.com/thorium/cloudip
analytics block checker cloudservices firewall geolocation ip robot
Last synced: 20 days ago
JSON representation
Checks if an IP is within a known IP-address range of a cloud provider.
- Host: GitHub
- URL: https://github.com/thorium/cloudip
- Owner: Thorium
- Created: 2021-06-11T13:47:57.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2025-01-21T14:15:24.000Z (over 1 year ago)
- Last Synced: 2025-03-29T07:11:31.866Z (about 1 year ago)
- Topics: analytics, block, checker, cloudservices, firewall, geolocation, ip, robot
- Language: F#
- Homepage:
- Size: 21.5 KB
- Stars: 3
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# Cloud IP #
This is a project that checks if an IP is within a known IP-address range of cloud service providers.
The intention of this library is just to gather data of user behaviour.
If you think security-wise, a firewall rule is probably a better option.
Or buy the DNS/WHOIS lookup database records.
Currently supported IP-address ranges to identify:
- LocalIp
- CloudFlare
- Fastly
- AWS
- GitHub
The principle of this library is:
- Collect the latest ip-address ranges file (CIDR routing tables) from the provider
- Check if your given IP matches within that range.
### NET 8.0
- Supports both IPv4 and IPv6 via System.Net.IPNetwork.
### NET Standard 2.0 (and .NET Framework)
- Supports IPv4.
- Maps IPv6 to IPv4.
## Usage
Usage:
```fsharp
// Single:
let found, provider = CloudIP.Cloudservices.checkIp "192.168.1.0"
// Multiple:
let checkedIps = CloudIP.Cloudservices.checkIps [| "123.123.123.123"; "173.245.48.15" |]
checkedIps |> Array.iter(fun res -> printfn "%O" res)
```
Nuget: https://www.nuget.org/packages/CloudIP/