从实践中学习TCP、IP协议(txt+pdf+epub+mobi电子书下载)


发布时间:2020-06-02 17:53:49

点击下载

作者:大学霸IT达人

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

从实践中学习TCP、IP协议

从实践中学习TCP、IP协议试读:

前言

TCP/IP协议(TCP/IP Protocol Suite)是互联网通信的基础框架。它采用分层结构,规定了数据如何封装、寻址、传输、路由和接收。为了实现这些功能,TCP/IP协议包含了几十种网络协议,构成了一个协议族。所以,想要系统地了解网络的运行原理,必须要系统地学习TCP/IP协议的相关知识。

由于TCP/IP协议对整个互联网运作进行了标准化,所以它包含大量的理论知识。同时,由于大部分协议都被隐藏在系统和软件内部,用户无法直接接触,更不可能复现,因此传统TCP/IP协议的学习过程漫长而又枯燥乏味。

本书便是针对这种现状而写,主要是结合理论,并通过实际动手实践,带领读者掌握TCP/IP的相关知识。本书结合了Wireshark和netwox工具对TCP/IP协议进行讲解。其中,netwox工具提供了大量模块,允许用户手动创建各种协议的数据包,而Wireshark工具则可以捕获数据包,直观地展现用户创建的数据包。本书有何特色

1.结合netwox进行讲解

在TCP/IP协议族中,很多协议都是隐藏在系统底层,如ARP和ICMP协议。用户无法接触到这类协议,只能面对抽象的理论。而netwox是一个非常强大的网络工具集,它包含200多个模块,可以生成各种网络报文。本书结合该工具,生成讲解所需要的各种报文,这样读者就可以避免单纯地进行理论学习。

2.基于协议模型逐层讲解

在TCP/IP协议族中,各个协议各司其职,分属不同的协议层,从底层开始,逐层依赖,协调工作。为了便于读者掌握该理念,本书严格按照层次结构,逐层讲解每一层的作用和相关协议。

3.充分讲解网络组成的相关协议

TCP/IP协议族不仅规范了数据的传输方式,还规定了网络组成方式和运作机制。例如,ARP协议规范了IP和MAC地址的转化方式;DHCP协议规范了主机如何获取IP地址。只有掌握这类协议,才能完整地理解互联网数据传输机制。本书详细地讲解了这类协议,如ARP、DHCP、DNS和ICMP协议。

4.详细讲解网络维护类协议

为了方便管理网络,TCP/IP协议族中包含了大量的维护类协议,如SNMP、Telnet和WHOIS。这些协议广泛应用于实际的网络维护和网络安全领域。本书将详细地讲解这类协议,帮助读者理解协议实际应用的重要性。

5.内容延伸到安全领域

TCP/IP协议是网络运行的基础,也是网络安全人员的必备知识。本书从协议报文的基础理论出发,将内容延伸到网络安全领域,充分讲解各个协议在安全领域的应用方式。通过学习,读者可以更深刻地理解网络协议的重要性。

6.提供完善的技术支持和售后服务

本书提供了专门的QQ交流群(343867787),方便大家交流和讨论学习中遇到的各种问题。同时,本书也提供了专门的售后服务邮箱hzbook2017@163.com。读者在阅读本书的过程中若有疑问,可以通过该邮箱获得帮助。本书内容

第1、2章详细讲解了网络协议的基础知识,内容包括网络组成、网络协议的结构、网络访问层的构成。另外,还讲解了学习必备的两个工具Wireshark和netwox。

第3章讲解了网际层和IP协议,内容包括IP地址的规范、IP协议工作方式和报文结构。另外,本章还讲解了如何构建IP数据包,基于该协议实施洪水攻击。

第4、5章讲解了ARP和ICMP协议。这两个协议负责局域网内和网际之间的数据传输和寻址的关键环节。其中,ICMP协议也是网络维护和网络安全的重要协议。

第6、7章讲解了传输层和TCP、UDP协议。传输层负责用户数据的传输。TCP和UDP是最常见和最重要的数据传输协议,这两个协议代表了数据传输的两种经典方式——连接和无连接。

第8、9章讲解了DHCP和DNS协议。其中,DHCP协议负责网络设备IP地址的获取和维护;DNS协议则负责域名和IP地址的转化规则。而IP地址和域名是互联网访问的核心环节,是必须要掌握的内容。

