1. 程式人生 > 其它 >202-CH579M學習開發-乙太網例程-DNS域名解析

202-CH579M學習開發-乙太網例程-DNS域名解析

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnCH579M" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

DNS是什麼

最開始的網路都是直接一個IP地址訪問,後來呢出現了域名訪問,比如baidu.com

然後記住哈,咱使用域名訪問,其實網路裝置會先根據這個域名找到對應的IP地址

然後再通過IP地址訪問.

怎麼通過域名找到IP地址呢? 就是訪問DNS伺服器.

DNS伺服器上記錄了所有域名對應的IP地址,訪問方式呢是UDP方式.埠號預設是53

假設我使用上面阿里的DNS伺服器,我想知道域名 mnif.cn對應的IP地址是多少

我就把mnif.cn這個字串封裝成DNS協議資料,然後通過UDP把資料傳送到223.5.5.5 埠:53

然後伺服器找到對應的IP並返回.

協議啥的自己去百度下.

測試本節程式碼

1.把這節的程式下載到開發板

2.連線路由器或者交換機

注意哈,連線的是 LAN埠

3.檢視串列埠列印的日誌

程式說明

1.為便於大家移植使用,我封裝了下

2.移植的話把下面的檔案放到自己的工程裡面

3.把超時檢測函式放到1ms定時器裡面輪行執行

4.把網路接收的資料丟給net_dns_socket_data 函式

5.假設要解析 mnif.cn這個域名

其它

如果要更改其它設定