>КАК ЭТО СДЕЛАТЬ?
>Мысли про policy routing:
Вот это направление мне кажется более логичным.
Для начала - поймем, что нам нужно? Нам нужно, чтобы ответ на запрос из 1.1.1.0 ушел туда же, тогда как сейчас он уходит на дефаултроутер.
Я у себя делал так:
в /etc/iproute2/rt_tables добавил строку "100 friend"
Это мы так назвали табличку для маршрутизации в сеть 1.1.1.0
Теперь настраиваем правила в этой табличке (если я правильно понял, то гейт в нее - это 192.168.0.77):
# все, что на локальную подсеть - все на eth1
ip route add 192.168.2.0/24 dev eth1 table friend
# все, что на подсеть провайдера (маску подправишь) - все на eth2
ip route add 2.2.2.0/24 dev eth2 table friend
# Вот это первый ключевой момент. Для таблицы friend - роутинг по умолчанию - через 192.168.0.77
ip route add default via 192.168.0.77 table friend
# А это второй ключевой момент. Роутинг по таблице friend включается в том случае, если пакет уходит с адреса 192.168.0.1
ip rule add from 192.168.0.1 table friend
Собственно, все. Если хочется этот скрипт запускать многократно, то рекомендую в начало добавить что-то вроде
ip rule del from 192.168.0.1 table mtu
ip route flush table mtu
чтоб не ругалось.