0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

為什么抓不到baidu的數(shù)據(jù)包?

小林coding ? 來(lái)源:小林coding ? 2023-01-05 10:43 ? 次閱讀

最近,有位讀者問(wèn)起一個(gè)奇怪的事情,他說(shuō)他想抓一個(gè)baidu.com的數(shù)據(jù)包,體驗(yàn)下看包的樂(lè)趣。

但卻發(fā)現(xiàn)“抓不到”,這就有些奇怪了。

我來(lái)還原下他的操作步驟。

首先,通過(guò)ping命令,獲得訪問(wèn)百度時(shí)會(huì)請(qǐng)求哪個(gè)IP。

$pingbaidu.com
PINGbaidu.com(39.156.66.10)56(84)bytesofdata.
64bytesfrom39.156.66.10(39.156.66.10):icmp_seq=1ttl=49time=30.6ms
64bytesfrom39.156.66.10(39.156.66.10):icmp_seq=2ttl=49time=30.6ms
64bytesfrom39.156.66.10(39.156.66.10):icmp_seq=3ttl=49time=30.6ms

從上面的結(jié)果可以知道請(qǐng)求baidu.com時(shí)會(huì)去訪問(wèn)39.156.66.10。

于是用下面的tcpdump命令進(jìn)行抓包,大概的意思是抓eth0網(wǎng)卡且ip39.156.66.10的網(wǎng)絡(luò)包,保存到baidu.pcap文件中。

$tcpdump-ieth0host39.156.66.10-wbaidu.pcap

此時(shí)在瀏覽器中打開(kāi)baidu.com網(wǎng)頁(yè)?;蛘咴诹硗庖粋€(gè)命令行窗口,直接用curl命令來(lái)模擬下。

$curl'https://baidu.com'

按理說(shuō),訪問(wèn)baidu.com的數(shù)據(jù)包肯定已經(jīng)抓下來(lái)了

然后停止抓包。

再用wireshark打開(kāi)baidu.pcap文件,在過(guò)濾那一欄里輸入http.host == "baidu.com"。

此時(shí)發(fā)現(xiàn),一無(wú)所獲。

fc284964-8c7f-11ed-bfe3-dac502259ad0.png在wireshark中搜索baidu的包,發(fā)現(xiàn)一無(wú)所獲

這是為啥?

到這里,有經(jīng)驗(yàn)的小伙伴,其實(shí)已經(jīng)知道問(wèn)題出在哪里了。

為什么沒(méi)能抓到包

這其實(shí)是因?yàn)樗L問(wèn)的是HTTPS協(xié)議的baidu.com。HTTP協(xié)議里的Host和實(shí)際發(fā)送的request body都會(huì)被加密。

正因?yàn)楸患用芰?,所以沒(méi)辦法通過(guò)http.host進(jìn)行過(guò)濾。

但是。

雖然加密了,如果想篩選還是可以篩的。

HTTPS握手中的Client Hello階段,里面有個(gè)擴(kuò)展server_name,會(huì)記錄你想訪問(wèn)的是哪個(gè)網(wǎng)站,通過(guò)下面的篩選條件可以將它過(guò)濾出來(lái)。

tls.handshake.extensions_server_name=="baidu.com"
fc3140be-8c7f-11ed-bfe3-dac502259ad0.png通過(guò)tls的擴(kuò)展server_name可以搜索到baidu的包

此時(shí)選中其中一個(gè)包,點(diǎn)擊右鍵,選中Follow-TCP Stream。

fc3a9da8-8c7f-11ed-bfe3-dac502259ad0.png右鍵找到tcp 流

這個(gè)TCP連接的其他相關(guān)報(bào)文全都能被展示出來(lái)。

fc425098-8c7f-11ed-bfe3-dac502259ad0.pngHTTPS抓包

從截圖可以看出,這里面完整經(jīng)歷了TCP握手TLS加密握手流程,之后就是兩段加密信息TCP揮手流程

