大量DNS请求无法响应,导致网页加载时间太长
Posted: Mon Jan 08, 2024 2:50 pm
我在ESP32S3上写了个小程序,让WiFi开始AP模式,然后运行REST server。我是用ESP-IDF 5.1.2写的额。这是我的Main函数
我遇到的问题是,网页加载的时间很长,一个2MB以下的网页需要加载20到30秒。
我用wireshark看了以后,发现主要是浏览器向ESP发送了很多DNS请求(端口 53),然后产生了很多ICMP的错误。程序里我只写了mdns来解析host的IP地址(端口5353)。
这个额外的延迟好像就是DNS引起的,我让WIFI运行STA模式,网页加载很快,没有问题。只有在AP模式下有这个问题。
请问这个问题怎么解决?谢谢
- void app_main(void)
- {
- nvs_flash_init();
- ESP_ERROR_CHECK(esp_netif_init());
- ESP_ERROR_CHECK(esp_event_loop_create_default());
- initialise_mdns();
- netbiosns_init();
- netbiosns_set_name(CONFIG_EXAMPLE_MDNS_HOST_NAME);
- wifi_init_softap();
- ESP_ERROR_CHECK(init_fs());
- ESP_ERROR_CHECK(start_rest_server(CONFIG_EXAMPLE_WEB_MOUNT_POINT));
- }
请问这个问题怎么解决?谢谢