第10~12章分别讲解了Telnet、SNMP和WHOIS协议。这3个协议都是典型的网络维护类协议。例如,Telnet协议用于网络远程登录;SNMP协议用于网络设备和信息管理;WHOIS是网络信息查询协议。

第13、14章分别讲解了FTP和TFTP协议。虽然这两个协议都是文件共享类型协议,但其实现机制不同。它们是常见的两种应用协议类型,TFTP协议只规范了数据传输方式,而FTP协议提供了完备的用户接口——FTP命令,满足实际应用。本书配套资源获取方式

本书涉及的相关工具读者可以自行下载。下载途径如下:·根据图书中对应章节给出的网址自行下载;·加入技术讨论QQ群(343867787)获取;·登录华章公司网站www.hzbook.com,在该网站上搜索到本书,然后单击“资料下载”按钮,即可在页面上找到“配书资源”下载链接。本书内容更新文档获取方式

为了让本书内容紧跟技术的发展和软件更新,我们会对书中的相关内容进行不定期更新,并发布对应的电子文档。需要的读者可以加入QQ交流群(343867787)获取,也可以通过华章公司网站上的本书配套资源链接下载。本书读者对象·网络应用程序开发人员;·渗透测试技术人员;·网络安全和维护人员;·信息安全技术爱好者;·计算机安全技术自学者;·高校相关专业的学生;·专业培训机构的学员。本书阅读建议·Kali Linux内置了Wireshark和netwox工具,使用该系统的读者可以跳过1.3节和1.4节中的安装部分。·在学习阶段中,建议多进行实际操作。使用netwox工具构建各种数据包,并使用Wireshark工具进行分析。只要大量练习,就能理解和掌握TCP/IP协议族的各种协议。·在实际应用中,常见的网络协议有几百种。本书只讲解最基础的协议,读者需要归纳总结不同协议的工作模式,然后拓展到其他常见协议中。本书作者

本书由大学霸IT达人技术团队编写。感谢在本书编写和出版过程中给予我们大量帮助的各位编辑!

由于作者水平所限,加之写作时间有限,书中可能还存在一些疏漏和不足之处,敬请各位读者批评指正。编著者第1章网络概述计算机网络是通过数据通信技术将孤立的计算机连接起来,使其能够共享文件和传输数据。通过实现网络连接,计算机的作用被几十倍、几百倍地放大。由于网络的不断发展,各种应用也随之深入人们生活的方方面面。网络协议作为网络世界的基石,也被不断制定和完善。本章将简要讲解网络和网络协议的基本概念。1.1 网络组成

网络是计算机或类似计算机的网络设备的集合,它们之间通过各种传输介质进行连接。无论设备之间如何连接,网络都是将来自于其中一台网络设备上的数据,通过传输介质传输到另外一台网络设备上。本节将基于这个过程讲解网络的组成。1.1.1 网卡

网卡也被称为网络适配器(Network Adapter),是连接计算机和传输介质的接口。网卡主要用来将计算机数据转换为能够通过传输介质传输的信号。

1.网卡种类

网络设备要访问互联网,就需要通过网卡进行连接。由于上网的方式不同,所使用的网卡种类也会不同。网卡的种类有以下几种:(1)有线网卡

有线网卡就是通过“线”连接网络的网卡。这里所说的“线”指的是网线。有线网卡常见形式如图1.1所示。(2)无线网卡

与有线网卡相反,无线网卡是不需要通过网线进行连接的,而是通过无线信号进行连接。无线网卡通常特指Wi-Fi网络的无线网卡。无线网卡常见形式如图1.2所示。(3)蓝牙适配器

蓝牙适配器也是一种无线网卡。蓝牙适配器与无线网卡的区别是数据通信方式不同。蓝牙适配器常见样式如图1.3所示。图1.1 有线网卡图1.2 无线网卡图1.3 蓝牙适配器

2.按安装方式分类

网卡通常是网络设备的从属设备。根据其安装方式,网卡可以分为内置网卡和外置网卡。(1)内置网卡

由于网卡已经成为连接网络的必要设备,所以很多网络设备都内置了网卡。因此,内置网卡也被称为集成网卡。例如,现在的主板都集成了有线网卡,如图1.4所示。箭头所指的接口就是内置网卡提供的有线网卡接口。图1.4 内置网卡(2)外置网卡

