远程抓取Linux服务器上的数据包
首先:準備工作,按照安裝說明,安裝以下工具:
SSH工具 V3.2.9 官方版 / SSH工具下載?(Linux服務器抓包工具)
Wireshark?(抓包工具,在此主要用于分析通過SSH工具發送指令所抓的數據包文件分析)
?
其次,進入正題,開始抓包:
第一步:打開安裝好的SSH文件客戶端,如圖:
?
第二步:點擊電腦圖標,設置相關連接服務器的參數,如圖:
?
第三步:輸入登錄服務器的密碼,點擊OK請求連接,如圖:
?
第四步:出現以下提示,表示與服務器連接成功,如圖:
?
第五步:發送ifconfig指令,查看網卡信息狀態,如圖:
?
這一步,主要是查看本地電腦分配與服務器進行數據交互的網卡編號(我是這么理解的!),這個網卡編號用于之后的指令發送,如圖所示,我的服務器ip正好對應的em1中的inet?[ip],所以對應em1。
第六步:
發送監聽指令:tcpdump -i em1 dst port 6123 -w /home/zhuabao.pcap,
如果想要抓取指定端口進來和出去的所有的包:tcpdump -i em1 port 6123 -w /home/zhuabao.pcap
取消抓包:Ctrl + C
如圖:
?
說明:
em1:查詢與服務器交互的網卡編號;
prot 6123:與服務器交互時的端口號;
-w:寫入文件,將監聽(抓取)到的數據寫到文件中;
/home/zhuabao.pcap:寫文件后的保存路徑;
zhuabao.pcap:保存的文件名;
第七步:完成第六步的指令發送及監聽成功的提示后,此時便可以與服務器交互了(調用接口,傳文件等,由于我做的是直播,所以抓取的是封裝的PS標準視頻流),交互操作不做贅述。
第八步:找到抓包后保存在指定路徑下的保存文件,如圖:
?
注意:正常情況下,如果抓到數據,那么zhuabao.pcap文件的Size不為0,如果為0,表示指令發送有誤,或者端口錯誤,或者網卡編號錯誤,這個就得自己去排查!
第九步:用Wireshark工具查看zhuabao.pcap文件,如圖:
?
?
最后:
?????? 可以使用Wireshark工具分析你自己想要的數據,我主要是查看推流到服務器的視頻是否出現音頻視頻不同步的情況,因此直接將zhuabao.pcap文件拖到相關播放器播放就行了。
最后的最后:
???????我發送抓包指令時通過端口6123去抓的,因此需要保證同一時間只有我一個人在使用該端口測試,不然多人使用同一端口所抓的包里的數據,過濾到自己所需要的數據很麻煩,好在我們部門只有我一個人在測試。
??????? 所以,為了減少不必要的過濾麻煩,你們在發送抓包指令時,可以指定與服務器交互的本機ip/服務器IP,或是與服務器交互的設備ip(手機,平板等,可以同時制定IP跟端口號,這樣更準確,不過這個我還沒試過),這樣就可以過濾掉大部分廢的數據,然后還可以使用Wireshark工具里的過濾指令來獲取自己想要的數據。
總結
以上是生活随笔為你收集整理的远程抓取Linux服务器上的数据包的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu下最简单的MySQL安装教程
- 下一篇: SpringBoot:spring-bo