可以看出18號(hào)和20號(hào)包,一個(gè)是從端口56028發(fā)到443,一個(gè)是443到56028的回包。

一般來(lái)說(shuō),像56028這種比較大且沒(méi)啥規(guī)律的數(shù)字,都是客戶端隨機(jī)生成的端口號(hào)。

443,則是HTTPS的服務(wù)器端口號(hào)。

HTTP用的是80端口,如果此時(shí)對(duì)著80端口抓包,也會(huì)抓不到數(shù)據(jù)。

粗略判斷,18號(hào)和20號(hào)包分別是客戶端請(qǐng)求baidu.com的請(qǐng)求包和響應(yīng)包。

點(diǎn)進(jìn)去看會(huì)發(fā)現(xiàn)URL和body都被加密了,一無(wú)所獲。

那么問(wèn)題就來(lái)了。有沒(méi)有辦法解密里面的數(shù)據(jù)呢?

有辦法。我們來(lái)看下怎么做。

解密數(shù)據(jù)包

還是先執(zhí)行tcpdump抓包

$tcpdump-ieth0host39.156.66.10-wbaidu.pcap

然后在另外一個(gè)命令行窗口下執(zhí)行下面的命令,目的是將加密的key導(dǎo)出,并給出對(duì)應(yīng)的導(dǎo)出地址/Users/xiaobaidebug/ssl.key。

$exportSSLKEYLOGFILE=/Users/xiaobaidebug/ssl.key

然后在同一個(gè)命令行窗口下,繼續(xù)執(zhí)行curl命令或用命令行打開(kāi)chrome瀏覽器。目的是為了讓curl或chrome繼承這個(gè)環(huán)境變量。

$curl'https://baidu.com'
或者
$open-aGoogleChrome#在mac里打開(kāi)chrome瀏覽器

此時(shí)會(huì)看到在/Users/xiaobaidebug/下會(huì)多了一個(gè)ssl.key文件。

這時(shí)候跟著下面的操作修改wireshark的配置項(xiàng)。

fc4b563e-8c7f-11ed-bfe3-dac502259ad0.png打開(kāi)wireshark的配置項(xiàng)

找到Protocols之后,使勁往下翻,找到TLS那一項(xiàng)。

fc51eddc-8c7f-11ed-bfe3-dac502259ad0.png在配置項(xiàng)中找到Protocols

將導(dǎo)出的ssl.key文件路徑輸入到這里頭。

fc5f3848-8c7f-11ed-bfe3-dac502259ad0.png在Protocols中找到TLS那一欄

點(diǎn)擊確定后,就能看到18號(hào)和20號(hào)數(shù)據(jù)包已經(jīng)被解密。

fc68f04a-8c7f-11ed-bfe3-dac502259ad0.png解密后的數(shù)據(jù)包內(nèi)容

此時(shí)再用http.host == "baidu.com",就能過(guò)濾出數(shù)據(jù)了。

fc75dc2e-8c7f-11ed-bfe3-dac502259ad0.png解密后的數(shù)據(jù)包中可以過(guò)濾出baidu的數(shù)據(jù)包

到這里,其實(shí)看不了數(shù)據(jù)包的問(wèn)題就解決了。

但是,新的問(wèn)題又來(lái)了。

ssl.key文件是個(gè)啥?

這就要從HTTPS的加密原理說(shuō)起了。

HTTPS握手過(guò)程

HTTPS的握手過(guò)程比較繁瑣,我們來(lái)回顧下。

先是建立TCP連接,畢竟HTTP是基于TCP的應(yīng)用層協(xié)議。

在TCP成功建立完協(xié)議后,就可以開(kāi)始進(jìn)入HTTPS階段。

HTTPS可以用TLS或者SSL啥的進(jìn)行加密,下面我們以TLS1.2為例。

總的來(lái)說(shuō)。整個(gè)加密流程其實(shí)分為兩階段。

第一階段是TLS四次握手,這一階段主要是利用非對(duì)稱加密的特性各種交換信息,最后得到一個(gè)"會(huì)話秘鑰"。