除了内置网卡外,很多网络设备都允许用户安装额外的网卡。这类网卡被称为外置网卡,有时被称为独立网卡。由于它可以插在主板的各种扩展插槽中,所以可以随意拆卸,具有一定的灵活性。图1.1和图1.2的有线网卡和无线网卡就属于外置网卡。1.1.2 网络电缆

网络电缆用来连接网络中的各个设备,供设备之间进行数据通信。常见的网络电缆有双绞线、光纤、电话线等。

1.双绞线

双绞线也就是网线。它是由两根具有绝缘保护层的铜导线缠绕组成的,如图1.5所示。这样的铜线一共有8根。每根都通过对应的颜色进行区分。现实生活中,家庭和企业中的计算机进行上网,一般都是通过双绞线连接网络。这些双绞线在排序上往往采用EIA/TIA 568B的线序,依次为橙白、橙、绿白、蓝、蓝白、绿、棕白、棕。图1.5 双绞线

2.光纤

光纤是一种传输光信号的细而柔软的媒质,多数光纤在使用前必须由几层保护结构包裹,如图1.6所示。光纤的主要作用是把要传送的数据由电信号转换为光信号进行通信。在光纤的两端分别装有“光猫”进行信号转换。

3.电话线

电话线就是连接电话的线。电话线也是由绝缘保护层的铜导线组成的。与双绞线不同的是,电话线只有2根或4根线,而且不一定会缠绕在一起,也没有颜色排序,如图1.7所示。图1.6 光纤图1.7 电话线1.1.3 网络设备

网络设备指的是网络组成中的设备,如交换机、路由器、调制解调器等。它们是发送或接收数据的终端设备。

1.交换机

交换机(Switch)可以将多个网络设备连接起来组成一个局域网。它是一种用于电(光)信号转发的网络设备,用来进行数据交换。交换机外观如图1.8所示。图1.8 交换机

2.路由器

路由器(Router)又称网关设备(Gateway),用于连接多个逻辑上分开的网络。所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网中时,可通过路由器的路由功能来完成。它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。路由器也是用来进行数据转换的。路由器与交换机很容易区分,最大的区别是,路由器上有WAN口和LAN接口,而交换机没有这些接口。常见的路由器外观如图1.9所示。图1.9 路由器

3.调制解调器

调制解调器(Modem),俗称“猫”,是一种计算机硬件。它能把计算机的数字信号翻译成可沿普通电话线传送的脉冲信号,而这些脉冲信号又可被线路另一端的另一个调制解调器接收,并翻译为计算机的数字信号语言。调制解调器外观如图1.10所示。图1.10 调制解调器1.2 网络协议

网络协议是网络运行的基石。在网络中,网络设备、传输介质、网卡又各有不同,数据在传输过程中也会使用不同的规则进行传输,而这些规则是依靠网络协议完成的。下面介绍网络协议的相关知识。1.2.1 什么是网络协议

网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。它规定了通信时信息必须采用的格式和这些格式所代表的意义。网络中存在着许多协议,接收方和发送方使用的协议必须一致,否则一方将无法识别另一方发出的信息。网络协议使网络上各种设备能够相互交换信息。而TCP/IP协议就是一种常见的协议,Internet上的计算机使用的就是该协议。1.2.2 TCP/IP协议

TCP/IP协议是Internet网络的基础协议。它不是一个协议,而是一个协议族的统称。起初它是一门新的通信技术。在20世纪70年代前半叶,ARPANET(全球互联网的祖先)中的一个研究机构研发了TCP/IP,直到1983年成为ARPANET网络中唯一指定的协议。最初研究这项新技术,主要用于国防军事上,是为了在通信过程中,即使遭到了敌人的攻击和破坏,也可以经过迂回线路实现最终通信,保证通信不中断。后来逐步演变为现有的TCP/IP协议族。该协议族包括TCP协议、IP协议和ICMP协议和HTTP协议等。1.2.3 OSI协议层次

OSI协议层次结构就是现在常说的OSI参考模型(Open System Interconnection Reference Model)。它是国际标准化组织(ISO)提出的一个标准框架,定义了不同计算机互连的标准,目的是使世界范围内的各种计算机互连起来,构成一个网络。

OSI框架是基于1984年国际标准化组织(ISO)发布的ISO/IEC 7498标准。该标准定义了网络互联的7层框架。这7层框架自下而上依次为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其层次如图1.11所示。图1.11 OSI网络协议层次

每层的作用如下:·应用层:为应用程序提供服务并规定应用程序中相关的通信细节。常见的协议包括超文本传输协议(HTTP)、简单邮件传送协议(SMTP)和远程登录(Telnet)协议等。·表示层:将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。该层主要负责数据格式的转换,确保一个系统的应用层信息可被另一个系统应用层读取。·会话层:负责建立和断开通信连接(数据流动的逻辑通路),以及记忆数据的分隔等数据传输相关的管理。·传输层:只在通信双方的节点上(比如计算机终端)进行处理,无须在路由器上处理。·网络层:将数据传输到目标地址,主要负责寻找地址和路由选择,网络层还可以实现拥塞控制、网际互联等功能。·数据链路层:负责物理层面上互连的节点间的通信传输。例如,一个以太网相连的两个节点之间的通信。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错和重发等。·物理层:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。1.2.4 TCP/IP协议层次结构

TCP/IP协议层次结构也就是现在常说的TCP/IP参考模型。它是ARPANET和其后继的因特网使用的参考模型。基于TCP/IP的参考模型,可以将协议分成4个层次,从上到下分别为应用层、传输层、网际层和网络访问层。分层以后,层中的协议只负责该层的数据处理。TCP/IP协议层次结构如图1.12所示。图1.12 TCP/IP协议层次结构

每层的作用如下:·应用层:为应用程序提供服务并规定应用程序中相关的通信细节。·传输层:为两台主机上的应用程序提供端到端的通信,提供流量控制、错误控制和确认服务。·网际层:提供独立于硬件的逻辑寻址,从而让数据能够在具有不同的物理结构的子网之间传递。负责寻找地址和路由选择的同时,网络层还可以实现拥塞控制、网际互联等功能。·网络访问层:提供了与物理网络连接的接口。针对传输介质设置数据格式,根据硬件的物理地址实现数据的寻址,对数据在物理网络中的传递提供错误控制。1.3 学习辅助工具——网络工具集netwox

一个好的辅助工具可以起到事半功倍的效果。在本书中将使用到两个辅助工具,网络工具集工具netwox和网络分析工具Wireshark。

netwox是由lauconstantin开发的一款网络工具集,适用群体为网络管理员和网络黑客。它可以创造任意的TCP、UDP和IP数据报文,以实现网络欺骗。它可以在命令模式下使用,也可以在GUI中使用netwag调用。该工具包含了超过200个不同的功能,这里被称为模块。每个模块都有一个特定的编号,使用不同的编号模块来实现不同的功能。

netwox工具支持在Linux和Windows系统中运行。由于后面的章节需要结合netwox工具来实现各种功能,所以这里讲解该工具的安装及基本使用方法。1.3.1 下载及安装

Kali Linux系统自带netwox工具,而Windows系统默认没有安装。因此,本节将讲解如何在Windows系统中安装netwox工具。安装方法如下:(1)访问网址https://sourceforge.net/projects/ntwox/,进入netwox下载页面,如图1.13所示。图中显示了可下载的版本,从这里可以看到当前的最新版本为5.39。图1.13 下面页面(2)下载最新版本,单击Download Latest Version按钮进行下载。成功下载后,下载的是一个压缩包,名称为netw-ib-ox-ag-5.39.0.tgz。(3)解压netw-ib-ox-ag-5.39.0.tgz安装包,在解压的文件夹中找到对应的应用程序文件installwindows.exe。双击该文件进行安装,会弹出“安装确认”对话框,如图1.14所示。图1.14 安装确认(4)同意在该系统中安装。输入y,并回车,将显示其他需要确认的信息。这里,一律输入y并回车即可,信息如下:This program will install netwib, netwox and netwag on your system.Do you agree ? [y/n] ySetting global variables. Version... Version=539 InstallDir... InstallDir=C:\Program Files (x86)\netw\netw539Do you agree to use this installation directory ? [y/n] y #确认安装的目录Copying files under C:\Program Files (x86)\netw\netw539 src\netwox-bin_windows\netwib539.dll src\netwox-bin_windows\netwox539.exe src\netwag-bin_windows\netwag539.tcl src\netwib-bin_windows\dll src\netwib-bin_windows\include src\netwib-bin_windows\lib src\netwib-doc_html\* src\netwox-doc_html\* src\netwag-doc_html\*Do you agree to place shortcuts on desktop ? [y/n] y #确认是否创建桌面快捷键Do you agree to place shortcuts in start menu ? [y/n] y #确认是否在开始菜单中创建快捷键Press any key to terminate(5)上述代码中的最后一行信息表示按任意键终止,即表示安装完成。此时在“开始”菜单中可以查看到安装的netwox工具,如图1.15所示。图1.15 netwox图标1.3.2 层次结构分析

成功安装了netwox工具以后就可以使用了。由于该工具提供了众多模块,为了方便用户对模块的查找和使用,netwox对这些模块以分类的方式进行了整理,以层次结构(如主菜单、子菜单)的方式进行显示,供用户查找和使用。使用该工具之前,需要了解分类的这些层次结构。下面将对层次结构进行分析。(1)在“开始”菜单中,选择netwox命令,运行netwox工具,如图1.16所示。

图1.16中显示了该工具的主菜单。每一行表示一个菜单项,第一个字符为该菜单的快捷键。每个菜单含义如下:·0:退出netwox工具。·3:搜索工具,用来搜索与指定信息相关的模块。·4:显示指定模块的帮助信息。·5:在命令行中输入指定模块的参数选项并运行。·6:从键盘输入指定模块的参数选项并运行。·a:显示信息。·b:显示网络协议下相关的模块。·c:显示应用程序协议下相关的模块。·d:显示与嗅探数据包相关的模块。·e:显示与创建和发送数据包相关的模块。·f:显示与进行数据包记录相关的模块。·g:显示与客户端相关的模块。·h:显示与服务器相关的模块。·i:显示与检测主机连通性相关的模块。·j:显示与路由跟踪相关的模块。·k:显示与扫描计算机和端口相关的模块。·l:显示与审计相关的模块。·m:显示与暴力破解相关的模块。·n:显示与远程管理相关的模块。·o:显示其他模块。图1.16 主菜单

以上菜单项是netwox工具的总体分类,每个菜单项属于一个大类。而每个菜单项中还会有子菜单,而每个子菜单下又有一个小的分类。(2)使用快捷键e,查看创建和发送数据包的相关模块,输出信息如下:Select a node (key in 03456abcdefghijklmno): e############# spoof (create and send packets) ############## #创建和发送数据包模块 0 - leave netwox 1 - go to main menu 2 - go to previous menu 3 - search tools 4 - display help of one tool 5 - run a tool selecting parameters on command line 6 - run a tool selecting parameters from keyboard a + Ethernet spoof b + IP spoof c + UDP spoof d + TCP spoof e + ICMP spoof f + ARP spoof

从输出信息可以了解到,该分类中的子菜单包含了各种创建和发送数据包的模块,如IP协议的(快捷键b)、UDP协议的(快捷键c)、ICMP协议的(快捷键e)。通过子菜单的快捷键,可以进一步查看具体的可用模块或更小的分类。(3)使用快捷键c,查看创建和发送UDP数据包的模块,输出信息如下:Select a node (key in 0123456abcdef): c######################## UDP spoof ######################### #创建和发送UDP数据包 0 - leave netwox 1 - go to main menu #返回主菜单 2 - go to previous menu #返回上一个菜单 3 - search tools 4 - display help of one tool 5 - run a tool selecting parameters on command line 6 - run a tool selecting parameters from keyboard a - 35:Spoof EthernetIp4Udp packet b - 39:Spoof Ip4Udp packet c - 43:Spoof of packet samples : fragment, ip4opt:noop d - 44:Spoof of packet samples : fragment, ip4opt:rr e - 45:Spoof of packet samples : fragment, ip4opt:lsrr f - 46:Spoof of packet samples : fragment, ip4opt:ts g - 47:Spoof of packet samples : fragment, ip4opt:ipts h - 48:Spoof of packet samples : fragment, ip4opt:ippts i - 141:Spoof EthernetIp6Udp packet j - 145:Spoof Ip6Udp packet k - 192:Spoof of packet samples : fragment, ip4opt:ssrr

