• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Подключение к интернету

ESP-01S

Member
Заранее извиняюсь за ОченьМногоБукв, но уже неделю пытаюсь разобраться - опишу ситуацию как можно более подробно.
Подскажите, где грабли:

Основной доступ в интернет организован в связке: конечное устройство -> ноутбук с поднятой Wifi-точкой доступа -> USB-3G-модем -> интернет.

Параметры точки доступа на ноуте:
ip 169.254. 98. 205
маска 255.255.255.0

На ноуте установил DHCP-сервер. Проверил на телефоне - работает, IP назначаются, доступ в интернет есть.

Есть заведомо рабочая сборка UNO+ESP-01s с рабочим кодом:



Код:
    #include <ESP8266WiFi.h>
                 
    const char* ssid     = "FastWifi";
    const char* password = "12345678";
    const char* host = "123.123.123.123" // можно буквенный, например abc.ru;
             
    void setup() {
     Serial.begin(9600);
     WiFi.mode(WIFI_STA);
     WiFi.begin(ssid, password);

     while (WiFi.status() != WL_CONNECTED)
     {
     Serial.print(".");
     delay(500);
     }
     Serial.println("");
     Serial.print("Connected to ");
     Serial.println(ssid);
     Serial.print("IP address: ");
     Serial.println(WiFi.localIP());
    }
         
    void loop()
    {
     WiFiClient client;
     if (client.connect(host, 80))
     {
      client.print( "GET /_get.php?");
      client.print("test=privet_" + (String)random(10, 99) + "&pwd=1001qwe1001");
      client.println( " HTTP/1.1");
      client.print( "Host:" );
      client.println(host);
      client.println( "Connection: close" );
      client.println();
      client.flush();
      Serial.println("Send OK");
      delay(1000);
     }
     else {
     Serial.println("Connection ERROR");
     delay(500);
    }



А теперь, "уважаемые знатоки, внимание вопрос":
Почему ESP нормально функционирует при подключении через точку доступа с телефона и ни в какую не желает работать через ноутбук???

Грешил на настройки сети, мол DHCP неправильные данные выдал.
Не вопрос - укажем жестко:



Код:
IPAddress ip(169, 254, 98, 255); //статический IP
    IPAddress gateway(169, 254, 98, 205);
    IPAddress subnet(255, 255, 0, 0);
    IPAddress dns1(169, 254, 98, 205);
    IPAddress dns2(8, 8, 8, 8);
 
    WiFi.config(ip, gateway, subnet, dns2, dns1);
пробовал варианты:

Код:
WiFi.config(ip, gateway, subnet, dns1);
    WiFi.config(ip, gateway, subnet, dns2);
    WiFi.config(ip, gateway, subnet, dns1, dns2);

Firewall (ESET) отключен, деньги на интернете проверил, пыль на ноуте протирал и даже в розетку включил ... )))

В итоге те же яйца, только в профиль - в ответ получаю "Connection ERROR".

Подскажите, где та собака порылась?
 

Юрий Ботов

Moderator
Команда форума
Ответ видимо надо искать в протоколах авторизации... каковы они у вас на ноутах?
 

pvvx

Активный участник сообщества
Параметры точки доступа на ноуте:
ip 169.254. 98. 205
маска 255.255.255.0

Код:
IPAddress ip(169, 254, 98, 255); //статический IP
    IPAddress gateway(169, 254, 98, 205);
    IPAddress subnet(255, 255, 0, 0);
    IPAddress dns1(169, 254, 98, 205);
    IPAddress dns2(8, 8, 8, 8);
 
    WiFi.config(ip, gateway, subnet, dns2, dns1);
1. Разная subnet_mask.
2. ip выбран 'широковещательный' :)
Подскажите, где та собака порылась?
1. Возможно в route. Для win есть команда [inline]route PRINT[/inline]
Лучше вывод послать в файл [inline]route PRINT > r.txt[/inline] и показать, что там творится... иначе только гадать.
2. Смарт может работать через шлюз по ipv6...
 

ESP-01S

Member
"И это правильный ответ! Счет становится 6:0 в пользу команды знатоков"

А теперь, с вашего позволения, подробности и разбор полетов.

Изначальный route print выдавал:
Код:
===========================================================================
Список интерфейсов
31...2e 60 76 71 84 86 ......Microsoft Virtual WiFi Miniport Adapter #4
23...58 2c 80 13 92 63 ......Remote NDIS based Internet Sharing Device #8
11...0c 60 76 71 84 86 ......Qualcomm Atheros AR5B95 Wireless Network Adapter
  1...........................Software Loopback Interface 1
28...00 00 00 00 00 00 00 e0 Адаптер Microsoft 6to4 #2
27...00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP #2
26...00 00 00 00 00 00 00 e0 Туннельный адаптер Microsoft Teredo
30...00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP #4
29...00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP
===========================================================================

