Sendip 命令行發包工具,支持IP、TCP、UDP等
阿新 • • 發佈:2018-02-15
blog and 目前 inux logs ddr https prot ack
Sendip是一個linux平臺的命令行發數據包工具,目前(2018年2月)支持的協議有ipv4、ipv6、icmp、tcp、udp、bgp、rip、ntp,作者表示其他協議將會後面支持,當他有空寫的時候。Sendip很強大,它支持自定義頭部和數據(也就是IP層以上的整個包),沒有過多的限制,所以連源IP都可以隨意寫,而且裏面也提供了一些默認的選項,可以擇需而發,非常方便。又因為它是命令行的,還支持從文件中直接讀取整個packet發送,所以適合用腳本批量測試。它只是個發包工具,對於發出去的包,收到了什麽樣的回復,Sendip是不知道的,所以要得到回復的包就只能用抓包工具了。它的源碼也很簡單,沒有過多平臺相關的代碼,如果不理解也可以看源碼。
其實這個工具已經滿足了我的要求,之前下載的PackETH
是GUI版的,連數據鏈路層(link layer)都支持,也要求必須提供這一層的相關信息才能發包,這一層一般不太關心,它又不提供自動封裝,總的來說不太適合用。
Sendip簡單使用
常見協議可參考常見協議TCP、UDP、IP圖
通用選項:
-d 要攜帶的數據。
-f 從文件中讀取要攜帶的數據。
-p 加載協議模塊,只有加載了才能使用。
-v 打印整個發出的包。
ipv4模塊:
-iv x 版本 Default: 4 -ih x 首部長度 Default: Correct -iy x 區分服務 Default: 0 -il x 總長度 Default: Correct ---------------------------------------------- -ii x 標識 Default: Random -ifr x 標誌 Default: 0 (options are 0,1,r) -if x 片偏移 Default: 0 ---------------------------------------------- -it x 生存時間 Default: 255 -ip x 協議 Default: 0, or set by underlying protocol -ic x 首部檢驗和 Default: Correct ---------------------------------------------- -is x 源地址 Default: 127.0.0.1 ---------------------------------------------- -id x 目的地址 Default: Correct ---------------------------------------------- 下面全是可選字段: -ifd x IP don't fragment flag (see README) Default: 0 (options are 0,1,r) -ifm x IP more fragments flag (see README) Default: 0 (options are 0,1,r) -ionum x IP option as string of hex bytes (length is always correct) Default: (no options) -ioeol IP option: end of list -ionop IP option: no-op -iorr x IP option: record route. Format: pointer:addr1:addr2:... -iots x IP option: timestamp. Format: pointer:overflow:flag:(ip1:)ts1:(ip2:)ts2:... -iolsr x IP option: loose source route. Format: pointer:addr1:addr2:... -iosid x IP option: stream identifier -iossr x IP option: strict source route. Format: pointer:addr1:addr2:...
Sendip 命令行發包工具,支持IP、TCP、UDP等