我們試圖調試一個服務器的問題,該服務器必須接收並響應大量持久HTTP連接。在Linux上監視和記錄單個HTTP連接的工具?
理想情況下,我們希望一個工具,可以挑選(任意)一個HTTP連接,並記錄所有的流量,並從它,這樣我們就可以看到正在發生的事情。
不幸的是,我們沒有限制持續連接的數量,我們必須對(通常是幾千條)作出反應的能力,所以我們確實需要工具來縮小其監測到只是一個單一的連接。
任何人都可以推薦這樣的工具,並指導如何說服它做我們需要的東西嗎?
我們試圖調試一個服務器的問題,該服務器必須接收並響應大量持久HTTP連接。在Linux上監視和記錄單個HTTP連接的工具?
理想情況下,我們希望一個工具,可以挑選(任意)一個HTTP連接,並記錄所有的流量,並從它,這樣我們就可以看到正在發生的事情。
不幸的是,我們沒有限制持續連接的數量,我們必須對(通常是幾千條)作出反應的能力,所以我們確實需要工具來縮小其監測到只是一個單一的連接。
任何人都可以推薦這樣的工具,並指導如何說服它做我們需要的東西嗎?
如果直接使用wireshark無法工作,您可以在防火牆/路由器類型框中撥動路由,並讓受監控的連接通過不同的接口(可以使用wireshark或其他任何接口訪問)而不是其他所有與服務器的連接。
包的實際捕獲通常由libpcap
完成。 有在它上面不同的工具建設:
首先是良好的老tcpdump
。它是一個文本工具,它允許您指定您感興趣的數據包併爲每個匹配數據包打印(默認情況下)一行。其實你有很多選擇要做什麼。您也可以轉儲捕獲文件中的所有流量。
然後是wireshark
(以前稱爲醚)。這是一個允許你像tcpdump一樣捕獲數據包的GUI,並且有很多方法來分析這些數據。它還可以讀取和分析由tcpdump創建的捕獲文件。
隨着wireshark來tshark
(以前稱爲tethereal),這幾乎是wireshark的控制檯版本。
如果你只在數據發送感興趣的包看看tcpflow
。
還有一些更高級的工具也可以用來攻擊其他主機。 例如ettercap
將列出當前的所有連接,並可以顯示在該連接上發送的數據。
它不是從你的問題,究竟你試圖找出完全清楚,但聽起來像tcpflow
可能是你想要的。
「要求我們推薦或找到工具,圖書館或最喜愛的非現場資源的問題,因爲他們傾向於吸引輿論的答案和垃圾郵件,所以不適合堆棧溢出。相反,[描述問題](http://meta.stackexchange.com/q/139399/)以及迄今爲止已經做了什麼來解決它。「參考:[我可以問什麼問題?](http: –