IPv4 таблица маршрута
===========================================================================
Активные маршруты:
Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
          0.0.0.0          0.0.0.0      192.168.1.1      192.168.1.2      2
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
      169.254.0.0      255.255.0.0         On-link    169.254.98.205    281
   169.254.98.205  255.255.255.255         On-link    169.254.98.205    281
  169.254.255.255  255.255.255.255         On-link    169.254.98.205    281
      192.168.0.0      255.255.0.0         On-link       192.168.1.2    257
      192.168.1.2  255.255.255.255         On-link       192.168.1.2    257
  192.168.255.255  255.255.255.255         On-link       192.168.1.2    257
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link    169.254.98.205    281
        224.0.0.0        240.0.0.0         On-link       192.168.1.2    257
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link    169.254.98.205    281
  255.255.255.255  255.255.255.255         On-link       192.168.1.2    257
===========================================================================
Постоянные маршруты:
  Сетевой адрес            Маска    Адрес шлюза      Метрика
          0.0.0.0          0.0.0.0      192.168.1.1       1
===========================================================================

IPv6 таблица маршрута
===========================================================================
Активные маршруты:
Метрика   Сетевой адрес            Шлюз
26     58 ::/0                     On-link
  1    306 ::1/128                  On-link
26     58 2001::/32                On-link
26    306 2001:0:34d1:3f1c:14d8:802:3f57:fefd/128
                                    On-link
26    306 fe80::/64                On-link
26    306 fe80::14d8:802:3f57:fefd/128
                                    On-link
  1    306 ff00::/8                 On-link
26    306 ff00::/8                 On-link
===========================================================================
Постоянные маршруты:
  Отсутствует

После того, как стал разбираться с
1. Разная subnet_mask.
2. ip выбран 'широковещательный' :)
и заменил IP на 192.168.2.1 / 255.255.0.0 все превосходно заработало.

Теперь route print выдает следующее:
Код:
===========================================================================
Список интерфейсов
31...2e 60 76 71 84 86 ......Microsoft Virtual WiFi Miniport Adapter #4
23...58 2c 80 13 92 63 ......Remote NDIS based Internet Sharing Device #8
11...0c 60 76 71 84 86 ......Qualcomm Atheros AR5B95 Wireless Network Adap
  1...........................Software Loopback Interface 1
28...00 00 00 00 00 00 00 e0 Адаптер Microsoft 6to4 #2
27...00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP #2
26...00 00 00 00 00 00 00 e0 Туннельный адаптер Microsoft Teredo
30...00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP #4
29...00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP
===========================================================================

IPv4 таблица маршрута
===========================================================================
Активные маршруты:
Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрик
          0.0.0.0          0.0.0.0      192.168.1.1      192.168.1.2      2
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
      192.168.0.0      255.255.0.0         On-link       192.168.1.2    257
      192.168.0.0      255.255.0.0         On-link       192.168.2.1    281
      192.168.1.2  255.255.255.255         On-link       192.168.1.2    257
      192.168.2.1  255.255.255.255         On-link       192.168.2.1    281
  192.168.255.255  255.255.255.255         On-link       192.168.1.2    257
  192.168.255.255  255.255.255.255         On-link       192.168.2.1    281
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link       192.168.2.1    281
        224.0.0.0        240.0.0.0         On-link       192.168.1.2    257
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link       192.168.2.1    281
  255.255.255.255  255.255.255.255         On-link       192.168.1.2    257
===========================================================================
Постоянные маршруты:
  Сетевой адрес            Маска    Адрес шлюза      Метрика
          0.0.0.0          0.0.0.0      192.168.1.1       1
===========================================================================

IPv6 таблица маршрута
===========================================================================
Активные маршруты:
Метрика   Сетевой адрес            Шлюз
  1    306 ::1/128                  On-link
  1    306 ff00::/8                 On-link
===========================================================================
Постоянные маршруты:
  Отсутствует

А теперь можно подробнее, в чем была суть проблемы?
Из-за чего "широковещательный" IP не позволял нормально работать?

Ответ видимо надо искать в протоколах авторизации... каковы они у вас на ноутах?
Фразу про протоколы авторизации мне уже говорили в офлайне, но я ее не понял.
Можно подробнее - о чем идет речь: что за авторизация и какие протоколы?

В итоге всем огромное спасибо - вопрос решился, правда пока непонятны его, вопроса то-есть, причины .
 

Юрий Ботов

Moderator
Команда форума
Рад что обошлось малой кровью :)

Фразу про протоколы авторизации мне уже говорили в офлайне, но я ее не понял.
Можно подробнее - о чем идет речь: что за авторизация и какие протоколы?
Если коротко, то: бывают сети wifi общедоступные (теоретически, не одну такую не видел, хотя вру... формально сеть московского транспорта/метро - общедоступная, а защита там производится другими средствами) - к которым можно подключаться без ввода пароля, а бывают защищенные, для доступа к которым нужен пароль. В них для обмена ключами клиента и точки доступа используются разные протоколы авторизации. Исторически это был WEP но его быстро сломали и ему на замену пришли WPA а затем и WPA2. Есть и другие. Причем внутри одного и того же допустим WPA2 могут использоваться разные стандарты шифрования: AES, TLS... Так вот, бывает что оконечное оборудование не может работать с TLS а в роутер работает только с ним,а AES запрещен с точки зрения безопасности... Ну и прочие фокусы из за того что роутер и клиент общаются как бы на разных языках.
 
Сверху Снизу