Есть коммутатор DXS-3600-32S в офисной сети, есть несколько VLANов, для выхода в интернет используется шлюз на Linux
Допустим есть влан 100 с адресами 10.1.1.0/24 и есть другие вланы 10.2.1.0/24, 10.3.1.0/24 и т.д.
Адрес интернет-шлюза 10.1.1.1, на нем включен нат в интернет для сети 10.1.1.0/24
Адрес свитча 10.1.1.10, default route у свитча указан 10.1.1.1
Адрес некоторого хоста 10.1.1.20, default route у хоста указан свитч 10.1.1.10
Таким образом хост выходит в интернет так: хост -> свитч -> шлюз
Хотелось бы настроить ACL с политикой по-умолчанию "запрещено все", а потом уже по мере надобности открывать что нужно.
Допустим создаем стандартный ACL, в котором где-то в конце будет правило запрещающее все:
Код:
2000 deny any any
А теперь мне надо хост выпустить в интернет, но при этом чтобы у хоста не было доступа к остальным вланам в сети.
В линуксе с помощью iptables это элементарно делается, например так:
Код:
iptables -t nat -A POSTROUTING -s 10.1.1.20 ! -d 10.0.0.0/8 -j MASQUERADE
то есть разрешить все пакеты от хоста 10.1.1.20, у которых любой пункт назначения кроме сети 10.0.0.0/8 (восклицательный знак исключает сеть 10.0.0.0/8)
В dlink ACL такое сделать нельзя, как я понял?
С таким набором правил:
Код:
10 permit host 10.1.1.20 any
2000 deny any any
Хост будет иметь доступ куда угодно, в том числе в другим вланам (10.Х.Х.Х)
Единственное что приходит в голову, это решить эту задачу несколькими правилами:
Код:
10 deny host 10.1.1.20 10.0.0.0 0.255.255.255
20 permit host 10.1.1.20 any
2000 deny any any
Или есть другое решение?