ESP8266 mDNS

摘要:
在ESP8266中使用ESP作为Web服务器时,很难记住ESP8266的IP地址,并且在DHCP模式下很难识别ESP的IP地址。大多数ESP8266应用程序没有显示界面,并且不容易访问以了解其IP地址。多播DNS名称的主要优点是它们几乎不需要管理或配置来设置它们,它们在没有基础设施时工作,并且它们在基础设施故障期间工在ESP8266上使用本地网络中的mDNS使用ESP8266的mDNS程序该程序创建ESP8266mDNS,名称为esp8266MDNS.begin/**Circuits4you.com*mDNSexampleESP8266inArduinoIDE*AfterconnectingtoWiFirouterenteresp8266.localinwebbrowser*/#include#include#includeconstchar*wifiName="circuits4you.com";constchar*wifiPass="your_password";ESP8266WebServerserver;//HandleshttprequestvoidhandleRoot(){digitalWrite(2,0);//Blinksonboardledonpagerequestserver.send(200,"text/plain","hellofromesp8266!esp8266.local重要说明:Android操作系统不支持mDNS。这样你就可以在笔记本电脑上获得ESP8266的ip。

https://circuits4you.com/2017/12/31/esp8266-mdns/

本教程介绍如何使用ESP8266进行多播DNS?在网络世界中,很难记住每个网站和计算机的IP地址,解决这个问题域名系统(DNS)用于制作人类可理解的名称。在ESP8266中使用ESP作为Web服务器时,很难记住ESP8266的IP地址,并且在DHCP模式下很难识别ESP的IP地址。即WiFi路由器为ESP8266分配IP地址。大多数ESP8266应用程序没有显示界面,并且不容易访问以了解其IP地址。为了克服这个问题,使用mDNS。

什么是mDNS?

有关mDNS的更多信息,请阅读RFC6762

随着联网设备变得更小,更便携和更普遍,使用配置较少的基础设施进行操作的能力变得越来越重要。特别是,在没有传统的托管DNS服务器的情况下查找DNS资源记录数据类型(包括但不限于主机名)的能力是有用的。

多播DNS(mDNS)提供在没有任何传统单播DNS服务器的情况下在本地链路上执行类似DNS的操作的能力。此外,多播DNS指定DNS名称空间的一部分可供本地使用,无需支付任何年费,也无需设置授权或以其他方式配置传统DNS服务器来回答这些名称。

多播DNS名称的主要优点是

  1. 它们几乎不需要管理或配置来设置它们,
  2. 它们在没有基础设施时工作,并且
  3. 它们在基础设施故障期间工

在ESP8266上使用本地网络中的mDNS

使用ESP8266的mDNS程序

该程序创建ESP8266 mDNS,名称为esp8266MDNS.begin(“esp8266”)

/*
 * Circuits4you.com
 * mDNS example ESP8266 in Arduino IDE
 * After connecting to WiFi router enter esp8266.local in web browser
*/
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
const char* wifiName = "circuits4you.com";
const char* wifiPass = "your_password";
ESP8266WebServer server(80);
//Handles http request 
void handleRoot() {
  digitalWrite(2, 0);   //Blinks on board led on page request 
  server.send(200, "text/plain", "hello from esp8266!");
  digitalWrite(2, 1);
}
// the setup function runs once when you press reset or power the board
void setup() {
  Serial.begin(115200);
  delay(10);
  // We start by connecting to a WiFi network
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(wifiName);
  WiFi.begin(wifiName, wifiPass);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());   //You can get IP address assigned to ESP
   if(WiFi.status() == WL_CONNECTED) //If WiFi connected to hot spot then start mDNS
  {
    if (MDNS.begin("esp8266")) {  //Start mDNS with name esp8266
      Serial.println("MDNS started");
    }
  }
  server.on("/", handleRoot);  //Associate handler function to path
  server.begin();                           //Start server
  Serial.println("HTTP server started");
}
// the loop function runs over and over again forever
void loop() {
  server.handleClient();
}

上传此程序后打开串口监视器,看看一切正常。

ESP8266 mDNS第1张

然后打开Web浏览器并在地址栏中输入esp8266.local确保您打开Web浏览器的esp和笔记本电脑(不是ANDROID PHONE)使用相同的WiFi网络。

DNS系统有www.xyzabc.com这样的名字。但是当你使用mDNS时,本地DNS系统没有任何DNS服ESP8266 mDNS第2张

务器。你必须在那个点(。)local之后输入域名。恩。esp8266.local

重要说明:Android操作系统不支持mDNS。您必须在手机中使用IP地址。要解决此问题,请在网页中显示IP地址。这样你就可以在笔记本电脑上获得ESP8266的ip。

免责声明:文章转载自《ESP8266 mDNS》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【转】CSS浏览器兼容性与解析问题终极归纳Dockerfile下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQL 错误代码汇总

0 操作成功完成。 1 功能错误。 2 系统找不到指定的文件。 3 系统找不到指定的路径。 4 系统无法打开文件。 5 拒绝访问。 6 句柄无效。 7 存储控制块被损坏。 8 存储空间不足,无法处理此命令。 9 存储控制块地址无效。 10 环境错误。 11 试图加载格式错误的程序。 12 访问码无效。 13 数据无效。 14...

windows下查看rabbitmq服务是否启动

1、命令行进入rabbitmq的安装目录下: 如下图1步骤 2、输入命令 rabbitmqctl1 status 如下图2步骤 3、有时会提示报错,如步骤3 解决办法:   我的电脑 ==》 右键 == 》 管理(或者 win + E 键 ,对此电脑右键管理 也可以)弹窗如下:  关闭然后重启服务就行。...

VirtualBox安装Ubuntu

一、VirtualBox下载1、进入VirtualBox官网:www.virtualbox.org 2、下载安装包和扩展包 二、Ubuntu下载1、Ubuntu中国:https://cn.ubuntu.com/ 三、VirtualBox中安装Ubuntu1、安装VirtualBox 2、启动virtualBox --> 管理 --> 全局...

adb 通过局域网 连接并操作手机

https://www.jianshu.com/p/17458496edd3 提炼一下: 前提:保证电脑手机处于同一局域网,可以电脑开启wifi给手机连接。 1.通过usb连接手机 2.adb -s 23c6a4470203 tcpip 13001 # 给对应的设备指定端口号 3.adb -s 23c6a4470203 shell ifconfig wla...

Windows7 配置匿名Samba文件共享

1.环境 系统:Windows 7 SP1 IP:192.168.118.151 2.配置 计算机|管理|本地用户和组|用户|Guest-->去掉账户已禁用 cmd|gpedit.msc|本地计算机|计算机配置|Windows设置|安全设置|本地策略|用户权限分配|拒绝从网络访问这台计算机-->去掉Guest cmd|gpedit.msc|本...

CentOS7下简单几步操作自建DNS(使用coredns快速搭建简单dns服务器)

本文介绍了如何使用CoreDNS快速搭建一个简单DNS服务器,从而对CoreDNS有一个初步的认识。 1、下载coredns 通过coredns的github,下载coredns。coredns的release版本地址:https://github.com/coredns/coredns/releases 这里我下载的是当前最新版本——1.6.9:http...