|
19 / 19 / 5
Регистрация: 05.12.2008
Сообщений: 157
|
|
Туннелирование сокетами, разных протоколов16.06.2012, 09:51. Показов 2688. Ответов 3
Метки нет (Все метки)
Здравствуйте многопочтенные!
Нужна ваша консультация, по реализации следующей задачи: Необходимо создать туннелирование пакетов, если конкретно, то IPv6 заголовок + Данные упаковывается в заголовок IPv4 и передается по UDP. Приемник пакета делает декапсуляцию и получает IPv6'й пакет. Задумал это сделать через сокеты, на Linux. Закопавшись в литературу и кучу мануалов до сих пор для себя не осознал решения. Думалось практически это реалезуется благодаря низкоуровневым сокетам (SOCK_RAW), где получится указывать в заголовках маркеры фрагментации и туннеля. Но мало того что про низкоуровневые сокеты очень мало материала, по SOCK_RAW для IPv6 совершенно ни чегошеньки не нашел. После того как натыкнулся в книге на текст: "Структуры адреса сокета используются только на данном узле: сама структура не передается между узлами, хотя определенные поля (например IP-адреса и порта) используются для соединения." Совершенно отчаялся и решил спросить у Вас, реально ли то что я хочу через сокеты, какие могут быть альтернативы в принципе (кроме сокетов, мало себе представляю сетевое программирование). Подскажите Литературу, ссылки, любая информация будет полезной ибо сроки как всегда жмут. Заранее большое спасибо. Добавлено через 13 часов 0 минут Товарищи! Кажется нашёл способ тунелирования через сокеты, путём сериализации. К сожалению пока что рабочего кода нет, у кого есть идеи, пожалуйста делитесь. В итоге, создается два сокета, AF_INET и AF_INET6; Сокет AF_INET6 проходит сериализацию (перевод структуры адреса и сокета в побитовую последовательность) + данные (скорей всего тоже икапсулированые). Полученый буфер естествеено маркеруется заголовками (объем данных, где заканчивается сокет, начинаются данные и т.д.), все это передается через сокет AF_INET, SOCK_DGRAM. На конечном узле переданый буфер десериализуется, по его части востонавливается struct in6_addr + данные. p.s. Пока есть клиент/сервер IPv6 и клиент/сервер IPv4, как сделаю сериализацию IPv6 и запихаю это в IPv4 - будет исходик, поделюсь = \ есть советы по приведению структуры в биты?
0
|
|
| 16.06.2012, 09:51 | |
|
Ответы с готовыми решениями:
3
Туннелирование MySqlConnection ssh-туннелирование |
|
19 / 19 / 5
Регистрация: 05.12.2008
Сообщений: 157
|
|||||||||||
| 18.06.2012, 01:21 [ТС] | |||||||||||
|
Друзья есть наброски, каждую строку комментировал как осознал, пожалуйста оцените если где не так понимаю поправьте, буду рад.
С сериализацией задачка для меня пока слижком сложная, по срокам не успеваю разобраться, решил попробовать воспользоваться memcpy. В итоге столкнулся с проблемой, что структура упакованая в массив есть, она печатается со стороны клиента. Со стороны сервера этот массив должен приниматься, но судя по выводу ничего нет, пусто. Пожалуйста помогите. Клиент:
Сервер:
0
|
|||||||||||
|
19 / 19 / 5
Регистрация: 05.12.2008
Сообщений: 157
|
|
| 18.06.2012, 19:10 [ТС] | |
|
Спасибо, Van111. Пристально изучим.
Люди добрые посоветуйте, принцип сериализации, в интернете их много хочу Вашего совета, для передачи структуры по сети. Альтернативы методу memcpy есть? По возможности на «пальчиках» показать, было бы тогда все значительно оперативней ^_^
0
|
|
| 18.06.2012, 19:10 | |
|
Помогаю со студенческими работами здесь
4
Туннелирование через SSH Реферата по теме. Электропроводность в аморфных сверхрешетках. Резонансное туннелирование и прыжковая подвижно
Redistribute Протоколов Стек протоколов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|