Форум: "Сети";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];
Вниз
Как сделать туннель между двумя серверами? Найти похожие ветки
← →
RA81 © (2006-04-06 08:28) [0]Проблема возникла такая. Есть два сервера(1 и 2), между ними стоит фаервол который закрывает все протоколы в одну строну и пропускает некоторые в другую. То есть UDP закрыт напрочь в обе стороны. Открыт ТСР в одну сторону, то есть если запрос на создание соединения прийдет от сервера 2 то коннект произойдет и все ок, а если же запрос идет от сервера 1 то ничего не происходит. Так что имеем некую одностороннюю проводимость. Ну так вот... есть проблема передачи UDP пакетов с сервера 1 на сервер 2 и обратно. Подробнее: сервер 1 рассылает UDP пакеты по адресатам но поскольку ip адреса принадлежащие домену под сервером 2 закрыты фаерволом то фаер не пускает туда ничего. Есть задумка отлавливать на сервере 1 пакеты у которых пункт назначения лежит за фаерволом, затем запаковывать их в ТСР пакеты и по заранее установленному соединению передавать на сервер 2 , где их переконверчивать обратно в UDP и посылать адресату. То есть получатель вообще не должен знать что получил пакеты таким путем, ему должно все быть прозрачно....законнектился мол на нужный ip и работаешь.
Предположительно нужно создать программу сервер и клиента. программа-сервер будет принимать соединения от клиентов и передавать данные через фаервол. То есть пользователь запускает программу клиент, она ловит пакеты на нужном порту с нужным адресом назначения и создает ТСР соединение на программу сервер (которая стоит на сервере 2), пойманные пакеты программа-клиент заворачивает в ТСР пакет и передает программе-серверу. Затем программа-сервер передает ТСР пакеты через фаервол на программу сервер которая стоит на сервере 1. Далее пакеты разворачиваются и передаются по нужному адресу и порту. Такая вот схемка выходит.
Возможен вариант конечно когда программа клиент сразу делает ТСР коннект на прогу-сервер 1, то есть напрямую через фаервол. Стоит заметить что скорость сети между сервером 1 и 2 ниже чем в локальных областях.
Проблема состит в том что нужно обеспечить высокую скорость передачи данных...задержка должна быть не более 25-30 милисекунд. Пинг между серверами 1 и 2 где то 2 милисек. если сеть не загружена.
Никогда таким не занимался. Не знаю стоитли возиться с компонентами делфи или сразу делать на API. Мастера подскажите с какого боку подойти к данной проблеме?
← →
RA81 © (2006-06-07 12:53) [1]нашел программу которая осуществляет нужное мне дело :). называется zebedee. Нашел чисто случайно когда уже писал руками.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.103 c