Необходимо заблокировать все адреса: 109.207.13.X то есть от 109.207.13.0 до 109.207.13.255
Прочитал что множество адресов обозначается:
так:
109.207.13.0/16
или так:
109.207.13.0/24
Подскажите пожалуйста как правильно? И что означают /16 /24 ?
Ответы
Ответ 1
/16, /24 - это обозначение классов сетей.
Переписывать матчасть не буду, поэтому почитайте здесь.
Поэкспериментировать и наглядно понять правильность понимания можно вот тут.
Что касается упомянутого "109.207.13.X то есть от 109.207.13.0 до 109.207.13.255"
то это сеть класса C, т.е. 109.207.13.0/24 с маской подсети 255.255.255.0 (где /24 означае
представление маски в десятичной форме, а именно с ее двоичной формы записи 11111111.11111111.11111111.00000000, т.е. маска 24 бит из возможных 32-х, и количество возможных хостов в этой подсети, как в твоем случае, как раз 256, т.е. от 0 до 255 включительно).
Эх.. Раз пошла такая пьянка - режь последний огурец..
Итак, что такое /24: IP адрес (IPv4) представляет собой адрес, состоящий из 4 байто
(32-х бит, т.е. 4х8 бит, разделенных точкой), где его формат записи в двоичной форм
выглядит как 11000000.10101000.00000000.00000001. А десятичной форме аналогичная запис
выглядит как запись из 4-х чисел от 0 до 255 включительно, где 255 - это максимально
число, которое можно выразить в 8-ми битах, т.е. 255 в двоичном формате будет выглядет
так: 11111111. Т.е. некоторый IP, скажем 192.168.0.1, будет выглядеть в двоичной форм
так: 11000000.10101000.00000000.00000001. Если взять сеть 192.168.0.0/24 и выбрать любой IP адрес из диапазона 192.168.0.0 - 192.168.0.255, то для конкретного IP адреса любого из этих 256 возможных хостов (теоретически от 0 до 255 включительно) маска подсети будет выглядеть следующим образом: 11111111.11111111.11111111.00000000 (255.255.255.0 в десятичной форме), что означает что 3х8=24 бита (слева направо) в адресе - это биты, указывающие на адрес подсети, а последние 8 битов отведены на IP адреса хостов в подсети, т.е. от 0 до 255 (что равняется 256-ти, и 256 - это число всех возможных комбинаций от 00000000 до 11111111).
Теперь дальше и глубже: допустим, что не требуется все 256 хостов в одной подсети
а хочется разделить пространство на еще 2 подсети (по 128 хостов в каждой). Тогда можн
разделить эту сеть так: маска подсети будет 255.255.255.128 (т.е. 11111111.11111111.11111111.10000000 или же /25 - по количеству битов слева направо) и получаем сети с 128 хостами в каждой: 0-127 в одной (Network 192.168.0.0 с Broadcast Address 192.168.0.127) и 128-255 (Network 192.168.0.128 с Broadcast Address 192.168.0.255) в другой.
Добавлю еще для понимания (не вдаваясь в подробности операций с двоичными данными)
выражаясь простыми словами для быстрой калькуляции в уме: раз IPv4 адрес состоит всегд
из 4х8=32 бит, и если маска подсети в каком-то конкретном случае занимает, скажем, 2
бит (те, что слева направо), то 32-24=8 бит идут под диапазон для IP адресов хосто
(читай компьютеров, сетевых принтеров, прочих устройств, имеющих свой IPv4). И для того
чтобы посчитать в данном случае каково количество возможных хостов для каждой подсети с данной маской, то надо 2 возвести в степень 8 (где 8 - количество нулей в маске), т.е. результатом будет 256. Если взять сеть 192.168.0.0/26, то само собой количество нулей будет равняться 6-ти (32-26), то количество хостов будет 2^6=64, маска - 255.255.255.192, а количество подсетей будет в данном диапазоне будет равняться 4-м (4х64 в каждой).
Внимательный заметит, даже не вдаваясь в подробности, что сумма количества возможны
хостов в подсети и последнее число в маске в сумме дают 256, а количество подсетей
это 256, разделенное на 64 (количество хостов в каждой подсети, где 256 и 64 - только для данного примера! - почему, надо понять самому, хотя бы по аналогии с/16, приведенным ниже) и сделает логические выводы.
Ну и исходя из вышеперечисленного нетрудно разложить следующее: /16 (так называемы
Class B) - это когда возможны 65536 (2^16) хостов в одной подсети, т.е. маска выгляди
так: 11111111.11111111.00000000.00000000, т.е. адрес сети занимает 8х2=16 бит (слева)
а под IP адреса хостов выделено тоже 8х2=16 (все возможные комбинации от 00000000.00000000 до 11111111.11111111, т.е. как раз 65536 штук) значения бит из адреса (справа). Т.е. диапазон IP адресов хостов в десятичной форме выглядит так: от 192.168.0.0 до 192.168.255.255, где маска подсети /16, т.е. 255.255.0.0
Ну и так далее..
Что касается "Подскажите пожалуйста как правильно?" - если речь идет о .htaccess, то смело можете использовать Deny и указывать 109.207.13.0/24.
order allow,deny
allow from all
deny from 109.207.13.0/24
Если речь идет о блокировке в каких-нибудь Cisco или Juniper - то это тогда в и
документацию и на РутКод :)
Комментариев нет:
Отправить комментарий