[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

маскарадинг на роутинг



есть хост развязывающий домашнюю локалку с провайдерской

ситуация такая: провайдер развивает локалку, периодически добавляя
локальные сети и гейты на них, кроме того есть гейты на инетовские
ресурсы, которые бесплатные.
вход в инет через pptp

итак имеем на хосте:

eth0 смотрит в локалку провайдера и видит некоторые бесплатные ресурсы
инета

eth1 смотрит в мою локалку

ppp0 смотрит в инет

кроме того есть необходимость чтобы из локалки провайдера мою локалку
было не видно, поэтому используется маскарадинг а не роутинг

проблема собственно в том, что на гейте приходится прописывать таблицу
куда какой пакет - два раза:

сперва роутинг (чтобы с гейта все было видно)
что-то вроде:

nets="10.0.0.0/8 192.168.0.0/16 и так далее"
for net in $nets; do
	route add -net $net gw 10.4.0.1
done

а потом нат и маскарадинг (чтобы из локалки все было видно):

for net in $nets; do
        $IPT -d $net  -s $LOCAL_NET/$LOCAL_NETMASK -p ALL\
 		 -t nat -A POSTROUTING \
                 -o $NET_IFACE -j SNAT --to-source $NET_IP
done
$IPT -s $LOCAL_NET/$LOCAL_NETMASK -t nat -A \
	 POSTROUTING -o $INET_IFACE  -j MASQUERADE

вопрос: можно ли настроить нат и маскарадинг, чтобы пакеты отправлял в
направлении таблицы роутинга?
чтобы не было двух одинаковых таблиц?



Reply to: