LinuxForum.Fans
Тема

Настройка работы роутера через прокси сервер

Автор: keenetic 97 сообщений 530997 просмотров
#288057
"keenetic" написал:
Попробовать смогу на следующей неделе. Обязательно отпишусь о результатах.

Как и обещал - попробовал. Мистика какая-то... План не сработал. Роутер не смог самостоятельно пробросить трафик через прокси. После этого попробовал сеть за роутером посадить на ту же подсеть, что и перед ним, т.к. узнал, что адреса 192.168.81.100 и больше ста не заняты. При таких настройках и с прописанными прокси настройками в браузерах ПК и смартфонов и без каких либо настроек iptables в параметрах command shell DD-WRT девайсы получили доступ к интернету. Но это, не решаяет проблему. Все еще не понятно как заставить роутер самостоятельно пробрасывать трафик через прокси перед ним в интернет.

В чем причина - не понимаю?

#288123

В первом сообщении темы и последующих от ТС не увидел одного ключевого слова -- прокси-то работает в прозрачном режиме на порту 3128 или нет?

#288129

Уважаемый bormant я очень плохо разбираюсь в терминологии и не могу с абсолютной уверенностью сформулировать ответ. Что могу утверждать на 100%, так это то, что у меня прокси работает действительно по порту 3128. На всякий случай - точный адрес прокси 194.44.198.45:3128.

И спасибо Вам за желание помочь!

#288137

Все, что предлагалось в этой теме, было рассчитано на то, что по указанным вами ip:port работает анонимный прокси.
Разница с обычным в первую очередь в том, что обычному прокси, как телефонистке, явно командуют "соедини меня с ...", а прозрачный -- слушает обычные соединения ничего не подозревающих о его наличии клиентов.

Вот вам и нужно разобраться с тем что делать -- пытаться сообщать клиентам, что выход наружу через прокси ip:port, чтобы клиенты уже далее общались с прокси сами в терминах "соедини меня с ...", либо молча заворачивать все попытки выйти наружу на прозрачный прокси, чтобы клиенты думали, что ходят напрямую. Либо сочетать и то и другое (требует специальной настройки сервера прокси).

#288176

Уважаемый bormant, если я правильно понял, то прокси бывают двух видов - "прозрачные" и "не прозрачные".
В моем случае прокси не нуждается в дополнительном вводе логина и пароля, также как не нуждается в клонировании МАС-адресов. Все что нужно - это IP и порт.

Итак правильно ли я понимаю, что прозрачный прокси позволяет отсылать мои запросы напрямую в сеть но через определенный IP и порт прокси сервера.
В тоже время, не прозрачный прокси сервер перехватывает мой запрос, а потом задает его как бы от своего имени, а полученный ответ обрабатывает в обратном порядке получая его от моего имени и доставляю уже мне?

Даже если все это учесть не до конца понятным остается то, что если например отдельный ПК с введенными настройками IP и порта прокси спокойно получает доступ к интернету.

Не ужели нельзя сделать так, чтобы роутер "притворился" именно таким ПК и подавал запросы как бы от своего имени (как ПК)?

#288202

"keenetic" написал:
если я правильно понял, то прокси бывают двух видов - "прозрачные" и "не прозрачные".
В моем случае прокси не нуждается в дополнительном вводе логина и пароля
Непрозрачные прокси могут требовать авторизации или не требовать. Прозрачные -- не могут требовать авторизации по определению.

"keenetic" написал:
правильно ли я понимаю, что прозрачный прокси позволяет отсылать мои запросы напрямую в сеть но через определенный IP и порт прокси сервера.
Прозрачный прокси получает запрос, адресованный серверу http, исполняет его от своего имени, результат отдаёт обратившемуся.

"keenetic" написал:
не прозрачный прокси сервер перехватывает мой запрос, а потом задает его как бы от своего имени, а полученный ответ обрабатывает в обратном порядке получая его от моего имени и доставляю уже мне?
Нет. ПО, умеющее само работать через прокси, обращается к серверу прокси с явным запросом CONNECT.

