Страница: 1 | 2 |
Вопрос: Мини прокси сервер своими руками!!
Добавлено: 15.02.06 22:31
Автор вопроса: Apache2 | ICQ: 162823477
Тут понадобилось написать мини-программку, которая перенаправляет http запросы с броузеров
на локальный кеш и если там нет файла - запрашивает его через интернет.
Настройка веб-броузера: 127.0.0.1 порт: 8090
Всё работает неплохо, запросы получаю.. файл локальный отправить могу..
а вот с интернетом проблемка.
как сделать запрос в интернет через винсокет?
Новый винсок настраиваю порт 80 подключить..
SendData [копия запроса с броузера]
и пишет ошибка.. что я делаю не так?
Чуть позже нашёл готовый исходник:
http://www.sources.ru/vb/vb_personal_proxy_server.shtml
глянул.. а там явно не через сокет сделано, а не понятно через что конектиться к инету..
и только Http
Нужна поддержка соединения по всем протоколам..
элементарно перенаправлять запросы.
Ответы
Всего ответов: 25
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 16.02.06 06:55
Каким образом нужна поддержка всех протоколов, если ты перенаправляешь только http-запросы? Если нужен не только http-протокол, то http-прокси тебе не подойдет, нужен socks4|5
Номер ответа: 2
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #2
Добавлено: 16.02.06 16:02
Да, нужно только перенаправлять запросы.. прямо в интернет.. или на другой прокси сервер.
И поддерживать желательно все существующие протоколы: http, ftp, https...
а можно бодробней о socks4|5 ? где почитать?
нужен новый контрол? проблема в том, что VB .NET программы так просто не используешь.. чтобы всё могло запускаться на машинах с windows 98 и процессором 100 Mhz.. на крайний случай если нет другого выхода придёться делать под платформу .NET..
Пожалуцйста, подробней.. кто хоть что знает.. или есть исходники посмотреть? примеры кода?
Номер ответа: 3
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #3
Добавлено: 16.02.06 16:52
http://dasharm.com/modules.php?name=Articles&pa=showarticle&articles_id=14
Номер ответа: 4
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #4
Добавлено: 16.02.06 17:16
юзай вбсокет, который ДаШарм делал... Тем кажись сокс 4 реализован...
Открываешь порт, в всё что в него приходит, отправляешь на другой порт
(который в инет открыт), всё что придёт на этот другой отправляешь на
тот первый...
Номер ответа: 5
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #5
Добавлено: 16.02.06 20:24
ага, итересно.. почитал, сча попробую..
но нужно иметь сервер на socks4
но допустим хочу сделать так:
комп и модем через телефон.
что и куда отправлять в таком случае, чтобы напрямую взять страницу с инета по любому протоколу?
Номер ответа: 6
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #6
Добавлено: 16.02.06 23:02
понятно... Пока не вижу тему для разговора, "что и куда" не катит же,
сам понимаешь - rtfm ...
Номер ответа: 7
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #7
Добавлено: 17.02.06 01:31
тогда пишу подробней:
элементарно, компьютер + обычный телефонный модем,
подключаюсь через модем в инет.
есть веб-броузер к примеру Опера, настроки соеинения: lokalhost: порт 8090
есть моя тестовая программа "мини-прокси-сервер"
которая через отдельные сокеты слушает порт 8090 и устанавливает с ними связь.. и получает запросы от броузера скажем "GET http://vbnet.ru"
я этот запрос должен перенаправить в Интернет и получить страничку, чтобы передать броузеру.
Задача ясна? как это сделать, причём протокол должен работать не только с http, но и с ftp, https и т.д.
Номер ответа: 8
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #8
Добавлено: 17.02.06 15:19
"как это сделать" - молча, руками... Читай статьи про сеть, винсок,
винсок поймёшь, значит и вбсокет поймёш... а там уже и сам разберёшся
как всё связять... смысл я рассказывал, могу ещё раз
Есть 2 компа, неважно как они связаны между собой, и как один из них
подключён к интернету, главное IP, Port... Предположим что у компов
сетевые IP 192.168.1.1 192.168.1.2 соответственно. Компьютер с
192.168.1.2 имеет доступ к интернету. Рассматриваю пример с протоколом
http. Не важно какой протокол, главно на каждый протокол юзать разные
порты. Итак, 192.168.1.2 открывает порт для обмена данными с
192.168.1.1, например путь это будет порт 666, он будет для http.
Работаем через сокс4, юзаем контрол ДаШарма, скачать можно на dasharm.com.
192.168.1.2 открывает и слушает 666. 192.168.1.1 подключается к этому порту, и
что-то туда отправляет, в нашем случае это команды http протокола...
192.168.1.2 принимает эти команды... Чуть чуть распарсить придётся, а
именно найти к чему GET... Подключаемся через другой контрол, к тому
сайту на 80-ый, и отправляем ему всё что пришло в 666... Слушаем что
нам ответят, и всё что ответят отправляем назад к 192.168.1.2 в 666.
Вот в краце суть.
Номер ответа: 9
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #9
Добавлено: 17.02.06 21:07
как работать с винсок я прекрасно знаю..
и статью о сокс4 тоже читал тоже, всё понял..
но пробелма в том.. что IP адрес своего компьютера я знаю, его лекого определить, когда комп выходит в инет. а вот IP адрес компьютера провайдера через который идёт инет по телефону - не знаю ( и как узнать тоже(
Номер ответа: 10
Автор ответа:
[root]
Вопросов: 45
Ответов: 1212
Web-сайт:
Профиль | | #10
Добавлено: 17.02.06 21:41
http://www.sources.ru/vb/vb_personal_proxy_server.shtml
Номер ответа: 11
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #11
Добавлено: 18.02.06 00:23
ага, понятно, нужно запросы отправлять через имя DNS, типа vbnet.ru порт: 80
и работать напрямую..
Номер ответа: 12
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #12
Добавлено: 18.02.06 00:49
Не слушайте не получаеться даже соединиться, интернет работает нормально..
Winsock3.Connect "rambler.ru", "80"
Номер ответа: 13
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #13
Добавлено: 18.02.06 01:14
вернее приём информации - постоянные глюки..
не с первого раза коннектиться.. никогда страничка 100% не загружаеться.. Выскакивают сообшения Error
Номер ответа: 14
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #14
Добавлено: 18.02.06 10:25
Номер ответа: 15
Автор ответа:
Apache2
ICQ: 162823477
Вопросов: 31
Ответов: 114
Профиль | | #15
Добавлено: 18.02.06 15:53
чем и как? это для меня новое.