>>А теперь словами: "я хочу чтобы маршрутизация работала так: ..."
>>
>>по правилам ломает разбираться, что вы под ними _подразумевали_
>
>хочется вот чего - чтобы все соединения с $EXT ходили через другой
>интерфейс (провайдера другого). 0: from all lookup local
1000: from all lookup main
## траффик на нужный хост/сеть на нужную таблицу
3000: from all to нужный_хост lookup $extX_TABLE
## траффик с нужного хоста/сети - на нужную таблицу
4000: from нужный_хост lookup $extX_TABLE
## c адресов маршрутизатора
5000: from $EXT2_IP lookup $EXT2_TABLE
5050: from $EXT1_IP lookup $EXT1_TABLE
10000: from all lookup default
32766: from all lookup main
32767: from all lookup default
[root@test zz]# ip ro sh table $EXT1_TABLE
default via EXT1_GW_IP dev EXT1_IF
[root@test zz]# ip ro sh table $EXT2_TABLE
default via EXT2_GW_IP dev EXT2_IF
таблица майн содержит в себе маршруты к директли-коннектед сетям, это позволяет пакетам из локальной сети идти на внешние адреса маршрутизатора, и обратные пакеты с внешних адресов маршрутизатора пойдут в локальные сети а не будут форварднуты на шлюзы провайдера по 50хх правилам
PS: Воспользуйтесь поиском. Тема объясняется по нескольку раз на неделю.
http://www.opennet.dev/openforum/vsluhforumID1/80422.html
http://www.opennet.dev/openforum/vsluhforumID10/3679.html#4
и другие ссылки.