dmt0768 0 2 марта, 2021 Опубликовано 2 марта, 2021 · Жалоба Добрый день! Возникла трудность следующего характера. У меня есть одноплатный компьютер с Linux, не коммерческий, но пусть для примера-- Raspberry pi или Beaglebone. Назовём его Девайс. Необходимо, чтобы после подключения Девайса по USB к любому ПК с доступом в сеть у Девайса тоже появлялся этот доступ. Существует множество решений такой задачи, однако они все требуют от пользователя "ручного" внесения каких-то изменений в конфигурацию ПК. Я же хочу, чтобы эти изменения вносились автоматически после подключения Девайса по USB, например, с помощью программы, сохранённой в Девайсе. Участие пользователя нужно свести к минимуму. Один из подходящих способов -- Девайс должен притвориться компакт-диском, на который записан Autorun, но дальше этого понимания я пока что не ушёл и не знаю, как это реализовать. Вопрос мой в том, есть ли ещё какие-то варианты решения задачи? Возможно будут какие-либо советы по идее с компакт-диском и Autorun-ом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 2 марта, 2021 Опубликовано 2 марта, 2021 · Жалоба 12 minutes ago, dmt0768 said: не знаю, как это реализовать Composite gadget с RNDIS и MSD. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrBearManul 0 2 марта, 2021 Опубликовано 2 марта, 2021 · Жалоба 22 минуты назад, dmt0768 сказал: к любому ПК Ой. А если на ПК Mac OS или Linux (куча различных версий) или Windows (тут тоже версий немало)? Чисто технически как вы хотели бы угодить всем ПК и всем ОСям? Чисто теоретически тот же RNDIS, о котором вам выше сказали, может и не поддерживаться пок какой-то причине ПК. Вам придётся держать десятки различных драйверов... Но даже если вы и с этим справитесь, доверится ли пользователь установке вашего ПО в свою систему? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rkit 1 2 марта, 2021 Опубликовано 2 марта, 2021 · Жалоба 1 hour ago, dmt0768 said: Существует множество решений такой задачи А можно увидеть хоть один такой способ? Чтоб юсб слейв взял и получил ip. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 2 марта, 2021 Опубликовано 2 марта, 2021 · Жалоба 1 час назад, rkit сказал: А можно увидеть хоть один такой способ? Чтоб юсб слейв взял и получил ip Да этого-то как раз как грязи. Проблема в том, что компьютер сможет залезть на ваше устройство и устройство сможет залезть на компьюьер, но вот дальше, во внешний интернет, компьютер без настройки шлюза или NAT ваше устройство не выпустит. А настройка эта должна выполняться пользователем. Добавлено: видимо я неправильно понял вопрос. В этом и подобном примерах USB-устройство не получает IP, а само присваивает его виртуальной сетевой карте, появляющейся в компьютере. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rkit 1 2 марта, 2021 Опубликовано 2 марта, 2021 · Жалоба 7 hours ago, Сергей Борщ said: Да этого-то как раз как грязи. Это обратное - слейв выдает ip хосту. Доступа в интернет через хост у него нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 2 марта, 2021 Опубликовано 2 марта, 2021 · Жалоба 8 hours ago, Сергей Борщ said: Да этого-то как раз как грязи. Ну это как раз корявый способ. Человеку пришлось лезть в дивайсы и руками править настройки драйвера. У него неправильный дескриптор, поэтому винды автоматически и не подхватывают этот RNDIS Надо так как указано здесь - https://www.usb.org/defined-class-codes#anchor_BaseClassEFh Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rkit 1 3 марта, 2021 Опубликовано 3 марта, 2021 · Жалоба 8 hours ago, AlexandrY said: Ну это как раз корявый способ. Человеку пришлось лезть в дивайсы и руками править настройки драйвера. У него неправильный дескриптор, поэтому винды автоматически и не подхватывают этот RNDIS Надо так как указано здесь - https://www.usb.org/defined-class-codes#anchor_BaseClassEFh Тоже везде обратное написано - "Connecting a host to the Internet" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 4 марта, 2021 Опубликовано 4 марта, 2021 · Жалоба 02.03.2021 в 21:30, rkit сказал: Это обратное - слейв выдает ip хосту. Доступа в интернет через хост у него нет. Эти две вещи абсолютно не связаны. Просто на компе DHCP-колиент поднят по-умолчанию. Поднимите на компе DHCP-сервер, а на железке реализуйте DHCP-клиент и будет у вас железка получать адрес от компа. Но доступа в интернет у нее все равно не будет пока вы не настроите вручную на компе мост или шлюз между виртуальной сетевой картой железки и имеющей доступ в интернет сетевой картой. Как только настроите - "сразу польется вода". Это не так сложно - в XP, насколько помню, надо было в сетевых подключениях выделить две карты, вызвать контекстное меню и выбрать в нем что-то вроде "создать мост", а в gnome зайти в свойства сетевого подключения железки и вместо "DHCP" выбрать там "раздавать интернет". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rkit 1 4 марта, 2021 Опубликовано 4 марта, 2021 · Жалоба 8 minutes ago, Сергей Борщ said: Эти две вещи абсолютно не связаны. Ты собрался получить доступ в интернет без IP? Фига себе. 12 minutes ago, Сергей Борщ said: виртуальной сетевой картой железки Которой я пока так и не было показано в природе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 4 марта, 2021 Опубликовано 4 марта, 2021 · Жалоба 2 часа назад, rkit сказал: Ты собрался получить доступ в интернет без IP? Фига себе. А что не так? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 4 марта, 2021 Опубликовано 4 марта, 2021 · Жалоба 5 часов назад, rkit сказал: Ты собрался Что-то не припомню, что пил с вами, не говоря уже про "на брудершафт". 5 часов назад, rkit сказал: Которой пока так и не было показано в природе. Я писал для своей железки что-то подобное показанному по ссылке. Виртуальная сетевая карта в компе появляется. Маршрутизатор в компе тоже настраивал и воткнутая в эзернетовский разъем моего лаптопа железка получала от него локальный IP и ходила в интернет через его WiFi. Объединить эти два варианта - как два пальца. А вы можете и дальше рассуждать о том, что это невозможно. Тоже мне "крымский мост" нашли. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Baser 5 4 марта, 2021 Опубликовано 4 марта, 2021 · Жалоба А я желания ТС понял несколько по другому: железка не создает локальную сеть с получением IP, а прикидывается запущенным приложением на ПК, к которому подключена, и использует его IP. Железке только нужно как-то запустить приложение и получить порт для работы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 4 марта, 2021 Опубликовано 4 марта, 2021 · Жалоба 2 часа назад, Baser сказал: А я желания ТС понял несколько по другому: железка не создает локальную сеть с получением IP, а прикидывается запущенным приложением на ПК, к которому подключена, и использует его IP. Железке только нужно как-то запустить приложение и получить порт для работы. Если так, то: Создаём MSD. На нём диск. На диске - файл автозапуска. Файл автозапуска запускает приложение (с этого же диска), которое уже соединяется с прошивкой тем или иным способом (через control-ep0 например или иначе). По этому установленному каналу уже можно пробросить канал доступа к сети, к которой имеет доступ приложение на компе. В принципе то запущенное приложение может выполнять роль прокси-сервера для запросов через канал связи от устройства. Это под виндой конечно, про линух - не знаю можно ли так. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 4 марта, 2021 Опубликовано 4 марта, 2021 · Жалоба 3 hours ago, Baser said: А я желания ТС понял несколько по другому: железка не создает локальную сеть с получением IP, а прикидывается запущенным приложением на ПК, к которому подключена, и использует его IP. Железке только нужно как-то запустить приложение и получить порт для работы. TC очевидно же хотел чтобы дивайc выходил в интернет через путь: дивайс -> USB -> комп -> интернет. RNDIS в Win10 Home с правильным дескриптором подхватывается автоматом и начинает работать сразу. Маршрутизацию настраивать не надо и DHCP сервер в дивайсе не нужен. Просто у интернет соединения компа включаем шаринг на сетевой интерфейс RNDIS. Дивайсу даем адрес 192.168.137.2 и маску 255.255.255.000 и все, выход в интернет для дивайса открыт. Ну да, тут нужно ручками выбрать идентификатор RNDIS интерфейса, который в принципе не предсказуем и может меняться со временем. Но я б не полагался на autorun, его стандартно банят антивирусы. Естественней было бы из того же интернета кликнуть ссылку с конфигуратором. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться