diff options
Diffstat (limited to 'src/tools/ipv4-subnet-calculator/ipv4-subnet-calculator.models.ts')
-rw-r--r-- | src/tools/ipv4-subnet-calculator/ipv4-subnet-calculator.models.ts | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/tools/ipv4-subnet-calculator/ipv4-subnet-calculator.models.ts b/src/tools/ipv4-subnet-calculator/ipv4-subnet-calculator.models.ts new file mode 100644 index 0000000..7a515ca --- /dev/null +++ b/src/tools/ipv4-subnet-calculator/ipv4-subnet-calculator.models.ts @@ -0,0 +1,23 @@ +export { getIPClass }; + +function getIPClass({ ip }: { ip: string }) { + const [firstOctet] = ip.split('.').map(Number); + + if (firstOctet < 128) { + return 'A'; + } + if (firstOctet > 127 && firstOctet < 192) { + return 'B'; + } + if (firstOctet > 191 && firstOctet < 224) { + return 'C'; + } + if (firstOctet > 223 && firstOctet < 240) { + return 'D'; + } + if (firstOctet > 239 && firstOctet < 256) { + return 'E'; + } + + return undefined; +} |