Это достаточно просто, чтобы закодировать класс для хранения/проверки чего-то вроде 192.168.0.0/16
, но мне было любопытно, если для этого уже существует родной тип для .NET? Я бы предположил, что это будет очень похоже на IPAddress
:
CIDR subnet = CIDR.Parse("192.168.0.0/16");
В принципе, вам просто нужно убедиться, что вы работаете с IPv4 или IPv6-адресом, а затем количество битов, которое вы укажете для этого типа.