Два микротика. Соединены GRE-туннелем. Хосты из обеих подсетей (192.168.99.0/24 и 192.168.77.0/24) друг друга видят.
Возникла необходимость перенаправлять http-трафик на squid (192.168.99.55). Добавил в таблицу mangle и в маршруты (c соответствующими изменениями адресов подсетей):
/ip firewall mangle
chain=prerouting action=mark-routing new-routing-mark=web passthrough=yes protocol=tcp src-address=!192.168.99.55 dst-address=!192.168.99.0/24
src-address-list=http_to_squid dst-port=80
/ip route
dst-address=0.0.0.0/0 gateway=192.168.99.55 distance=1 scope=30 target-scope=10
routing-mark=web
В родной для squid-сервера подсети все отлично. В подсети 192.168.77.0 статус шлюза
unreachable, соотвественно трафик игнорируется.
С самого роутера пинг до 192.168.99.55 идёт. (Да и вообще, файрволы на обоих роутерах выключил временно.)
Насколько я понял в ip routes при создании маршрута нельзя указывать в качестве адреса шлюза, адрес который не принадлежит подсетям существующих на роутере интерфейсов.
Вобщем, вопрос, как правильно перенаправить http-трафик на squid находящийся в другой подсети?
Простой SNAT не нужен, так как в статистике squid будет только один хост - сам squid.