>Не раскажишь по подробней как ты справился с этой проблемой. Или
>кто нибудь если не трудно, а то у меня аналогичная ситуация.
В свой файл нстройки iptables можешь добавить следующее:
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/conf/all/proxy_arp
Первое у тебя уже включено, иначе пакеты не будут
форвардиться на другие интерфейсы,
а второй как раз делает позволяет
делать арп запросы на адреса удаленных машин твоему серверу,
он станет выдавать себя за них, а дальше правильно роутить
пакет, хотя это зависет от шлюза котоый ты дашь клиенту,
т.е. если дашь шлюз првоайдера, провайдер будет справшивать
твой сервак: "кто такой юзер с внешним айпишником"
и твой сервак будет отвечать что он здесь и получит пакет.
А если даш адрес своего внешнего интерфейса, то
юзер будет спрашивать кто с таким айпишником,
и твой же сервак ответит на внутренний интерфейс, что это он же.
Незабудь свободное хождение пакетов через цепочку FORWARD таблицы filter,
например так:
$IPTABLES -A FORWARD -p TCP -d $INET7_IP -j Daiver.NewEstRel.Filter
$IPTABLES -A FORWARD -p UDP -d $INET7_IP -j ACCEPT
$IPTABLES -A FORWARD -p ICMP -d $INET7_IP -j ACCEPT
в первом правиле пакеты отправляются в цепочку проверки
правильности самих запросов на соединения, в принципе
можешь запросто поставить ACCEPT.
Осталось прописать статические маршруты,
чтобы твой сервак знал где юзер:
ip route add <внешний айпишник>/32 dev eth2
eth2 - замени на твой внутренний интерфейс.
Все.
ЗЫЖ Наверно юзер будет использовать твой прокси, твой кеширующий днс
и еще чего, так что не забудь добавить правила в таблицу FILTER в цепочки
INPUT и OUTPUT.
ЗЗЫЖ Для отладки очень просто попросить пользователя пинговать
например яндекс, сказав чтобы набрал у себя:
ping ya.ru -t
а лучше ping 213.180.193.123 -t (ибо до ДНС он тоже может не достучаться)
а дальше смотришь tcpdump'ом до куда доходят запросы и где обламываются,
так же и ответы:
tcpdump -n -i eth2 host <внешний айпишник>
ЗЗЫЖ Обязательно оставль пользователю локальный айпишник,
чтобы соединялся с локальными машинами не трогая твой сервак.
Т.е. у него на интерфейсе должно быть два ай-пишника
и шлюзом должен быть либо твой внешний либо шлюз провайдера,
тогда запросы в и-нет он будет посылать со своего
внешнего адреса, а запросы в локальную сеть со внутреннего.
Удачи.