第二階段是則是在第一階段的"會(huì)話秘鑰"基礎(chǔ)上,進(jìn)行對(duì)稱加密通信。

fc7fb9ba-8c7f-11ed-bfe3-dac502259ad0.pngTLS四次握手

我們先來(lái)看下第一階段的TLS四次握手是怎么樣的。

第一次握手

  • ?Client Hello:是客戶端告訴服務(wù)端,它支持什么樣的加密協(xié)議版本,比如TLS1.2,使用什么樣的加密套件,比如最常見(jiàn)的RSA,同時(shí)還給出一個(gè)客戶端隨機(jī)數(shù)。

第二次握手

  • ?Server Hello:服務(wù)端告訴客戶端,服務(wù)器隨機(jī)數(shù)+ 服務(wù)器證書 + 確定的加密協(xié)議版本(比如就是TLS1.2)。

第三次握手

  • ?Client Key Exchange: 此時(shí)客戶端再生成一個(gè)隨機(jī)數(shù),叫pre_master_key。從第二次握手的服務(wù)器證書里取出服務(wù)器公鑰,用公鑰加密pre_master_key,發(fā)給服務(wù)器。

  • ?Change Cipher Spec: 客戶端這邊已經(jīng)擁有三個(gè)隨機(jī)數(shù):客戶端隨機(jī)數(shù),服務(wù)器隨機(jī)數(shù)和pre_master_key,用這三個(gè)隨機(jī)數(shù)進(jìn)行計(jì)算得到一個(gè)"會(huì)話秘鑰"。此時(shí)客戶端通知服務(wù)端,后面會(huì)用這個(gè)會(huì)話秘鑰進(jìn)行對(duì)稱機(jī)密通信。

  • ?Encrypted Handshake Message:客戶端會(huì)把迄今為止的通信數(shù)據(jù)內(nèi)容生成一個(gè)摘要,用"會(huì)話秘鑰"加密一下,發(fā)給服務(wù)器做校驗(yàn),此時(shí)客戶端這邊的握手流程就結(jié)束了,因此也叫Finished報(bào)文。

第四次握手

  • ?Change Cipher Spec:服務(wù)端此時(shí)拿到客戶端傳來(lái)的pre_master_key(雖然被服務(wù)器公鑰加密過(guò),但服務(wù)器有私鑰,能解密獲得原文),集齊三個(gè)隨機(jī)數(shù),跟客戶端一樣,用這三個(gè)隨機(jī)數(shù)通過(guò)同樣的算法獲得一個(gè)"會(huì)話秘鑰"。此時(shí)服務(wù)器告訴客戶端,后面會(huì)用這個(gè)"會(huì)話秘鑰"進(jìn)行加密通信。

  • ?Encrypted Handshake Message:跟客戶端的操作一樣,將迄今為止的通信數(shù)據(jù)內(nèi)容生成一個(gè)摘要,用"會(huì)話秘鑰"加密一下,發(fā)給客戶端做校驗(yàn),到這里,服務(wù)端的握手流程也結(jié)束了,因此這也叫Finished報(bào)文。

四次握手中,客戶端和服務(wù)端最后都擁有三個(gè)隨機(jī)數(shù),他們很關(guān)鍵,我特地加粗了表示。

第一次握手,產(chǎn)生的客戶端隨機(jī)數(shù),叫client random。

第二次握手時(shí),服務(wù)器也會(huì)產(chǎn)生一個(gè)服務(wù)器隨機(jī)數(shù),叫server random。

第三次握手時(shí),客戶端還會(huì)產(chǎn)生一個(gè)隨機(jī)數(shù),叫pre_master_key。

這三個(gè)隨機(jī)數(shù)共同構(gòu)成最終的對(duì)稱加密秘鑰,也就是上面提到的"會(huì)話秘鑰"。

fc88ae3a-8c7f-11ed-bfe3-dac502259ad0.png三個(gè)隨機(jī)數(shù)生成對(duì)稱秘鑰

