Задача следующая, необходимо пробросить порт с клиента(серый ип) до сервера (белый ип), можно ли простым сокетом создать соединение от клиента до сервера и на стороне клиента проксировать траффик на необходимый порт (в теории звучит все ок, на практике какие могут проблемы с этим)? И если кто знает готовые решения был бы не против узнать VPN и SSH -R не предлагать, про них я уже слышал, хотелось бы просто свое решение независимое создать
Твоя проблема: "хочу увидеть серый ip". Она многократно освещалась. Ответ: туннели. Учитывая наличие сервера и что на embeded наверняка есть подходящие пакеты, то и подними vpn.
>хочу создать независимое решение"
Тебе шашечки или ехать? Можно конечно и костылить, но без причины лучше не стоит. Да и с костылями в итоге все равно сделаешь еще одну реализацию туннеля, которую поддерживать будешь лично ты и никто другой. Оно тебе надо?
key don, Да)) VPN и SSH клиенты я уже сделал (вернее скомпилировал), но хотелось бы реально свое решение какое-то, по интернету наткнулся на реализацию одну на Python, идея такая же. А так в целом хочется просто какой-то скилл поднять свой в Си, а то все в nodejs сижу (свои addonы туда не добавлял), поэтому мелкими шажками продвигаться думаю, выбрал наверняка сложную задачу, отсюда и пытаюсь понять заранее с чем можно столкнуться, какие сложности или если есть клиенты уже готовые, то посмотреть исходники к нему
Просто инициатором соединения должен быть клиент за nat. Типа он открывает соединение и в нем уже ждет команды от сервера.
Ну а "транспорт" команд - по вкусу от одиночных пакетов (ответы прилетят через nat) до persistent line любого типа... Хоть soap.