Следующее не работает:
apache2.conf:
<Location>
Require ip 192.168., 175.
</Location>
Как я могу добавить несколько диапазонов IP-адресов?
Трудно сказать на 100%, что вам нужно, но вам нужно использовать IP-адресацию CIDR. Итак, IPADDRESS / MASK, например
Требуется ip 192.168.1.0/24
Это позволит 192.168.1.1 - 192.168.1.254
Вы можете использовать несколько Require
линий.
<Location /target>
Require ip 192.168.0.0/16
Require ip 175.0.0.0/8
</Location>
Если какие-либо из них совпадают, доступ будет предоставлен.
Синтаксис из mod_authz_core позволяет добавлять несколько диапазонов в одну строку, но они разделяются пробелами вместо запятых.
Require [not] entity-name [entity-name]
В Контроль доступа объясняет принятые форматы для IP-адресов.
Require host address Require ip ip.address
В первой форме адрес это полное доменное имя (или частичное доменное имя); при желании вы можете указать несколько адресов или доменных имен.
Во второй форме айпи адрес - это IP-адрес, частичный IP-адрес, пара сеть / маска сети или спецификация CIDR сеть / nnn. Могут использоваться адреса IPv4 или IPv6.
Итак, ваши однострочные варианты:
Require ip 192.168. 175.
(частичные IP-адреса)Require ip 192.168.0.0/16 175.0.0.0/8
(Обозначения CIDR)Require ip 192.168.0.0/255.255.0.0 175.0.0.0/255.0.0.0
(пары сеть / маска сети)Если вы хотите добавить условия в отдельные строки, вам необходимо указать, как они должны обрабатываться: доступ должен быть предоставлен, если любой совпадений IP-подсетей. Можно даже смешивать форматы.
<RequireAny>
Require ip 192.168.
Require ip 175.0.0.0/8
</RequireAny>