你可以簡(jiǎn)單的認(rèn)為,只要知道這三個(gè)隨機(jī)數(shù),你就能破解HTTPS通信。

而這三個(gè)隨機(jī)數(shù)中,client randomserver random都是明文的,誰(shuí)都能知道。pre_master_key卻不行,它被服務(wù)器的公鑰加密過(guò),只有客戶端自己,和擁有對(duì)應(yīng)服務(wù)器私鑰的人能知道。

所以問(wèn)題就變成了,怎么才能得到這個(gè)pre_master_key?

怎么得到pre_master_key

服務(wù)器私鑰不是誰(shuí)都能拿到的,所以問(wèn)題就變成了,有沒(méi)有辦法從客戶端那拿到這個(gè)pre_master_key。

有的。

客戶端在使用HTTPS與服務(wù)端進(jìn)行數(shù)據(jù)傳輸時(shí),是需要先基于TCP建立HTTP連接,然后再調(diào)用客戶端側(cè)的TLS庫(kù)(OpenSSL、NSS)。觸發(fā)TLS四次握手。

這時(shí)候如果加入環(huán)境變量SSLKEYLOGFILE就可以干預(yù)TLS庫(kù)的行為,讓它輸出一份含有pre_master_key的文件。這個(gè)文件就是我們上面提到的/Users/xiaobaidebug/ssl.key。

fc8f1b12-8c7f-11ed-bfe3-dac502259ad0.png將環(huán)境變量注入到curl和chrome中

但是,雖然TLS庫(kù)支持導(dǎo)出key文件。但前提也是,上層的應(yīng)用程序在調(diào)用TLS庫(kù)的時(shí)候,支持通過(guò)SSLKEYLOGFILE環(huán)境觸發(fā)TLS庫(kù)導(dǎo)出文件。實(shí)際上,也并不是所有應(yīng)用程序都支持將SSLKEYLOGFILE。只是目前常見(jiàn)的curl和chrome瀏覽器都是支持的。

SSLKEYLOGFILE文件內(nèi)容

再回過(guò)頭來(lái)看ssl.key文件里的內(nèi)容。

#SSL/TLSsecretslogfile,generatedbyNSS
CLIENT_RANDOM5709aef8ba36a8eeac72bd6f970a74f7533172c52be41b200ca9b91354bd662b09d156a5e6c0d246549f6265e73bda72f0d6ee81032eaaa0bac9bea362090800174e0effc93b93c2ffa50cd8a715b0f0
CLIENT_RANDOM57d269386549a4cec7f91158d85ca1376a060ef5a6c2ace04658fe88aec4877648c16429d362bea157719da5641e2f3f13b0b3fee2695ef2b7cdc71c61958d22414e599c676ca96bbdb30eca49eb488a
CLIENT_RANDOM5fca0f2835cbb5e248d7b3e75180b2b3aff000929e33e5bacf5f5a4bff63bbe5424e1fcfff35e76d5bf88f21d6c361ee7a9d32cb8f2c60649135fd9b66d569d8c4add6c9d521e148c63977b7a95e8fe8
CLIENT_RANDOMbe610cb1053e6f3a01aa3b88bc9e8c77a708ae4b0f953b2063ca5f925d673140c26e3cf83513a830af3d3401241e1bc4fdda187f98ad5ef9e14cae71b0ddec85812a81d793d6ec934b9dcdefa84bdcf3

這里有三列。

第一列是CLIENT_RANDOM,意思是接下來(lái)的第二列就是客戶端隨機(jī)數(shù),再接下來(lái)的第三列則是pre_master_key

但是問(wèn)題又來(lái)了。

這么多行,wireshark怎么知道用哪行的pre_master_key呢?

wireshark是可以獲得數(shù)據(jù)報(bào)文上的client random的。

比如下圖這樣。

fc955e46-8c7f-11ed-bfe3-dac502259ad0.pngClient Hello 里的客戶端隨機(jī)數(shù)

