hping原理、安裝、使用詳解介紹
【原理基礎】
Hping是一個命令列下使用的TCP/IP資料包組裝/分析工具,其命令模式很像Unix下的ping命令,但是它不是隻能傳送ICMP迴應請求,它還可以支援TCP、UDP、ICMP和RAW-IP協議,它有一個路由跟蹤模式,能夠在兩個相互包含的通道之間傳送檔案。Hping常被用於檢測網路和主機,其功能非常強大,可在多種作業系統下執行,如Linux,FreeBSD,NetBSD,OpenBSD,Solaris,MacOs X,Windows。
Hping的主要功能有:
防火牆測試
實用的埠掃描
網路檢測,可以用不同的協議、服務型別(TOS)、IP分片
手工探測MTU(最大傳輸單元)路徑
先進的路由跟蹤,支援所有的協議
遠端作業系統探測
遠端的執行時間探測
TCP/IP堆疊審計
Hping的詳細引數
-h --help 顯示幫助資訊
-v --version 顯示Hping的版本資訊
-c --count 指定資料包的次數
-i --interval 指定發包間隔為多少毫秒,如-i m10:表示發包間隔為10毫秒
附秒、毫秒、微秒進率
1s=1000ms(毫秒)=1000000(微秒)
1s=10^3ms(毫秒)=10^6μs(微秒)
--fast 與 -i m100等同,即每秒鐘傳送10個數據包
-n --numeric 指定以數字形式輸出
-q --quiet 退出Hping
-I --interface 指定IP,如本機有兩塊網絡卡,可通過此引數指定傳送資料包的IP地址。如果不指定則預設使用閘道器IP
-V --verbose 冗餘模式
-D --debug 除錯資訊
-z --bind 將ctrl+z 繫結到ttl,預設使用DST埠
-Z --unbind 解除ctrl+z的繫結
指定所用的模式:
-0 --rawip RAW IP 模式
-1 --icmp ICMP 模式
-2 --udp UDP 模式
-8 --scan 掃描模式.
例: hping --scan 1-30,70-90 -S www.target.host
-9 --listen 監聽模式
IP選項:
-a --spoof 源地址欺騙
--rand-dest 隨機目的地址模式
--rand-source 隨機源目的地址模式
-t --ttl ttl值,預設為64
-N --id 指定id,預設是隨機的
-W --winid 使用win*的id 位元組順序
-r --rel 相對的id區域
-f --frag 將資料包分片後傳輸(可以通過薄弱的acl(訪問控制
列表))
-x --morefrag 設定更多的分片標記
-y --dontfrag 設定不加分片標記
-g --fragoff 設定分片偏移
-m --mtu 設定虛擬MTU, 當資料包>MTU時要使用--frag 進行分片
-o --tos 指定服務型別,預設是0x00,,可以使用--tos help檢視幫助
-G --rroute 包含RECORD_ROUTE選項並且顯示路由快取
--lsrr 釋放源路記錄
--ssrr 嚴格的源路由記錄
-H --ipproto 設定協議範圍,僅在RAW IP模式下使用
ICMP選項
-C --icmptype 指定icmp型別(預設型別為回顯請求)
-K --icmpcode 指定icmp編碼(預設為0)
--force-icmp 傳送所有ICMP資料包型別(預設只發送可以支援的型別) --icmp-gw 針對ICMP資料包重定向設定閘道器地址(預設是0.0.0.0)
--icmp-ts 相當於--icmp --icmptype 13(ICMP時間戳)
--icmp-addr 相當於--icmp --icmptype 17(ICMP地址掩碼)
--icmp-help 顯示ICMP的其它幫助選項
UDP/TCP選項
-s --baseport 基本源埠(預設是隨機的)
-p --destport 目的埠(預設為0),可同時指定多個埠
-k --keep 仍然保持源埠
-w --win 指定資料包大小,預設為64
-O --tcpoff 設定假的TCP資料偏移
-Q --seqnum 僅顯示TCP序列號
-b --badcksum 嘗試傳送不正確IP校驗和的資料包
許多系統在傳送資料包時使用固定的IP校驗和,因此你會得到不正確的UDP/TCP校驗和.
-M --setseq 設定TCP序列號
-L --setack 使用TCP的ACK(訪問控制列表)
-F --fin 使用FIN標記set FIN flag
-S --syn 使用SNY標記
-R --rst 使用RST標記
-P --push 使用PUSH標記
-A --ack 使用 ACK 標記
-U --urg 使用URG標記
-X --xmas 使用 X 未用標記 (0x40)
-Y --ymas 使用 Y 未用標記 (0x80)
--tcpexitcode 最後使用 tcp->th_flags 作為退出程式碼
--tcp-timestamp 啟動TCP時間戳選項來猜測執行時間
常規選項
-d --data 資料大小,預設為0
-E --file 從指定檔案中讀取資料
-e --sign 增加簽名
-j --dump 以十六進行形式轉存資料包
-J --print 轉存可輸出的字元
-B --safe 啟用安全協議
-u --end 當通過- -file指定的檔案結束時停止並顯示,防止檔案再從頭開始
-T --traceroute 路由跟蹤模式
--tr-stop 在路由跟蹤模式下當收到第一個非ICMP資料包時退出
--tr-keep-ttl 保持源TTL,對監測一個hop有用
--tr-no-rtt 使用路由跟蹤模式時不計算或顯示RTT資訊
ARS 資料包描述(新增加的內容,暫時還不穩定)
--apd-send 傳送用描述APD的資料包
=============================================================
HPING 使用方法
一、HPING和ping的區別:
典型ping程式使用的是ICMP回顯請求來測試,而HPING可以使用任何IP報文,包括ICMP、TCP、UDP、RAWSOCKET。
二、下載:
HTTP://WWW.HPING.ORG/
三、安裝(CentOS 5.5 64)
安裝過程沒有想象中的順利,測試了好長時間才成功!!!
1、安裝基礎庫
[[email protected] ~]# yum -y install gcc libpcap-devel tcl-devel
注意:此環境必須安裝tcl-devel包才可以,不然一直出錯,所表現的錯誤在下面已一一列出,請參閱下面提示
2、下載原始碼包
[[email protected] ~]# wget http://www.hping.org/hping3-20051105.tar.gz
3、編譯安裝
[[email protected] ~]# tar -zxvf hping3-20051105.tar.gz
[[email protected] ~]# cd hping3-20051105
[[email protected] hping3-20051105]# ./configure
。。。。。。。。。。。。
creating Makefile...
creating dependences...
In file included from ars.h:20,
from apd.c:19:
bytesex.h:22:3: error: #error can not find the byte order for this architecture, fix bytesex.h
In file included from apd.c:19:
ars.h:190:2: error: #error "Please, edit Makefile and add -DBYTE_ORDER_(BIG|LITTLE)_ENDIAN"
ars.h:254:2: error: #error "Please, edit Makefile and add -DBYTE_ORDER_(BIG|LITTLE)_ENDIAN"
ars.h:323:2: error: #error "Please, edit Makefile and add -DBYTE_ORDER_(BIG|LITTLE)_ENDIAN"
。。。。。。。。。。。。。。。。。。。
解決方法:
從錯誤提示上看,又是什麼高位前低位後到問題,開啟Makefile,找了好久也找不到去哪兒新增這個環境變數,遂Google之,原來是因為64位機到緣故,遂修改上面說到的 bytesex.h (新增紅色區域部分)
[[email protected] hping3-20051105]# vi bytesex.h
/* Original code from the Linux C library */
/* Copyright (C) 2000,2001 Salvatore Sanfilippo <[email protected]>
* This code is under the original GNU C library license (GPL) */
/* $Id: bytesex.h,v 1.1.1.1 2003/08/31 17:23:48 antirez Exp $ */
#ifndef ARS_BYTESEX_H
#define ARS_BYTESEX_H
#if defined(__i386__) \
|| defined(__x86_64__) \
|| defined(__alpha__) \
|| (defined(__mips__) && (defined(MIPSEL) || defined (__MIPSEL__)))
#define BYTE_ORDER_LITTLE_ENDIAN
#elif defined(__mc68000__) \
|| defined (__sparc__) \
|| defined (__sparc) \
|| defined (__PPC__) \
|| defined (__BIG_ENDIAN__) \
|| (defined(__mips__) && (defined(MIPSEB) || defined (__MIPSEB__)))
#define BYTE_ORDER_BIG_ENDIAN
#else
# error can not find the byte order for this architecture, fix bytesex.h
#endif
#endif /* ARS_BYTESEX_H */
繼續安裝。。。
[[email protected] hping3-20051105]# make
gcc -c -O2 -Wall -g main.c
gcc -c -O2 -Wall -g getifname.c
getifname.c: In function ‘get_output_if’:
getifname.c:343: warning: pointer targets in passing argument 3 of ‘getsockname’ differ in signedness
。。。。。。。。。。
gcc -c -O2 -Wall -g libpcap_stuff.c
libpcap_stuff.c:20:21: error: net/bpf.h: No such file or directory
libpcap_stuff.c: In function ‘pcap_recv’:
libpcap_stuff.c:61: warning: pointer targets in assignment differ in signedness
make: *** [libpcap_stuff.o] Error 1
提示我bpf.h檔案未找到,印象中這個檔案應該是libpcap的一部分才是阿~~~
按如下提示作個連結
相關推薦
NFS服務器原理和安裝配置詳解附案例演練
隨機選擇 span 通訊 操作系統 不同 網絡 定義 重新啟動 exportfs NFS服務器原理和安裝配置詳解附案例演練 1、什麽是NFS服務器 NFS就是Network File System的縮寫,它最大的功能就是可以通過網絡,讓不同的機器、不同的操作系統可以共享
使用LVS實現負載均衡原理及安裝配置詳解
配置 png 負載均衡 iptables .cn 詳解 文章 配置詳解 logs LVS是一個開源軟件,由章文嵩博士於1998年5月創立,可以實現Linux平臺下的簡單負載均衡。LVS是Linux Virtual Server的簡寫,是一個虛擬的服務器集群系統。LVS是基於
使用LVS負載均衡搭建web群集的原理及安裝配置詳解
chmod 特點 Go 內核空間 col rpc mac地址 網絡文件系統 IT 一、負載均衡LVS基本介紹 LVS是 Linux Virtual Server 的簡稱,也就是Linux虛擬服務器。這是一個由章文嵩博士發起的一個開源項目,它的官方網站是 http://www
使用 LVS 實現負載均衡原理及安裝配置詳解
負載均衡叢集是 load balance 叢集的簡寫,翻譯成中文就是負載均衡叢集。常用的負載均衡開源軟體有nginx、lvs、haproxy,商業的硬體負載均衡裝置F5、Netscale。這裡主要是學習 LVS 並對其進行了詳細的總結記錄。 一、負載均衡LVS基本介
使用LVS實現負載均衡原理及安裝配置詳解(轉)
bin 瀏覽器 gate 裏的 高性能 target 相關 asq 空間 負載均衡集群是 load balance 集群的簡寫,翻譯成中文就是負載均衡集群。常用的負載均衡開源軟件有nginx、lvs、haproxy,商業的硬件負載均衡設備F5、Netscale。這裏主要是
hping原理、安裝、使用詳解介紹
【原理基礎】 Hping是一個命令列下使用的TCP/IP資料包組裝/分析工具,其命令模式很像Unix下的ping命令,但是它不是隻能傳送ICMP迴應請求,它還可以支援TCP、UDP、ICMP和RAW-IP協議,它有一個路由跟蹤模式,能夠在兩個相互包含的通道
syslog、日誌服務器安裝、卸載詳解、如何安裝和卸載EventLog Analyzer
技術 src 如何 RoCE analyze sys ESS watermark 詳解 syslog、日誌服務器安裝、卸載詳解、如何安裝和卸載EventLog Analyzer
Hibernate_day01---Hibernate環境搭建、配置檔案詳解、核心api介紹
JavaEE三層結構對應的框架 1) web層:struts2框架 2) service層:spring框架 3)dao層:hibernate框架 -- 對資料庫進行crud操作 什麼是框架: 可複用的設計構件 作用:可以少寫一部分程式碼。使用框架寫程式,會幫我們實現一部
python中呼叫R語言通過rpy2 進行互動安裝配置詳解(R_USER、R_HOME配置)
python中呼叫R語言通過rpy2 進行詳解 文章目錄 python中呼叫R語言通過rpy2 進行詳解 1.R語言的安裝: 2.Rpy2工具的安裝和配置 3.pycharm中使用R語言配置
OpenVPN下載、安裝、配置及使用詳解
原文:http://www.cnblogs.com/CakaSWM/p/5582236.html 一、目的: 通過雲伺服器的外網地址,將沒有外網的伺服器的埠地址轉發到外網,使其能夠通過外網進行訪問。 二、原理: 1.虛擬專用網VPN 虛擬專用網VPN(virt ual p
H264編碼原理以及I、P、B幀詳解
reference:http://www.cnblogs.com/cy568searchx/p/6125031.html H264是新一代的編碼標準,以高壓縮高質量和支援多種網路的流媒體傳輸著稱,在編碼方面,我理解的他的理論依據是:參照一段時間內影象的統計結
物化檢視詳解--介紹、建立方法、例子
物化檢視是包括一個查詢結果的資料庫物件,它是遠端資料的的本地副本,或者用來生成基於資料表求和的彙總表。物化檢視儲存基於遠端表的資料,也可以稱為快照。對於複製,物化檢視允許你在本地維護遠端資料的副本,這些副本是隻讀的。如果你想修改本地副本,必須用高階複製的功能。當你想從一個表
PHP 5.6.39 安裝、配置、日誌配置詳解
PHP軟體版本5.6.39 一、PHP的編譯安裝管理:① : php編譯安裝,php的編譯安裝依賴的庫比較多,編譯安裝會稍微難一點yum -y install epel-release [安裝epel源]yum -y install gcc gcc-c++ make pcre pcre-devel zlib
爬蟲原理與會話保持(cookies、session)詳解--python實現
一、爬蟲原理 我們知道網際網路是由大量計算機和網路構成的複雜系統,我們可以將其形象的比喻成一張蜘蛛網。網路的節點是計算機,計算機中儲存著大量的資料。爬蟲程式就是通過網路去採集指定計算機中資料的工具。一般來說,我們採集的資料大多是網頁上的資料,
資料庫概述、mysql-5.7.11-winx64.zip 的下載、安裝、配置和使用(windows裡安裝)圖文詳解
本博文的主要內容有 .資料庫的概述 .mysql-5.7.11-winx64.zip 的下載 .mysql-5.7.11-winx64.zip 的安裝 .mysql-5.7.11-winx64.zip 的配置 .mysql-5.7.11-winx64.zip 的使用
linux軟體安裝之詳解apt、yum、dnf 和 pkg包安裝
介紹 包管理系統除了安裝軟體外,它還提供了工具來更新已經安裝的包。包儲存庫有助於確保你的系統中使用的程式碼是經過審查的,並且軟體的安裝版本已經得到了開發人員和包維護人員的認可。 在配置伺服器或開發環境時,我們最好了解下包在官方儲存庫之外的情況。某個發行版的穩定版本中的包有
Cloudera CDH 、Impala本地通過Parcel安裝配置詳解
詳細見連結: http://www.cnblogs.com/shudonghe/archive/2013/06/19/3145013.html http://www.cnblogs.com/shudonghe/archive/2013/06/18/3142796.
詳解mongodb(win7x64)下載、安裝、服務配置與使用
1.去MongoDB官網https://www.mongodb.com/下載所需要的資料庫版本,此處以mongodb-win32-x86_64-2008plus-ssl-3.4.2-signed為例 2.雙擊所下載的安裝程式進行安裝,預設安裝路徑為C:\Program Fi
SVN的安裝、使用、許可權設定詳解
svn伺服器配置及客戶端安裝步驟 步驟一:解壓壓縮檔案(svn-win32-1.6.6.zip) 步驟二:將解壓後的資料夾(svn-win32-1.6.6)拷貝到D盤根目錄下 步驟三:複製"D:\svn-win32-1.6.6\bin"到環境變數path, 前後最好加上分號 步驟
Mac下Brackets安裝Emmet、Beauty外掛詳解 (步驟配圖)
剛寫完上一篇Sublime安裝外掛,想到Brackets也需要安裝Emmet外掛,於是探索下發現安裝步驟非常簡潔,記錄下 Sublime安裝外掛連結: http://blog.csdn.net/lovechris00/article/details/51678930 下面