The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
UDP через SOCKS5, !*! WeSTMan, 20-Июн-20, 13:02  [смотреть все]
Всем привет. Не могу понять почему не работает UDP через SOCKS5. Что я делаю:

Я соединяюсь с SOCKS сервером и говорю, что хочу сделать UDP ASSOCIATE. В ответ на это SOCKS высылает IP и Port - куда можно слать UDP.

Я генерирую UDP пакет на этот адрес и порт с содержимым:

2 байта резерв

1 байт - фрагмент

1 байт - протокол ipv4

4 байта IP адрес куда надо отправить UDP с SOCKS

2 байта - порт куда отправить

3 байта - данные. В результате получился такой набор:

000001015f1f2e01029a313233

2 байта резерв + 1 фрагмент + ip = 95.31.46.1 + порт 666 + данные 123.

Все это дело отправляю на SOCKS5. Но к сожалению, на сервер 95.31.46.1:666 ничего не приходит.

Подскажите, пожалуйста, что я сделал неверно

  • UDP через SOCKS5, !*! Аноним, 14:26 , 20-Июн-20 (1)
    > Подскажите, пожалуйста, что я сделал неверно

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


  • UDP через SOCKS5, !*! Аноним, 14:31 , 20-Июн-20 (2)
    > 1 байт - фрагмент

    зачем там 01 стоит? если это начало большой датаграммы, что не влезла в один пакет, то должен быть последующий с увеличенным номером, и финальный с >=0x80

       Поле FRAG показывает, является ли эта датаграмма самостоятельной или
       же фрагментом. Если датаграмма - фрагмент, то установленный старший
       бит является признаком последнего фрагмента, в то время как значение
       X'00' показывает, что это обычная датаграмма. Значения от 1 до 127
       обозначают на позицию фрагменте в последовательности. Каждый
       получатель будет иметь REASSEMBLY QUEUE (очередь сборки) и REASSEMBLY
       TIMER (таймер сборки) связанные с такой фрагментной датаграммой.
       Очередь сборки должна быть переинициализирована и связанные с ЙЙней
       фрагменты выкинуты всякий раз при истечении таймера сборки или
       с приходом новой датаграммы, чье значение в поле FRAG меньше,
       чем наибольшее значение поля FRAG датаграмм, обработанных
       при сборке фрагмента. Таймер сборки должен быть не менее 5 секунд.
       Приложениям рекомендуется избегать фрагментацию везде, где только
       это возможно.

       Реализация фрагментации опциональна, в реализациях где фрагментация
       не поддерживается, должны отбрасываться любые датаграммы, у которых
       поле FRAG отлично от X'00'.

    • UDP через SOCKS5, !*! WeSTMan, 14:55 , 20-Июн-20 (3)
      >[оверквотинг удален]
      >    с приходом новой датаграммы, чье значение в поле FRAG
      > меньше,
      >    чем наибольшее значение поля FRAG датаграмм, обработанных
      >    при сборке фрагмента. Таймер сборки должен быть не менее
      > 5 секунд.
      >    Приложениям рекомендуется избегать фрагментацию везде, где только
      >    это возможно.
      >    Реализация фрагментации опциональна, в реализациях где фрагментация
      >    не поддерживается, должны отбрасываться любые датаграммы, у которых
      >    поле FRAG отлично от X'00'.

      Выставил фрагмент в 00, все заработало. Спасибо. Истина так близко была)




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру