菜单

ip封包

2019年1月9日 - LINUX

相信大部分恋人都是会选用WPE的,因为此处也有成千上万好的教程,我们都费力了!
先说说接触WPE的情形。当时接近是二〇一一年,我当然不驾驭WPE对游乐竟有这样大的帮带效率的。起头找WPE软件的时候,只是因为自己找网络抓包工具,相信我们都听说过著名的Sniffer。偶然之间,我意识了WPE,当时对WPE领悟吗少,也不会使用,但并没急着找教程,因为对此软件,一般很容易上手的自身,会协调先试用一下。大多软件都很容易上手的,WPE倒是花了很大的工夫,遵照对抓包和发包的知晓,一初始搜索出了一点点门道来。
新生渐渐的熟练WPE了,但是没有像各位大神这样通过系统学习,可能只算小偏方,或者只是旁门左道吧。
————————————————————————————————————————————————
<下边的话能够不看呀,哈哈哈>

 

上边起始简易教程!
以页游为例:

 

登录游戏,打开WPE肯定是当做备选干活的,我们用的粤语版也是一律的,实在不晓得对照按键的职位即可【下图】

I P封包

图片 1

從平昔以來討論至今﹐我們都不斷地接觸到“封包”這個詞﹐相信您也很有興趣想清楚這個“封包”究竟是個什麼樣的東東吧﹗下边就讓我們一起看看一個IP封包究竟包含了这些內容。

 

擷取IP封包

 

假诺您的機器下边裝有 netxray
等封包擷取軟體﹐或行使NT的“網路監視器”﹐我們就足以擷取这么些進出本機的封包了。

下边最先行动:
点击View(查看)——Option(选项)【下图】

當我們打開擷取效用之後﹐然後使用ping命令隨便ping一個地址﹐如﹕www.hinet.net。我們可以擷取到如下這些封包﹕

 

 

图片 2

图片 3

将除了Send(发送)以外的另外3个挑选全体撤回接纳,并确定【下图】(小诀窍:此处我只想要截取发送的封包,其他对本人来说只会碍眼,也影响未来的操作,所以只留Send)

 

 

正如我們所見到的﹐我們擷取到DNS和ICMP的封包了﹐因為www.hinet.net需要到DNS解釋﹐而ping是一個ICMP協定。您或許知道ICMP封包的type為“Echo
Request”和“Echo Reply”分別代表什麼意思吧﹖

图片 4

讓我們再深远一點﹐探访DNS封包裡面有些什麼東東﹕

点击Target program(目的程序),选拔所玩游戏的长河(此处玩傲剑用的是单进程版的Opera浏览器,故很容易就分选了,再Open(打开)【下图】,注意:现在场景上有很多浏览器是多进程的,那个就需要大家用耐心去各种测试了,或者巧合之下第一遍就入选了

 

 

图片 5

图片 6

 

接着点击Send(发送)界面,如下图,接着按图中黑色按钮就可以抓包了【下图】

比方您往上卷回有關“DNS”的小说﹐看看我們用
nslookup 的 debug 格局寻找 www.hinet.ne
t這個網址時候﹐引證一下这裡的內容﹐您就明白這個封包說些什麼了。

 

下面讓我們再看看ICMP封包裡面的內容﹕

图片 7

 

点击粉黑色按钮起首记录后,将鼠标转移到娱乐,在打闹界面按了一下X键(傲剑的打坐飞快键,至于为何选取这个按键,也是经过再三用到的一点小心得,使用X键,点击一下就能来看人物打坐,或者站起身,特别直观)登时按藏蓝色按钮为止,看呢,只抓到一个包,太棒了!【下图】不用麻烦找包了(这也是干吗在装置的时候只留下Send的因由了)

图片 8

 

 

图片 9

其實我們真正擷取到的封包內容應該是紅圈的範圍﹐在上头和右邊的欄目裡面的資料是經過程式整理出來的結果。在第一行裡面﹐我們看到“00
80 c7 47 8c 9a 48 54 e8 27 75
77”這串數字﹐所表示的分別是目标地和來源地的MAC地址﹔然後“08
00”代表的是一個Ethernet II的IP協定類型。Ethernet
II可以說是IEEE802.3的改進版本。(還記得“網路概論”裡面關於“邏輯形態”的敘述麼﹖)。這裡可以說是Datalink網路層所要追蹤的資料。

 

然後﹐接下來的是屬於IP封包的內容﹕

 

 

入选刚才抓到的打坐(X)的包,按鼠标右键,选用Set
Send List with this socket
id(设置用那多少个封包ID到追踪器)后,并无直观表象【下图】

图片 10

图片 11

 

 

請先記著上圖的內容﹐我打算在下一節裡面在詳細討論每一行的情致。

下边以前天的封包为例来行使一下WPE
点击导入以下封包,选中一个,再点击打开【下图】

IP封包格式

 

首先﹐讓我們看看IP封包的格式是怎樣的﹐和其組成部份﹐以及各部份的長度怎么着﹕

图片 12

Version (4)

导入后选中3个小勾,接着就足以按黄色按钮进行Send
Settings(发送设置)了,因为是3条,实际就是3个包,所以设置3提姆(Tim)e(s),就是3次,提姆(Tim)e(定时):100ms(100毫秒),设置完后按入手粉红色按钮发送封包即可【下图】

Internet Header Length
(4)

图片 13

Type of Service
(8)

 

Total Length (16)

可以见到从【海口城】传送到了【圆月山庄第三层】【下图】

Identification
(16)

 

Flags (3)

 

Fragment Offset
(13)

好了,基本上就完工了,每一遍登录游戏都要开展此般操作,或许也有智能工具可以协理我们更便于的操作封包,在此就不探究了。当然有趣味的吧友可能还要自己制作封包,那么大家以地点打坐封包为例吧【下图】

Time To Live (8)

 

Protocol (8)

图片 14

Header checksum
(16)

为了不受怪物的震慑,首先回到【邢台城】
好,在此包上点击鼠标右键,再点击Add to Send List(添加到追踪器)【下图】

Source Address
(32)

 

Destination Address
(32)

图片 15

Options (Variable)

大家选中这多少个封包,双击还足以变动名字哦,最终Ok(确定)【下图】

Padding (0-24)

 

  
Data
…. 

图片 16

在上圖中﹐括號之內的數字就是各部件的長度(bit)﹐假如你夠細心﹐就會計算得出每一列的總長度都是32bit。上边我們分別對各部件名稱解釋一下﹕

修改名字之后,按褐色按钮举办Send
Settings(发送设置),本来是3次,这里改1次,提姆(Tim)e(定时):100ms(100毫秒),设置完后按出手红色按钮发送封包【下图】

Version

图片 17

 

 

 

此间曾经到位了啊

本子(VER)。表示的是IP規格版本﹐最近的IP規格多為版本4(version
4)﹐所以這裡的數值平常為 0x4 (注意﹕封包使用的數字通常都是十六進位的)。

可是为了让职能更了然,刷新了一晃网页,并再一次找了打张家口包ID,让大家将1次改成Continuously(连续地)(那也是其它连续性封包的设置,比如吃经验),再按黄色按钮开启【下图】

 

图片 18

 

 

Internet Header Length

【细心的情侣应该看到了敞开封包ID的变动,因为刷新了网页,就需要再行寻找一下ID】

 

呵呵,看看,此过程接连不停地举办,直到我们点击截止停止【下图】

 

 

標頭長度(IHL)。我們從IP封包規格中看出前面的6列為header﹐假诺Options和Padding沒有設定的話﹐也就只有5列的長度﹐所以這裡的長度為“5”﹔我們知道每列有32bit﹐也就是4byte﹔这麼5列就是20byte了﹐20這個數值換成16進位就成了0x14﹐所以﹐當封包標頭長度為最短的時候﹐這裡數值最終會被換算為
0x14 。

 

 

如今到保存封包文件了,点击它就足以保留了【下图】

讓我們看看我們擷取的ICMP封包﹐其中屬於IP部份的開頭﹕

 

 

图片 19

 

假设有畸形的地点可以提议,请大家多多指教!

图片 20

 

在這裡﹕我們看到的數值是“45”﹐前边的“4”就是本子號數﹐而後面的“5”則是標頭長度。

 

 

Type of Service

 

 

服務類型(TOS)。這裡指的是IP封包在傳送過程中要求的服務類型﹐其中一起由8個bit組成﹐其中每個bit的組合分別代表不同的趣味﹕

 

000….. Routine 設定IP順序﹐預設為0﹐否則﹐數值越高越優先
…0…. Delay 延遲要求﹐0是正常值﹐1為低要求
….0… Throughput 通訊量要求﹐0為正常值﹐1為高要求
…..0.. Reliability 可靠性要求﹐0為正常值﹐1為高要求
……00 Not Used 未使用

在下例中﹐我們可以寓目TOS的值為0﹐也就是全体設置為正常值﹕

 

 

图片 21

Total Length

 

 

封包總長(TL)。平常以byte做單位來表示該封包的總長度﹐此數值包括標頭和數據的總和。

 

 

图片 22

 

從上圖我們看到的十六進位數值是“003C”﹐換成十進位就是“60”了。

 

 

Identification

 

 

識別碼(ID)。每一個IP封包都有一個16bit的绝无仅有識別碼。我們從OSI的網路層級知識裡面知道﹕當程式產生的數據要通過網路傳送時﹐都會被拆毁成封包模式發送﹐當封包要進行重組的時候﹐這個ID就是依據了。

 

 

图片 23

 

從上圖我們可以看看此封包的ID為﹕40973 (將
a00d 換成十進制就精通了)。

 

 

Flag

 

 

標記(FL)。這是當封包在傳輸過程中進行最佳組合時使用的3個bit的識別記號。請參考下表﹕

 

000. 當此值為0的時候﹐表示目前未被使用。
.0.. 當此值為0的時候﹐表示封包可以被分割﹐如果為1則不能被分割。
..0. 當上一個值為0時﹐此值為0就示該封包是最後一個封包﹐如果為1則表示其後還有被分割的封包。

 

在下例中﹐我們看到這個封包的標記為“0”﹐也就是近年来並未使用。

 

 

图片 24

 

 

Fragment Offset

 

 

细分定位(FO)。當封包被切開之後﹐由於網路情況或其他因素影響﹐其抵達順序並不會和當初切割順序一至的。所以當封包進行切割的時候﹐會為各部分做好稳定記錄﹐所以在重組的時候﹐就能夠依號入座了。

 

因為我們剛才擷取到的封包並沒有被切割﹐所以﹐暫時找不到例子參考﹔在上例中我們看到的FO為“0”。

 

 

Time To Live

 

 

延續時間(TTL)。這個TTL我們在許多網路設定上都會碰着﹐當一個物件﹐被賦予TTL值(以秒為單位)之後﹐就會進行計時﹐假若物件在到達TTL值的時候還沒被處理的話﹐就會被遺棄。
不過﹐並不是颇具的 TTL 皆以時間為單位﹐例如 ICMP 協定的
TTL﹐則以封包路由過程中的跳站數目(Hop Count)做單位。TTL
值每經過一個跳站(或被一個 router 處理)之後﹐就會被減低一個數值
。這樣當封包在傳遞過程中由於某些原由此得不到抵達目标地的時候﹐就足以制止其间接充斥在網路上边。

 

 

图片 25

 

上圖中我們看到的數值﹐可不是 20
哦﹐因為這是個十六進位數字﹐要換成十進位才通晓 TTL 原來是 32
個跳站。

 

 

Protocol

 

 

協定(PROT)。這裡指的是該封包所使用的網路協定類型﹐例如﹕ICMP﹑DNS等。要注意的是﹕這裡使用的協定是網路層的協定﹐這和上層的程式協定(如﹕FTP﹑POP等)是见仁见智的。您可以從Linux的/etc/protocol這個檔案中找到這些協定和其代號﹔此檔案也存放於NT的\winnt\system32\drivers\etc目錄裡面。其內容如下﹕

------------------------------------------------------
ip      0       IP              # internet protocol, pseudo protocol number
icmp    1       ICMP            # internet control message protocol
igmp    2       IGMP            # Internet Group Management
ggp     3       GGP             # gateway-gateway protocol
ipencap 4       IP-ENCAP        # IP encapsulated in IP (officially ``IP'')
st      5       ST              # ST datagram mode
tcp     6       TCP             # transmission control protocol
egp     8       EGP             # exterior gateway protocol
pup     12      PUP             # PARC universal packet protocol
udp     17      UDP             # user datagram protocol
hmp     20      HMP             # host monitoring protocol
xns-idp 22      XNS-IDP         # Xerox NS IDP
rdp     27      RDP             # "reliable datagram" protocol
iso-tp4 29      ISO-TP4         # ISO Transport Protocol class 4
xtp     36      XTP             # Xpress Tranfer Protocol
ddp     37      DDP             # Datagram Delivery Protocol
idpr-cmtp       39      IDPR-CMTP       # IDPR Control Message Transport
rspf    73      RSPF            #Radio Shortest Path First.
vmtp    81      VMTP            # Versatile Message Transport
ospf    89      OSPFIGP         # Open Shortest Path First IGP
ipip    94      IPIP            # Yet Another IP encapsulation
encap   98      ENCAP           # Yet Another IP encapsulation
------------------------------------------------------

 

 

图片 26

 

在我們這個例子中﹐可以看得出PROT的號碼為“01”﹐對照/etc/protocol檔案﹐我們能够驾驭這是一個ICMP協定。

 

 

Header Checksum

 

 

標頭檢驗值(HC)。這個數值重要用來檢錯用的﹐用以確保封包被正確無誤的收受到。當封包開始進行傳送後﹐接收端主機會利用這個檢驗值會來檢驗餘下的封包﹐假若一切看來無誤﹐就會發出確認音讯﹐表示接到正常。

 

 

图片 27

 

上圖中我們看到的封包之HC為﹕“9049”。

 

 

Source IP Address

 

 

來源地址(SA)。相信這個不用多解釋了﹐就是發送端的IP地址是也。

 

 

图片 28

 

我們將“c0.a8.00.0f”換成十進位﹐就足以汲取“192.168.0.15”這個地址了。

 

 

Destination IP Address

 

 

目的地址(DA)。也就是接收端的IP地址啦。

 

 

图片 29

 

探访﹐你能不可能將“a8.5f.01.54”換成“168.95.1.84”﹖

 

 

Options & Padding

 

 

這兩個選項甚少使用﹐只有少数特殊的封包需要一定的决定﹐才會利用到。這裡也不作細表啦。

 

 

图片 30

 

 

图片 31


www.study-area.org ©
2001 Netman
網中人

Last Updated:
April 26, 2001

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图