1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/gnbdev-gnb_udp_over_tcp

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

GNB: децентрализованное VPN-решение с высокой степенью проникновения во внутреннюю сеть на основе P2P и трёхслойного сетевого обмена

GNB — это децентрализованное решение VPN с открытым исходным кодом, которое обеспечивает высокую степень проникновения во внутренние сети. Оно основано на технологии P2P (peer-to-peer) и трёхслойном сетевом обмене.

Узлы GNB обмениваются данными через протокол UDP (User Datagram Protocol). В некоторых сетевых средах маршрутизаторы или брандмауэры могут применять QOS (Quality of Service) к пакетам UDP. Чтобы решить эту проблему, можно использовать передачу данных GNB по каналу TCP (Transmission Control Protocol), что не требует изменения протокола связи GNB и повышает адаптивность сети GNB.

gnb_udp_over_tcp: сервис для пересылки пакетов UDP через канал TCP

gnb_udp_over_tcp — это сервис, который позволяет пересылать пакеты UDP через канал TCP. Он может использоваться для пересылки данных других сервисов, основанных на протоколе UDP.

Для демонстрации работы gnb_udp_over_tcp можно провести локальное тестирование с использованием netcat (nc):

  1. Запустить nc для прослушивания порта 7000 UDP:
nc -u -l 7000
  1. Запустить gnb_udp_over_tcp на TCP-порту, прослушивая порт 6000 TCP. Каждый подключённый к этому порту TCP-канал будет создавать UDP-сокет, образуя канал. Пакеты, полученные через TCP, будут отправляться на порт UDP 7000 на 127.0.0.1. Данные, полученные с порта UDP, будут отправлены обратно по TCP-каналу.
./gnb_udp_over_tcpt -t -l 6000 127.0.0.1 7000
  1. Запустить gnb_udp_over_tcp на UDP-порту, слушая порт 5001 UDP. Канал будет создан между портом UDP 5001 и портом TCP 6000 на 127.0.0.1. Пакеты, отправленные на порт TCP, будут перенаправлены на порт UDP на другом конце канала.
./gnb_udp_over_tcp -u -l 5001 127.0.0.1 6000
  1. Использовать nc для доступа к порту UDP 127.0.0.1:5001, чтобы проверить успешность пересылки данных.
nc -u 127.0.0.1 5001

Использование gnb_udp_over_tcp для передачи данных GNB

В демонстрационной среде используется удалённый узел GNB с IP-адресом 192.168.1.25 и портом UDP 9025. TUN-адрес GNB — 10.1.0.25. Конфигурационный файл удалённого узла GNB не требует изменений.

Сервер-посредник имеет IP-адрес 192.168.1.11. Для настройки используются следующие команды:

[gnb_1010]
    |
   udp 
    |
[udp_over_tcp udp:127.0.0.1:5001]    (./gnb_udp_over_tcp -u -l 5001 192.168.1.11 6000)
    |
   tcp
    |
[udp_over_tcp tcp:192.168.1.11:6000] (./gnb_udp_over_tcp -t -l 6000 192.168.1.25 9025)
    |
   udp 
    |
[gnb_1025  udp:192.168.1.25:9025]

На сервере-посреднике (192.168.1.11) выполняется команда:

./gnb_udp_over_tcp -t -l 6000 192.168.1.25 9025

Локальный IP-адрес — 192.168.1.10, TUN-адрес GNB — 10.1.0.10. В конфигурационном файле conf/1010/address.conf не следует настраивать i-тип узлов GNB. На локальном компьютере (192.168.1.10) выполняется следующая команда:

./gnb_udp_over_tcp -u -l 5001 192.168.1.11 6000

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

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

gnb_udp_over_tcp — это сервис, который разработан для GNB и обеспечивает переадресацию UDP-пакетов через TCP-канал. Развернуть Свернуть
AGPL-3.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/gnbdev-gnb_udp_over_tcp.git
git@api.gitlife.ru:oschina-mirror/gnbdev-gnb_udp_over_tcp.git
oschina-mirror
gnbdev-gnb_udp_over_tcp
gnbdev-gnb_udp_over_tcp
master