以上输出信息显示了相关的各种模块及快捷键。例如,加粗部分的信息表示netwox的第39个模块功能为创建基于IPv4地址的UDP协议数据包。如果使用该模块,可以使用快捷键b;如果用户想退出当前分类,可以使用快捷键1返回主菜单,或使用快捷键2返回上一个菜单;使用快捷键0退出netwox工具。以类似的方法,可以查看其他分类中的模块。1.3.3 使用搜索功能

虽然netwox工具对所有模块进行了整理和分类,但是有时候想找到要使用的模块也会很麻烦。因此,netwox提供了搜索功能。用户可以指定关键字搜索与之相关的模块。例如,搜索与DNS相关的模块。在主菜单界面中输入3,显示信息如下:Select a node (key in 03456abcdefghijklmno): 3Enter search string:

以上输出信息表示,需要在这里输入要搜索的关键字。例如,这里输入dns然后回车,将显示与DNS相关的模块,输出信息如下:Enter search string: dns############ list of tools containing this text ############Tools containing "dns": 102:Query a DNS server 103:Obtain version of a Bind DNS server 104:DNS server always answering same values 105:Sniff and send DNS answers

输出信息显示了与DNS相关的模块。相关的模块编号有102、103、104和105。1.3.4 使用模块

1.3.3节介绍了如何查找要使用的模块。找到要使用的模块编号以后就可以进行使用了。本节将以一个模块为例,简单地介绍其使用方法。无论使用哪个模块,基本语法是不会变的。语法格式如下:neywox ID options

其中,ID表示模块对应的编号,是必需的;options表示可用到的选项,是可选的。【实例1-1】演示使用编号为1的模块,实现对应的功能。(1)启动netwox工具。然后在主菜单界面中按快捷键5,显示信息如下:Select a node (key in 03456abcdefghijklmno): 5Select tool number (between 1 and 223):

以上输出信息表示需要输入要使用的模块编号。(2)本例使用第1个模块,输入1然后回车,将显示该模块的帮助信息,并在帮助信息下面会给出使用模块的命令。输出信息如下:Select tool number (between 1 and 223): 1################## running tool number 1 ###################Title: Display network configuration #功能简单介绍+--------------------------------------------------------------------------------------------------------------+| This tool displays network configuration: | #功能详细说明| - the list of devices/interfaces: || + nu: device number || + dev: easy device name |··· #省略其他信息| - the routes || + nu: device number of device associated to this entry || + destination/netmask: destination addresses || If no Parameter is set, they are all displayed. || || This tool may need to be run with admin privilege in order to obtain || full network configuration. |+-------------------------------------------------------------+Synonyms: address, arp, device, gateway, ifconfig, interface, ipconfig, mac,neighbor, netmask, route, showUsage: netwox 1 [-d|+d] [-i|+i] [-a|+a] [-r|+r] #语法格式Parameters: #可用的选项参数 -d|--devices|+d|--no-devices display devices -i|--ip|+i|--no-ip display ip addresses -a|--arpcache|+a|--no-arpcache display arp cache and neighbors -r|--routes|+r|--no-routes display routesExample: netwox 1 #参考实例Enter optional tool parameters and press Return key.netwox 1

上述信息首先输出模块功能的简单介绍,以及功能的详细说明信息;然后输出的是该模块的语法格式和可用的选项参数,并给出了参考实例。输出信息的最后一行是用户使用到的命令。我们要使用的模块为1,因此给出的命令信息为netwox 1。这里还可以输入可使用的选项。如果选项不是必须的,可以不输入选项。(3)本例中,使用选项-i表示获取IP地址信息。在netwox 1后面输入-i然后回车,将执行模块功能。运行结果如下:netwox 1 -inu ip /netmask ppp point_to_point_with1 127.0.0.1 /255.0.0.0 02 192.168.59.1 /255.255.255.0 05 192.168.12.102 /255.255.255.0 07 192.168.38.1 /255.255.255.0 013 192.168.12.102 /255.255.255.0 025 192.168.38.1 /255.255.255.0 026 192.168.59.1 /255.255.255.0 09 127.0.0.1 /255.0.0.0 0Command returned 0 (OK)Press 'r' or 'k' to run again this tool, or any other key to continue

以上输出信息显示了模块执行的结果。输出信息的最后一行表示,如果用户继续使用该模块,按快捷键r或k,将回到netwox 1使用模块的命令模式中;如果用户不再使用该模块,按任意键将返回主菜单界面。提示:在Windows系统中使用netwox工具,需要按照以上模式运行工具。在Linux系统中,用户可以直接在命令行中,使用netwox命令+模块编号方式来直接使用,无须进行菜单操作。例如,在Linux系统中使用编号为1的模块,直接执行如下命令:netwox 1 -i1.4 学习辅助工具——网络分析工具Wireshark

