tcpreplay發包工具的簡單介紹

2021-09-25 04:16:09 字數 2805 閱讀 6802

一.tcpreplay簡介

**:上面有tcpreplay的安裝包和很多文件

tcpreplay是一系列工具的總稱,包括tcpreplay、tcprewrite和tcpprep等工具,它可以用來在unix系統或者linux系統上重放網路包。這些包是由tcpdump、ethereal和wireshark等軟體抓取到的,即pcap格式的資料報。

tcpreplay是一系列工具的總稱,包括tcpreplay、tcprewrite和tcpprep等工具,它可以用來在unix系統或者linux系統上重放網路包。這些包是由tcpdump、ethereal和wireshark等軟體抓取到的,即pcap格式的資料報。

安裝tcpreplay包時,預設情況下是安裝了下面這些工具的, 用於準備發包的cache, 重寫報文等:

(1)tcpprep: 這個工具的作用就是劃分客戶端和伺服器,區分pcap資料報的流向,即劃分那些包是client的,哪些包是server的,一會發包的時候client包從乙個網絡卡發,另乙個server的包可能從另乙個網絡卡發。

(3)tcpreplay: 這是最終真正發包使用的工具,可以選擇主網絡卡、從網絡卡、發包速度等。

-i primary inte***ce to send traffic out of 雙網絡卡回放報文必選引數,指定主介面。

-i rewrite dest mac on primary inte***ce 可選引數,重寫主網絡卡傳送出報文的目的 mac 位址。

-j secondary inte***ce to send traffic out of 雙網絡卡回放報文必選引數,指定從介面。

-j rewrite dest mac on secondary inte***ce 可選引數,重寫從網絡卡傳送出報文的目的 mac 位址。

-k rewrite source mac on primary inte***ce 可選引數,重寫主網絡卡傳送報文的源 mac 位址。

-k rewrite source mac on secondary inte***ce可選引數,重寫從網絡卡傳送報文的源 mac 位址。

-l specify number of times to loop 可選引數,指定迴圈的次數,測試過程發現不是那麼好用,有待確認。

-l specify the maximum number of packets to send 可選引數,指定最大的發包數量。可以在確認連線的除錯時使用。

-m set replay speed to given multiple 可選引數,指定乙個倍數值,就是必預設傳送速率要快多少倍的速率傳送報文。 加大傳送的速率後,對於 dut 可能意味著有更多的併發連線和連線數,特別是對 於 bt 報文的重放, 因為連線的超時是固定的, 如果速率增大的話, 留在 session 表中的連線數量增大,還可以通過修改連線的超時時間來達到該目的。

-m disable sending martian ip packets 可選引數,表示不傳送「火星」的 ip 報文,man 檔案中的定義是 0/8、172/8、 255/8。 -

-n not nosy mode (not promisc in sniff/bridge mode) 可選引數,在使用-s 引數,不對混雜模式進行偵聽。沒有測試過。

-n rewrite ip's via pseudo-nat 可選引數,通過偽造的 nat,重寫 ip 位址。這個引數應該有很重要的應用,目 前沒有測試使用。

-o one output mode 可選引數,沒有測試使用

-p set replay speed to given rate (packets/sec) 可選引數,** 指定每秒傳送報文的個數**, 指定該引數, 其它速率相關的引數被忽略, 最後的列印資訊不會有速率和每秒傳送報文的統計。

-p print pid 可選引數,表示在輸出資訊中列印 pid 的資訊,用於單使用者或單帳戶模式下暫停 和重啟程式。

-r set replay speed to given rate (mbps) 可選引數,指定傳送的速率。目前-m/-r/-p 這 3 個引數的相互關係還需要確認。

-r set replay speed to **as fast as possible** 可選引數,讓網絡卡極限速度發資料報。

-s randomize src/dst ip addresses w/ given seed 可選引數,

-s sniff inte***ce(s) and set the snaplen length 可選引數,

-t override mtu (defaults to 1500) 可選引數,指定 mtu,標準的 10/100m 網絡卡的預設值是 1500。

-t truncate packets > mtu so they can be sent 可選引數,截去報文中 mtu 大於標準值的部分再傳送出去,預設是不傳送,skip 掉。目前還有疑問,為什麼會產生 mtu 大於 1500 位元組的包,在 bt 報文中,這種 包比較常見。 -u pad|trunc pad/truncate packets which are larger than the snaplen 可選引數, 後面的引數值二選一, snaplen 是指保留資料報的長度, 這裡的 trunc 引數值和 mtu 沒有任何關係,不要混淆。 -v verbose: print packet decodes for each packet sent 可選引數,沒傳送乙個報文都以 tcpdump 的風格列印出對應的資訊。 -v version 檢視版本號。 -w write (primary) packets or data to file 可選引數,將主網絡卡傳送的報文寫入乙個檔案中,引數後緊跟檔名。

發包工具開發

20100307 經過年前的嘗試,通過linnet,報文已經可以發出了,但是,發包工具的開發本來就是來學習的,不能完全以來於libnet的組包方式。經過檢視,libnet也是通過socket來傳送報文的。所以這裡,我也可以直接使用socket傳送報文,這樣自由度更加高一點。現在是準備作開發的時候了,...

charles 批量重複請求 重複發包工具

本文參考 charles 批量請求 重 包工具 repeat charles 讓你選擇乙個請求並重複,在測試後端介面的時候非常有用 charles將請求重新傳送到伺服器,並將響應顯示為新請求。如果您進行後端更改並希望測試它們,用了charles後,你就沒必要在瀏覽器 或其他客戶端 中重複該請求,ch...

http的抓包工具

2014 01 04 18 54 156971人閱讀收藏 舉報 php 35 目錄 抓包工具有很多,小到最常用的web除錯工具firebug,達到通用的強大的抓包工具wireshark.為什麼使用fiddler?原因如下 a.firebug雖然可以抓包,但是對於分析http請求的詳細資訊,不夠強大。...