"keenetic" написал:
чтобы роутер "притворился" именно таким ПК и подавал запросы как бы от своего имени (как ПК)?
Для этого на роутере тоже должен работать прокси, вышестоящим у которого будет указан существующий. Но обычно так не делают, а перенаправляют запросы к http серверам (на порт назначения 80) на вход прозрачному прокси.
#288205

Благодарю за ответы bormant

Мне только что подкинули такую строку

iptables -t nat -A PREROUTING -p tcp --dport 80 ! -d <WAN_IP>/32 -s <LAN_NET>/<LAN_MASK> -j DNAT --to-destination XXX.XXX.XXX.XXX:3128

Может ли она решить мою проблему?

#288223

Если прокси в прозрачном режиме, может, иначе -- нет.

Идея: до принятия решения о маршрутизации (-A PREROUTING) заменить в пакетах адрес и порт назначения на proxy_ip:proxy_port (-j DNAT), адресованных на порт http/80, (--dport 80), если адрес источника в локальной сети (-s lan_net/lan_mask) и адрес назначения не является внешним адресом (! -d wan_ip/32).

#288224

bormant
Звучит грандиозно *THUMBSUP* , но как это можно реализовать практически в строке? :[

#288227

Так прокси-то прозрачный?

#288229

Так прокси-то прозрачный?

Как мне кажется - нет. Как можно это проверить?

#288230

Спросить у администратора прокси?
Если есть доступ к настройкам прокси -- посмотреть там. Если используется Squid, за прозрачный режим отвечает наличие в директиве http_port параметра intercept (начиная с версии 3.1, ранее -- transparent).

Либо настраивать автоконфигурацию прокси, что-то на тему http://dep346.narod.ru/articles/proxy-autoconf/

#288264
"bormant" написал:
Спросить у администратора прокси?

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

Мне прислали вот такой вариант. Завтра опробую.

text
iptables -t nat -A PREROUTING -p tcp --dport 80 ! -d 192.168.1.1/32 -s 192.168.1.1/24 -j DNAT --to-destination 194.44.198.45:3128

Может появится еще какой-то?

#288292
keenetic написал:
text
iptables -t nat -A PREROUTING -p tcp --dport 80 ! -d 192.168.1.1/32 -s 192.168.1.1/24 -j DNAT --to-destination 194.44.198.45:3128

В команде ошибка. Запись 192.168.1.1/24 - неправильна. Надо 192.168.1.0/24

#288295

Cruiser78
спасибо!

#296378

Здравствуйте. У меня подобная проблема с сетью. На работе есть комп на которій раздается инет через small proxy или чтото еще, у меня есть домашний роутер dir-615 прошитый под dd-wrt. Хочу подключить его на работе чтоб юзать через телефон или планшет интернет. Помогите пожалуйста настроить.
Уже попробовал вышеприведенные строки под свою сеть, но что то не получается.
Что получается- wan порт- статический ip-настройки сделал такие как на компьютере на который сейчас приходит инет.
Настройки лан роутера оставил без изменений. В компьютере поставил ip автоматически.
Строка выглядит примерно так
iptables -I PREROUTING -s 192.168.1.0/255 --dport 80 -j DNAT --to 10.7.90.12:8080


10.7.90.12:8080 - компьютер/порт с которого я получаю интернет.
Помогите пожалуйста.

#296506

Сёдня достану роутер dd-wrt и проверю сам.

#296694

Пока как то так.
Поднял dd-wrt на виртуалке и прописал DNAT
Поставил ccproxy и firefox жестоко прописал ип dd-wrt.
Вроде так пашет.



Uploaded with ImageShack.us

#296701

Честно говоря ничего не понял - вы сделали с той же командой что и у меня и у вас все заработало?

#296716

Пока ток пробнул мапить 3128 порт. Буду пробывать дальше что завернуть в прозрачный режим.

Мля на протяжении двух страниц не видел свою ошибку

text
 -t nat

:)

Вот так должен работать. Не забывайте править под свои нужды.

text
iptables -t nat -I PREROUTING -s 192.168.0.0/24 -p tcp --dport 80 -j DNAT --to 192.168.1.254:3128

И главное чтоб прокси был в прозрачном режиме.

Войдите или зарегистрируйтесь, чтобы ответить.