TCP/IP ретранслятор - что-то в этом духе

Компьютеры, программы, периферия, коммуникации, интернет, программирование и т.п. Ранее назывался Hard-n-Soft.
Сообщение
Автор
Wiz
ШИЗО
Благодарил (а): 45 раз
Поблагодарили: 34 раза

№ 0 Сообщение Wiz » 30 авг 2010 12:48

Помогите спецы.

Есть такая ситуация - на модеме открыт 80 порт, идет редирект на 192.168.1.75, где имеется HTTP-сервер.

Я хочу найти такую программу, которая принимала бы весь трафик с 80 порта, и потом половину абонентов например отсылала на 80 порт 192.168.1.76, а половину ну допустим на тот же 192.168.1.75 или 127.0.0.1 на порт 81 допустим.

И там и там тоже будут стоять HTTP-сервера

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 1 Сообщение Foil » 30 авг 2010 13:58

Зачем это нужно?
возможно есть другое решение вашей задачи.

Wiz
ШИЗО
Благодарил (а): 45 раз
Поблагодарили: 34 раза

№ 2 Сообщение Wiz » 30 авг 2010 14:00

чтобы трафик распределять между тремя компьютерами.

сейчас у меня HTTP-сервер установлен на 192.168.1.75

в модеме порт 80 открыт и связан с 192.168.1.75

можно открыть порт 81, 82 и так далее

но тогда придется в бразуре указывать явно этот порт http://zx3267.homeip.net:81

Wiz
ШИЗО
Благодарил (а): 45 раз
Поблагодарили: 34 раза

№ 3 Сообщение Wiz » 30 авг 2010 14:01

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

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 4 Сообщение Foil » 30 авг 2010 14:07

ваше решение кластер.
http://linux.yaroslavl.ru/docs/conf/cluster.html

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 5 Сообщение Foil » 30 авг 2010 14:19

Либо вот под виндой 2003
http://www.xakep.ru/post/43726/default.asp

Wiz
ШИЗО
Благодарил (а): 45 раз
Поблагодарили: 34 раза

№ 6 Сообщение Wiz » 30 авг 2010 14:37

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

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 7 Сообщение Foil » 30 авг 2010 15:19

нз
Закрылся осенью 2003 года.
Но Травов И.Ф. продолжил уже полностью самостоятельное обучение учеников.
Где сейчас он разместился не знаю.

Wiz
ШИЗО
Благодарил (а): 45 раз
Поблагодарили: 34 раза

№ 8 Сообщение Wiz » 30 авг 2010 15:20

а вы где сами обитаете ?

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 9 Сообщение Foil » 30 авг 2010 16:04

Жень, давно мы с тобой не виделись.
тема не про это ;-)

Rootz
Благодарил (а): 6 раз
Поблагодарили: 12 раз

№ 10 Сообщение Rootz » 30 авг 2010 16:39

0: Wiz:
а прокси сервер тебе в этом не поможет?

Wiz
ШИЗО
Благодарил (а): 45 раз
Поблагодарили: 34 раза

№ 11 Сообщение Wiz » 30 авг 2010 17:55

10: Rootz:

нет

souphead
Аватара пользователя
Благодарил (а): 3 раза
Поблагодарили: 10 раз

№ 12 Сообщение souphead » 01 сен 2010 02:34

11: Wiz:

Поможет. То, что ты описываешь и есть частный случай проксирования запросов.

А вот под вебприложения заточенный сильнее балансер - NGINX. В первую очередь под тобой описанные цели заточен.
http://sysoev.ru/nginx/

Весь мир юзает.

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 13 Сообщение Foil » 01 сен 2010 08:38

souphead писал(а):11: Wiz:

Поможет. То, что ты описываешь и есть частный случай проксирования запросов.

А вот под вебприложения заточенный сильнее балансер - NGINX. В первую очередь под тобой описанные цели заточен.
http://sysoev.ru/nginx/

Весь мир юзает.
Не нашел в описании, что он распределяет нагрузку на разные сервера. Прокси сервер - это не веб сервер.
Тут как я понял задача, стоит именно в разделении нагрузки одной машины с например апачем на два абсолютно зеркальных вебсерверов. Если так, то NGINX тут не поможет. Ему надо, чтобы люди из вне шли на его сервера по одному DNS адресу без всяких заморочек с портами при этом делилась нагрузка между серверами на выполнение запросов.

Wiz
ШИЗО
Благодарил (а): 45 раз
Поблагодарили: 34 раза