注意上面的客戶端隨機(jī)數(shù)是以"bff63bbe5"結(jié)尾的。

同樣,還能在數(shù)據(jù)報(bào)文里拿到server random

fca0a1ac-8c7f-11ed-bfe3-dac502259ad0.png找到server random

此時(shí)將client random放到ssl.key的第二列里挨個(gè)去做匹配。

就能找到對(duì)應(yīng)的那一行記錄。

fcad0456-8c7f-11ed-bfe3-dac502259ad0.pngssl.key里的數(shù)據(jù)

注意第二列的那串字符串,也是以"bff63bbe5"結(jié)尾的,它其實(shí)就是前面提到的client random。

再取出這一行的第三列數(shù)據(jù),就是我們想要的pre_master_key。

那么這時(shí)候wireshark就集齊了三個(gè)隨機(jī)數(shù),此時(shí)就可以計(jì)算得到會(huì)話秘鑰,通過(guò)它對(duì)數(shù)據(jù)進(jìn)行解密了。

反過(guò)來(lái),正因?yàn)樾枰蛻舳穗S機(jī)數(shù),才能定位到ssl.key文件里對(duì)應(yīng)的pre_master_key是哪一個(gè)。而只有TLS第一次握手(client hello)的時(shí)候才會(huì)有這個(gè)隨機(jī)數(shù),所以如果你想用解密HTTPS包,就必須將TLS四次握手能抓齊,才能進(jìn)行解密。如果連接早已經(jīng)建立了,數(shù)據(jù)都來(lái)回傳好半天了,這時(shí)候你再去抓包,是沒(méi)辦法解密的。

