Драйвер lwIP для модуля WiFi через PPP - Как указать Wi-Fi соединение вверх / вниз? - PullRequest
0 голосов
/ 04 марта 2020

Я использую Wi-Fi-модуль uBlox Nina W13 с подключением UART к микроконтроллеру. Я перевел модуль в режим PPP и использую IP-стек lwIP через PPPoS. После установления связи PPP с модулем я могу отправлять AT-команды модулю через UDP-порт 23 для настройки и активации сети WiFi. Итак, сетевой стек, PPP и, что удивительно, мой код все работают!

lwIP имеет функции netif_set_up и netif_set_link_up, которые могут вызываться драйвером. При использовании PPPoS кажется, что флаги, обычно устанавливаемые этими функциями, автоматически устанавливаются после завершения согласования PPP. Неплохо, так как они должны быть настроены на использование UDP на канале PPP.

Таким образом, для lwIP мой сетевой интерфейс является действующим и работающим inte rnet соединением в момент соединения PPP. , Тем не менее, он не имеет доступа inte rnet, пока сеть Wifi не будет фактически подключена к шлюзу. Я получаю указания, когда WiFi подключается / отключается, что я могу использовать. Я не хочу, чтобы этот сетевой интерфейс использовался для inte rnet traffi c, пока WiFi не подключен. Обратите внимание, что у меня есть другие сетевые интерфейсы, которые следует использовать вместо этого.

Мой вопрос: как я могу указать lwIP, что этот сетевой интерфейс не имеет соединения inte rnet, доступного до тех пор, пока не будет подключена сеть WiFi?

Должен ли я сделать что-то вроде установки IP-адресов шлюза и DNS на 0.0.0.0 до тех пор, пока WiFi не будет подключен?

...