Wireshark(前身Ethereal)是一个网络包分析工具。该工具主要是用来捕获网络数据包,并自动解析数据包,为用户显示数据包的详细信息,供用户对数据包进行分析。它可以运行在Windows和Linux操作系统上。由于后面章节会使用该工具捕获并分析各类协议数据包,本节将讲解该工具的安装及基本使用方法。1.4.1 下载及安装

Kali Linux系统自带Wireshark工具,而Windows系统中默认没有安装该工具。因此,本节讲解如何在Windows系统中安装Wireshark工具。安装方法如下:(1)打开网址http://www.wireshark.org,进入Wireshark官网,如图1.17所示。图1.17 Wireshark官方网站(2)单击图中的下载图标进入下载页面,如图1.18所示。在Stable Release部分可以看到目前Wireshark的最新版本是2.6.5,并提供了Windows(32位和64位)、Mac OS和源码包的下载地址。用户可以根据自己的操作系统下载相应的软件包。图1.18 下载页面(3)这里下载Windows 64位的安装包。单击Windows Installer(64-bit)链接,进行下载。下载后的文件名为Wireshark-win64-2.6.5.exe。(4)双击下载的软件包进行安装。安装比较简单,只要使用默认值,单击Next按钮,即可安装成功。(5)安装好以后,在Windows的“开始”菜单中会出现Wireshark图标,如图1.19所示。图1.19 Wireshark图标1.4.2 实施抓包

安装好Wireshark以后,就可以运行它来捕获数据包了。方法如下:(1)在Windows的“开始”菜单中,单击Wireshark菜单,启动Wireshark,如图1.20所示。该图为Wireshark的主界面,界面中显示了当前可使用的接口,例如,本地连接5、本地连接10等。要想捕获数据包,必须选择一个接口,表示捕获该接口上的数据包。图1.20 主界面(2)在图1.20中,选择捕获“本地连接”接口上的数据包。选择“本地连接”选项,然后单击左上角的按钮,将进行捕获网络数据,如图1.21所示。图中没有任何信息,表示没有捕获到任何数据包。这是因为目前“本地连接”上没有任何数据。只有在本地计算机上进行一些操作后才会产生数据,如浏览网站。图1.21 将要捕获数据包(3)当本地计算机浏览网站时,“本地连接”接口的数据将会被Wireshark捕获到。捕获的数据包如图1.22所示。图中方框中显示了成功捕获到“本地连接”接口上的数据包。图1.22 成功捕获到的数据包(4)Wreshark将一直捕获“本地连接”上的数据。如果不需要再捕获,可以单击左上角的按钮,停止捕获。1.4.3 使用显示过滤器

默认情况下,Wireshark会捕获指定接口上的所有数据,并全部显示。这样会导致在分析这些数据包时,很难找到想要分析的那部分数据包。这时可以借助显示过滤器快速查找数据包。显示过滤器是基于协议、应用程序、字段名或特有值的过滤器,可以帮助用户在众多的数据包中快速地查找数据包,可以大大减少查找数据包时所需的时间。

使用显示过滤器,需要在Wireshark的数据包界面中输入显示过滤器并执行,如图1.23所示。

图中方框标注的部分为显示过滤器区域。用户可以在里面输入显示过滤器,进行数据查找,也可以根据协议过滤数据包。用到的显示过滤器如表1.1所示。图1.23 显示过滤器输入框表1.1 显示过滤器及其作用

例如,要从捕获到的所有数据包中,过滤出DNS协议的数据包,这里使用dns显示过滤器,过滤结果如图1.24所示。图中显示的所有数据包的协议都是DNS协议。图1.24 显示过滤器结果1.4.4 分析数据包层次结构

任何捕获的数据包都有它自己的层次结构,Wireshark会自动解析这些数据包,将数据包的层次结构显示出来,供用户进行分析。这些数据包及数据包对应的层次结构分布在Wireshark界面中的不同面板中。下面介绍如何查看指定数据包的层次结构。(1)使用Wireshark捕获数据包,界面如图1.25所示。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载