№ 14 Сообщение Wiz » 01 сен 2010 08:59

Тут как я понял задача, стоит именно в разделении нагрузки одной машины с например апачем на два абсолютно зеркальных вебсерверов. Если так, то NGINX тут не поможет. Ему надо, чтобы люди из вне шли на его сервера по одному DNS адресу без всяких заморочек с портами при этом делилась нагрузка между серверами на выполнение запросов.
да все верно.

для всех трех HTTP-серверов, которые допустим стоят у меня физически дома на трех разных компьютеров в сети должно быть абсолютно прозрачно.

То есть, человек из вне делает запрос

http://zx3267.homeip.net/distrib/file1.rar

например

на ADSL модеме открыт 80 порт, идет редирект на 192.168.1.75 порт 80 локальной сети.

программа на 192.168.1.75:80 ловит все входящие соединения.

При присоединении клиента, программа устанавливает связь с

192.168.1.76
или
192.168.1.77
или
127.0.0.1
на какой-то порт, и трафик идет уже туда
вобщем туманно все равно как-то :(

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 15 Сообщение Foil » 01 сен 2010 09:24

Помоему это можно еще реализовать через firewall.
Дома посмотрю, что может мой в этом плане.
Я так понял, что кластер тебе тоже не подходит из-за разнородности систем на твоих компах.

MilitaryJane
Аватара пользователя
Благодарил (а): 2 раза
Поблагодарили: 4 раза

№ 16 Сообщение MilitaryJane » 01 сен 2010 10:01

О да! Они нашли друг друга!

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 17 Сообщение Foil » 01 сен 2010 10:28

MilitaryJane пишет:
> О да! Они нашли друг друга!

Женя мой старый знакомый, то что с ним случилось ни кому не пожелаешь, но это тема не об этом.
Твои Татьяна реплики тут не уместны.

MilitaryJane
Аватара пользователя
Благодарил (а): 2 раза
Поблагодарили: 4 раза

№ 18 Сообщение MilitaryJane » 01 сен 2010 10:46

17: Foil:
:no-no:
Я ж по доброму)

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 19 Сообщение Foil » 01 сен 2010 10:55

MilitaryJane пишет:
> 17: Foil:
> :no-no:
> Я ж по доброму)
:-D Ок Извини.

AlexA

№ 20 Сообщение AlexA » 01 сен 2010 13:15

Wiz пишет:
> Помогите спецы.
>
> Есть такая ситуация - на модеме открыт 80 порт, идет редирект на 192.168.1.75, где имеется HTTP-сервер.
>
> Я хочу найти такую программу, которая принимала бы весь трафик с 80 порта, и потом половину абонентов например отсылала
> на 80 порт 192.168.1.76, а половину ну допустим на тот же 192.168.1.75 или 127.0.0.1 на порт 81 допустим.
>
> И там и там тоже будут стоять HTTP-сервера

Можно программку такую написать, к. будет учитывать текущую загрузку и раздавать входящие коннекты.
Можно KWF поставить и им рулить, только там нет правил по загрузке, можно по диапазону входящих IP-адресов или/и временному диапазону.
Ну и типа еще www.yandex.ru есть :)

Успехов

souphead
Аватара пользователя
Благодарил (а): 3 раза
Поблагодарили: 10 раз

№ 21 Сообщение souphead » 01 сен 2010 16:22

13: Foil:

Ну ты я чувствую во фронтэнд серверах разбираешься :D Ох уж эти мне сказочники. :lol:

Вот например готовый готовый конфиг для nginx, который именно это и будет делать.
Принимать http (и не только http, а все) запросы на порту 80 хоста, где он стоит и разбрасывать на хосты:

192.168.1.76 на порт 80 например
192.168.1.77 на порт 81 например
127.0.0.1 на порт 83 например.
А затем возвращать запросившему ему хосту ответ так, как будто сам хост дал ему ответ с порта 80.

И заметь, что в случае http, он при неправильном ответе сервера на бэкэнде он не просто вернет ошибку, а запросит у другого и всетаки отдаст запросившему результат.

# more /etc/nginx/nginx.conf
user nginx;
worker_processes 4;
error_log /var/log/nginx/error.log debug;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] $status '
'"$request" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
upstream chlenozad {
server 192.168.1.76:80;
server 192.168.1.77:81;
server 127.0.0.1:83;
}
server {
listen 80;
server_name _;
server_name_in_redirect off;
access_log /var/log/nginx/host.access.log main;
location / {
proxy_pass http://chlenozad;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 32K;
proxy_buffers 30 32K;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 10m;
}
}

}