總結(jié)

  • ?文章開(kāi)頭通過(guò)抓包baidu的數(shù)據(jù)包,展示了用wireshark抓包的簡(jiǎn)單操作流程。

  • ?HTTPS會(huì)對(duì)HTTP的URL和Request Body都進(jìn)行加密,因此直接在filter欄進(jìn)行過(guò)濾http.host == "baidu.com"會(huì)一無(wú)所獲。

  • ? HTTPS握手的過(guò)程中會(huì)先通過(guò)非對(duì)稱機(jī)密去交換各種信息,其中就包括3個(gè)隨機(jī)數(shù),再通過(guò)這三個(gè)隨機(jī)數(shù)去生成對(duì)稱機(jī)密的會(huì)話秘鑰,后續(xù)使用這個(gè)會(huì)話秘鑰去進(jìn)行對(duì)稱加密通信。如果能獲得這三個(gè)隨機(jī)數(shù)就能解密HTTPS的加密數(shù)據(jù)包。

  • ?三個(gè)隨機(jī)數(shù),分別是客戶端隨機(jī)數(shù)(client random),服務(wù)端隨機(jī)數(shù)(server random)以及pre_master_key。前兩個(gè),是明文,第三個(gè)是被服務(wù)器公鑰加密過(guò)的,在客戶端側(cè)需要通過(guò)SSLKEYLOGFILE去導(dǎo)出。

  • ?通過(guò)設(shè)置SSLKEYLOGFILE環(huán)境變量,再讓curl或chrome會(huì)請(qǐng)求HTTPS域名,會(huì)讓它們?cè)谡{(diào)用TLS庫(kù)的同時(shí)導(dǎo)出對(duì)應(yīng)的sslkey文件。這個(gè)文件里包含了三列,其中最重要的是第二列的client random信息以及第三列的pre_master_key。第二列client random用于定位,第三列pre_master_key用于解密。

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    719

    瀏覽量

    22623
  • 數(shù)據(jù)包
    +關(guān)注

    關(guān)注

    0

    文章

    269

    瀏覽量

    24806

原文標(biāo)題:好氣??!為什么我抓不到 baidu 的數(shù)據(jù)包?

文章出處:【微信號(hào):小林coding,微信公眾號(hào):小林coding】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 0人收藏

    評(píng)論

    相關(guān)推薦

    為UART、MCXA142實(shí)現(xiàn)ISP通信的主機(jī)端,發(fā)送Ping數(shù)據(jù)包并收到預(yù)期的響應(yīng),發(fā)送和接收數(shù)據(jù)包的典型順序是什么?

    我想為 UART、MCXA142 實(shí)現(xiàn) ISP 通信的主機(jī)端。我發(fā)送 Ping 數(shù)據(jù)包并收到預(yù)期的響應(yīng)。發(fā)送和接收數(shù)據(jù)包的典型順序是什么? 此刻,我的照片是這樣的: 1. 發(fā)送 Ping 2. 接收 Ping 響應(yīng) 3. 在成幀
    發(fā)表于 04-03 08:05

    I2C總線數(shù)據(jù)包結(jié)構(gòu)詳解

    。以下是I2C總線數(shù)據(jù)包結(jié)構(gòu)的詳解: 一、I2C總線數(shù)據(jù)包的基本組成 I2C總線上的數(shù)據(jù)傳輸以數(shù)據(jù)包為單位進(jìn)行,每個(gè)數(shù)據(jù)包包含起始信號(hào)、設(shè)備
    的頭像 發(fā)表于 01-17 15:46 ?499次閱讀

    mtu配置步驟詳解 mtu與數(shù)據(jù)包丟失的關(guān)系

    MTU(Maximum Transmission Unit)即最大傳輸單元,是指一種通信協(xié)議的某一層上面所能通過(guò)的最大數(shù)據(jù)報(bào)大小,單位是字節(jié)。MTU配置步驟及其與數(shù)據(jù)包丟失的關(guān)系如下: MTU配置
    的頭像 發(fā)表于 12-16 14:33 ?2004次閱讀

    CentOS中使用tcpdump

    CentOS中使用tcpdump
    的頭像 發(fā)表于 10-28 14:48 ?562次閱讀

    華納云:服務(wù)器平均響應(yīng)時(shí)間和數(shù)據(jù)包大小之間的影響

    服務(wù)器的平均響應(yīng)時(shí)間與數(shù)據(jù)包大小有一定的關(guān)系,但這只是影響響應(yīng)時(shí)間的眾多因素之一。具體來(lái)說(shuō),數(shù)據(jù)包大小對(duì)服務(wù)器響應(yīng)時(shí)間的影響可以從以下幾個(gè)方面來(lái)理解: 1.數(shù)據(jù)傳輸時(shí)間 影響: 較大的數(shù)據(jù)包
    的頭像 發(fā)表于 10-10 14:01 ?481次閱讀

    請(qǐng)問(wèn)DCTCP與DCUDP 的登錄數(shù)據(jù)包和心跳數(shù)據(jù)包與服務(wù)器端是如何交互的?

    DCTCP與DCUDP的登錄數(shù)據(jù)包和心跳數(shù)據(jù)包與服務(wù)器端是如何交互的?
    發(fā)表于 07-25 06:37

    經(jīng)典藍(lán)牙解析說(shuō)明

    在無(wú)線通信協(xié)議的開(kāi)發(fā)過(guò)程中,器是工程師們不可或缺的工具。掌握器的使用,就如同擁有了能夠洞察無(wú)線電波的“火眼金睛”。這不僅使我們能夠驗(yàn)證發(fā)出的
    的頭像 發(fā)表于 07-24 09:04 ?2785次閱讀
    經(jīng)典藍(lán)牙<b class='flag-5'>抓</b><b class='flag-5'>包</b>解析說(shuō)明

    esp8266怎么做才能每秒發(fā)送更多的數(shù)據(jù)包呢?

    數(shù)據(jù)包的速度,即每秒大約 50 個(gè) UDP 數(shù)據(jù)包。高波特率唯一改變的是,在數(shù)據(jù)包較大的情況下,我可以以與輕量級(jí)數(shù)據(jù)包相同的速度發(fā)送數(shù)據(jù)包。
    發(fā)表于 07-22 08:00

    使用AT SAVETRANSLINK時(shí)UDP數(shù)據(jù)包丟失怎么解決?

    Android 發(fā)送一個(gè)小 UDP 數(shù)據(jù)包(5 字節(jié))。這個(gè)小數(shù)據(jù)包被我的微控制器在UART上接收到。微控制器將更大的數(shù)據(jù)包(可變長(zhǎng)度,約 100 字節(jié))發(fā)送回 UART。ESP在UART上接
    發(fā)表于 07-18 07:17

    能否在ESP結(jié)束之前通過(guò)串行端口停止傳入的UDP數(shù)據(jù)包的傳輸以解析下一個(gè)UDP數(shù)據(jù)包

    我正在做一個(gè)artnet節(jié)點(diǎn), 它收到幾個(gè) UDP 廣播數(shù)據(jù)包,工作正常,但是: 其中一些必須使用,其中一些必須丟棄, mi問(wèn)題是:所有傳入的數(shù)據(jù)包都出現(xiàn)在帶有IPD命令的串行端口上, 并且我需要
    發(fā)表于 07-16 06:18

    請(qǐng)問(wèn)如何使用AT CIPSEND或AT CIPSENDBUF發(fā)送多個(gè)數(shù)據(jù)包

    我可以使用 AT CIPSEND 發(fā)送單個(gè)數(shù)據(jù)包。但是我必須發(fā)送一系列二進(jìn)制數(shù)據(jù)包。如何使用AT CISEND或AT CIPSENDBUF發(fā)送多個(gè)數(shù)據(jù)包,什么是正確的算法? 到目前為止,我嘗試
    發(fā)表于 07-15 07:37

    NONOS如何檢查是否實(shí)際發(fā)送了UDP數(shù)據(jù)包

    我發(fā)現(xiàn)進(jìn)入深度睡眠通常無(wú)法傳輸發(fā)送的最后一個(gè) UDP 數(shù)據(jù)包。我現(xiàn)在將睡眠延遲 30 毫秒,這是一個(gè)黑客。 我寧愿有一種方法來(lái)檢查是否可以休眠,或者以其他方式能夠注冊(cè)指示數(shù)據(jù)包已發(fā)送的回調(diào)(無(wú)線電發(fā)送緩沖區(qū)為空)。 說(shuō)清楚:我需要知道是 ESP 發(fā)送了它,而不是像 U
    發(fā)表于 07-12 06:14

    在AN65974中短數(shù)據(jù)包和零長(zhǎng)數(shù)據(jù)包是什么意思?

    在 AN65974 中,短數(shù)據(jù)包和零長(zhǎng)數(shù)據(jù)包是什么意思? 非常感謝!
    發(fā)表于 05-30 07:41

    如何在AIROC GUI上獲取良好數(shù)據(jù)包和總數(shù)據(jù)包?

    使用 IQxel-MW LifePoint 作為發(fā)生器并發(fā)送波形BT_1DH5_00001111_Fs80M.iqvsg,但無(wú)法在 AIROC 工具中接收數(shù)據(jù)包。 以下是從 IQxel 發(fā)送
    發(fā)表于 05-22 06:39

    TSN包工具解密:數(shù)據(jù)包捕獲,為什么選Profishark?

    在網(wǎng)絡(luò)管理中,網(wǎng)絡(luò)流量分析和故障排查是重要環(huán)節(jié),如何高效精準(zhǔn)地進(jìn)行網(wǎng)絡(luò)流量分析和故障排查?來(lái)看看利用ProfiShark數(shù)據(jù)包捕獲,讓我們一起探索其中的優(yōu)勢(shì)和特點(diǎn)。一、捕獲網(wǎng)絡(luò)流量的重要性捕獲
    的頭像 發(fā)表于 04-29 08:04 ?916次閱讀
    TSN<b class='flag-5'>抓</b>包工具解密:<b class='flag-5'>數(shù)據(jù)包</b>捕獲,為什么選Profishark?

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品