实验三 端口扫描实验.doc_第1页
实验三 端口扫描实验.doc_第2页
实验三 端口扫描实验.doc_第3页
实验三 端口扫描实验.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网络程序设计实验报告 实验名称: winsock 端口扫描试验 指导教师: 贾浩 专业班级: 姓 名: 学 号: 实验地点: 实验日期: 实验成绩:_ 1、 实验目的l 了解端口扫描的基本概念和工作原理;2、 实验设计(一)实验要求如下:编写一个利用全连接的端口扫描程序,能显示目标主机的端口开放情况。要求能在命令行输入要扫描的目标主机和端口范围。比如:scan *.*.*.* nnnn-mmmm。(二)、设计:1、字符串处理。实验中需要对用户输入的字符串进行处理,从中获取到要扫面的IP地址和端口号范围。可先用一个字符串保存整个命令语句,然后检测到其中的第一个空格和第二个空格,在两个空格之中的内容即是需要检测的IP地址,然后获取到第二个空格和第一个横线之间的内容,并将其转换为整型数据,此为需要扫描的端口的起始端口号,最后获取到横线之后的数据,将其转化为整型数据,即需要扫面端口的终止端口号。2、设计主程序。先创建一个TCP类型的套接字,将其绑定到本地地址,然后将要发送数据的IP地址设置为从用户命令中获取到的数据,紧接着在一个循环中,将在需要扫描的端口的范围内的数据依次赋值给要发送数据的端口号,然后调用connect函数,并等待对方响应连接,若得到响应则表示该端口正常开启,否则表示该端口关闭,并在控制台中打印其开关情况。3、程序流程图如下:扫描端口程序流程图3、 实验过程1 针对实验要求设计代码2 编写代码实现要求3 实验结果全开扫描:半开扫描:4、 讨论与分析1. 阐述全连接扫描的原理。 答:全连接扫描是TCP端口扫描的基础,现有的全连接扫描有TCP connect()扫描和TCP反向ident扫描等。其中TCP connect()扫描的实现原理如下所述:扫描主机通过TCP/IP协议的三次握手与目标主机的指定端口建立一次完整的连接。连接由系统调用connect开始。如果端口开放,则连接将建立成功;否则,若返回-1则表示端口关闭。建立连接成功:响应扫描主机的SYN/ACK连接请求,这一响应表明目标端口处于监听(打开)的状态。如果目标端口处于关闭状态,则目标主机会向扫描主机发送RST的响应。2. 你的程序是否考虑了扫描效率?如没有考虑你准备如何改进? 答:我的程序使用的全连接扫描,没有考虑扫描效率。可以尝试使用半连接扫描,若端口扫描没有完成一个完整的TCP连接,在扫描主机和目标主机的一指定端口建立连接时候只完成了前两次握手,在第三步时,扫描主机中断了本次连接,使连接没有完全建立起来,这样的端口扫描称为半连接扫描,也称为间接扫描。使用这种连接的优点在于即使日志中对扫描有所记录,但是尝试进行连接的记录也要比全扫描少得多,从而提高了扫描效率。五、实验者自评 通过本次实验,对端口扫描的基本概念和常用的基本方法有了熟悉和掌握,尤其是对全连接扫描和半连接扫描有了深入的认识,其各自的实现方法和优缺点也有所了解。对基本的windsock API函数的使用方法和实现原理有了更深入的了解,对TCP客户端编程有了更深刻的理解。在实验过程中,熟悉了网络编程方法,尤其是查阅资料并熟悉了TCP建立连接的三次握手过程,重新温习了对字符串的操作,对自己的编程动手能力有了较好的锻炼和提高。通过完成实验,对TCP编程的知识有了进一步了解,重新认识了其重要性,并对课堂上学习的知识进行了巩固。在实验过程中,我认真对待,态度积极,独立了完成实验任务。3、 附录:关键代码/ 填写远程地址信息sockaddr_in addr; addr.sin_family = AF_INET;/设置获取的用户输入IP地址为远程IP地址addr.sin_addr.S_un.S_addr = inet_addr(strIP);for ( i = atoi( starPort ); i = atoi( endPort ); i+ )/没扫描一个端口创建一个新的套接字SOCKET s = :socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);/如果套接字创建失败则返回错误if(s = INVALID_SOCKET)printf(Failed socket() %d n, :WSAGetLastError();return -1;/设置远程地址信息中的端口号为需要扫描的当前端口号addr.sin_port = htons(i);/连接设置好的远程地址,如果连接失败则表示端口关闭if ( :connect(s, (sockaddr*)&addr, sizeof(addr) =

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论