2015-11-28 6 views
-1

Я довольно новичок в том, как подсчитывается подсетьмаска.Диапазон IP-адресов с маской подсети

У нас есть требование для белого списка диапазона IP-адресов на нашем веб-сайте asp.net.

199.83.128.1 - 199.83.135.254 
198.143.32.1 - 198.143.63.254 
149.126.72.1 - 149.126.79.254 
103.28.248.1 - 103.28.251.254 
185.11.124.1 - 185.11.127.254 
45.64.64.0 - 45.64.67.255 
192.230.64.1 - 192.230.127.254 

ASP.NET IPSecurity имеет возможность блокировать диапазон IP-адресов, но с маской подсети. , например.

<add ipAddress="xx.xx.xx.xx" subnetmask="x.x.x.x" allowed="true"/> 
    </ipSecurity> 

Может кто-то пожалуйста, помогите мне, как придумать диапазоны адресов список выше, используя маску подсети?

+2

Я думаю, что это может быть лучше подходит для Server Fault. Это больше связано с тем, как делать сетевые вычисления, чем с программированием, и как только вы знаете значения, вы уже знаете, где они находятся в web.config. – Claies

ответ

1

Забудьте о .1 и .254s, они должны быть .0 и .255 для простоты. Я не могу думать, что организация контролирует блок из 1024 IP-адресов, за исключением самого первого и самого последнего.

Канонический ответ https://serverfault.com/questions/49765/how-does-ipv4-subnetting-work/226445, но я полагаю, что для переваривания требуется несколько часов. Вот версия «без понимания за пределами базовой математики».

Если у Вас есть abx0 - aby255 (с х ≤ у), то

  • количество/24s п = у + 1-х
  • это одна подсеть, если п является мощность 2 (1, 2, 4, 8, 16, 32, 64, 128, 256) и x кратно n (x = 0*n = 0 в порядке), в противном случае вы должны разбить его
  • 3- октетная маска тогда m = 256-n
  • полученная сетевая маска составляет 255.255.m.0

Ваш результат (не стесняйтесь проверить мою математику, это ваша безопасность не мой):

45.64.64.0 /255.255.252.0 
103.28.248.0/255.255.252.0 
149.126.72.0/255.255.248.0 
185.11.124.0/255.255.252.0 
192.230.64.0/255.255.192.0 
198.143.32.0/255.255.224.0 
199.83.128.0/255.255.248.0 

Математика одинакова для abcx - abcy, ax0.0 - ay255.255 и х. 0.0.0 - y.0.0.0, за исключением того, что мы не говорим о/24s, но IP,/16s и/8s, и что netmasks становится 255.255.255.m, 255.m.0.0 и m. 0,0.0 соответственно.

Надеюсь, это помогло.

+1

Конечно, если кто-то хочет перенести это на serverfault, не стесняйтесь :) – Law29

+0

Спасибо, кучи. –

 Смежные вопросы

  • Нет связанных вопросов^_^