souphead
Аватара пользователя
Благодарил (а): 3 раза
Поблагодарили: 10 раз

№ 22 Сообщение souphead » 01 сен 2010 16:45

Foil пишет:
> А вот под вебприложения заточенный сильнее балансер - NGINX. В первую очередь под тобой описанные цели заточен.
> http://sysoev.ru/nginx/

> Не нашел в описании, что он распределяет нагрузку на разные сервера.
Рид зе мануал, думай головой.

>Прокси сервер - это не веб сервер.

Правда ? :rollhappy:

:lol: Ты видимо из тех, кто свято верит, что задача прокси сервера инет раздавать юзверям и хостам внутри сети.

Так вот открою тебе секрет - это не так. В первую очередь прокси и создавались, как решение для публикации приложений расположенных внутри сети в интернет, причем пофиг каких приложений, в том числе и вебсерверов.
И любая нормальная прокся - это умеет. И балансировку нагрузки зачастую умеет.
А называть проксисервером шнягу, которая только инет раздает юзверям - смешно.

AlexA

№ 23 Сообщение AlexA » 02 сен 2010 07:36

souphead писал(а):Так вот открою тебе секрет - это не так. В первую очередь прокси и создавались, как решение для публикации приложений расположенных внутри сети в интернет, причем пофиг каких приложений, в том числе и вебсерверов.
Откуда столько умников? В ИТ есть такое понятие - PROXY, по русски это что-то типа: посредник.
Так вот изначально прокси-сервер - это был посредник между пользователями и веб-серверами с функциями кэширования,
обеспечения анонимности и т.п. Потом прокси-сервера в локальных сетках стали дополнительно нагружать функциями
firewall, NAT, DHCP, DNS, routera и т.д.

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 24 Сообщение Foil » 02 сен 2010 08:03

souphead писал(а):Foil пишет:
:lol: Ты видимо из тех, кто свято верит, что задача прокси сервера инет раздавать юзверям и хостам внутри сети.

Так вот открою тебе секрет - это не так. В первую очередь прокси и создавались, как решение для публикации приложений расположенных внутри сети в интернет, причем пофиг каких приложений, в том числе и вебсерверов.
И любая нормальная прокся - это умеет. И балансировку нагрузки зачастую умеет.
А называть проксисервером шнягу, которая только инет раздает юзверям - смешно.
ну и чушь ты написал ппц.
Алекс вот тебе уже ответил...

А по nginx коли он это умеет, то я думаю Женя попробует и отпишется!!!

maxs

№ 25 Сообщение maxs » 02 сен 2010 08:19

AlexA пишет:
>
souphead писал(а):Так вот открою тебе секрет - это не так. В первую очередь прокси и создавались, как решение для публикации
> приложений расположенных внутри сети в интернет, причем пофиг каких приложений, в том числе и вебсерверов.
>
> Откуда столько умников? В ИТ есть такое понятие - PROXY, по русски это что-то типа: посредник.
> Так вот изначально прокси-сервер - это был посредник между пользователями и веб-серверами с функциями кэширования,
>
> обеспечения анонимности и т.п. Потом прокси-сервера в локальных сетках стали дополнительно нагружать функциями
> firewall, NAT, DHCP, DNS, routera и т.д.

Ты и вправду в это веришь? :lol:

Foil,
слушай супа, он дело говорит.

Manfred
Аватара пользователя
Папараций
Благодарил (а): 811 раз
Поблагодарили: 876 раз

№ 26 Сообщение Manfred » 02 сен 2010 08:20

о, да тут холивар начинается :bud:

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 27 Сообщение Foil » 02 сен 2010 08:22

почитал мануал по nginx - действительно удачный пример.
Евгений давай тестируй!!!
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html
http://sysoev.ru/nginx

Foil
Благодарил (а): 1 раз
Поблагодарили: 11 раз

№ 28 Сообщение Foil » 02 сен 2010 08:29

maxs пишет:
> Foil,
> слушай супа, он дело говорит.

Если про nginx - то да действительно очень похоже, что это то что нужно Евгению.
Если про прокси, то тут он не прав. А почему не прав Алекс ему ответил.

maxs

№ 29 Сообщение maxs » 02 сен 2010 08:37

Ну ну, расскажи мне как в прокси встраивают NAT :lol:

Вернуться в «Компьютерный форум»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей