付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学 号:0121210680225课程实践报告题目IP地址的合法性以及子网判断学院计算机科学与技术学院专业软件工程班级软件sy1201姓名李安福刘东飞指导教师2015 年 6 月 1505)输出命令行中的ip是否合法,掩码是否合法(可适当给出不合法的原因)以及课程实践设计任务书学生姓名:李安福专业班级:软件sy1201指导教师:刘东飞工作单位:计算机学院题目四:IP地址的合法性及子网判断初始条件:(1)学习相关知识(2) C/C+/VC/VB/JAVA 语言(3) PC机一台要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)在掌握IP地址表示方法及子网划分的基础上
2、,按如下要求完成程序其中为程序名;sub net为子1) 命令行格式:iptest subnet/mask ip_addr, ip_test网号;mask是一个数值,代表子网掩码连续1的个数;ip_addr是要测试的IP地址。例如,要测试的IP地址为202.114.16.10,子网号为 202.113.16.0 ,子网掩码为255.255.255.0,则命令行为 ip_test 202.113.16.0/24202.114.16.10( 因为255.255.255.0是连续的24个1,所以用24表示)。2)判断sub net和ip_addr的合法性。在判断IP地址合法性时要自行编写代码,不要使
3、用任何inet函数。判断时要考虑全面,比如以下IP地址均不合法:123.2.1 / 123.23$21 / 123.2345.2.1 / 123.23.45.2.13)判断掩码的合法性。ip_addr 是否属于子网 sub net。时间安排:第一、二天:查阅资料,学习算法第三、四天:编程调试第五天:书写报告指导教师签名:系主任(或责任教师)签名:计算机网络课程实践设计指导书课程编号:课程名称仲文/英文):计算机网络)课程实践设计周数/学分:1周先修课程:操作系统,计算机网络适用专业:计算机,软件、目的与要求通过一个实际网络协议或网络应用系统的分析与总体设计,综合运用所学知识,加深对网络知识理解
4、和掌握。同时培养学生分析问题和解决问题的能力,以及软件文档的制作能力。二、课程实践设计内容题目一:帧封装 题目二:模拟Ethernet帧的发送过程 题目三:解析IP数据包题目四:IP地址的合法性及子网判断 题目五:发现网络中的主机 题目六:发送TCP数据包具体要求见任务书三、课程特色注重网络应用设计能力,加强培养综合运用能力。四、课程实践设计步骤与方法1 .系统调研:查阅文献,熟悉系统功能和开发工具;2. 系统分析与设计:确定功能结构,数据结构,用户界面以及开发平台;对各功能模块进行准确的定义;确定各功能模块的算法并画出相应的数据流图;3. 编程并上机调试。4. 撰写课程实践设计报告(说明书)
5、。五、课程实践设计说明书与图纸课程实践设计说明书包括以下内容:设计题目 设计说明 源程序说明与执行结果。使用说明。5 设计心得,以及对该实用程序进一步改进扩展的设想。六、课程实践设计答辩学生完成设计后,由指导老师检查和质询,以检验设计合理性与正确性。七、课程实践设计进度表序号内容所用时间1查阅资料1天2系统分析,设计2天3编程并上机调试2天4撰写文档,其它1天合计6天八、参考资料计算机网络课程设计机械工业出版社执笔:(课程负责人或任课教师签字)刘东飞日期:日期:审阅:(系或教研室主任签字)审定:(教学院长或主任签字)课程设计的目的和意义1.1设计目的掌握IP地址的分类,准确理解子网、掩码的概念
6、,确切地明了IP地址的合法格式。并判断该地址是否属于一个给定的子网。1 . 2设计的意义1、有利于对基础知识的理解2、有利于逻辑思维的锻炼程序设计是公认的、最能直接有效地训练学生的创新思维,培养分析问题、解决问题能力的学科之一。即使一个简单的程序,从任务分析、确定算法、界面布局、编写代码到调试运行,整个过程学生都需要有条理地构思,这中间有猜测设想、判断推理的抽象思维训练,也有分析问题、解决问题、预测目标等能力的培养。3、有利于与其他学科的整合在程序设计中,我们可以解决其它学科有关问题,也利用其它课程的有关知识来解决信息技术中比较抽象很难理解的知识。在信息技术课中整合其它学科的知识,发挥信息技术
7、的优势。4、有利于治学态度的培养。程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不通过,程序无法正常运行。因此,程序设计初学阶段,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能成功,但这种现象会随着学习的深入而慢慢改观。这当中就有一个严谨治学、一丝不苟的科学精神的培养。课程设计的内容和要求要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰 写等具体要求)在掌握IP地址表示方法及子网划分的基础上,按如下要求完成程序。1)命令行格式:ip_test subnet/mask ip_addr, ip_test
8、其中为程序名;sub net为子网号;mask是一个数值,代表子网掩码连续 1的个数;i p_addr是要测试的IP地址。例如,要测试的IP地址为202.114.16.10,子网号为202.113.16.0,子网掩码为 255.255.255.0,则命令行为 ip_test 202.113.16.0/24 202.114.16.10( 因为255.255.255.0 是连续的24个1,所以用24表示)。2)判断sub net和ip_addr的合法性。在判断IP地址合法性时要自行编写代码,不要使用任何inet函数。判断时要考虑全面,比如以下IP地址均不合法:123.2.1 / 123.23$.2
9、.1 / 123.2345.2.1 / 123.23.45.2.13)判断掩码的合法性。4 )在IP地址合法的前提下,判断ip_addr是否属于子网sub net。5)输出命令行中的ip是否合法,掩码是否合法(可适当给出不合法的原因)以及ip_addr是否属于子网sub net 。课程设计的相关技术1. IP地址相关概念所谓IP地址就是给每个连接在In ternet上的主机分配的一个32bit地址。按照 TCP/IP (Transport Control Protocol/lnternet Protocol,传输控制协议/In ternet协议)协议规定,IP地址用二进制来表示,每个IP地址长
10、32bit,比特换算成字节,就是4个字节。例如一个采用二进制形式的IP地址是“00001010000000000000000000000001”,这么长的地址,人们处理起来也太费劲了。为了方便人们的使用,IP地址经常被写成十进制的形式,中间使用符号分开不同的字节。于是,上面的IP地址可以表示为“10.0.0.1 ”。IP地址的这种表示法叫做“点分十进制表示法”,这显然比1和0容易记忆得多。大型的互连网络中应该有一个全局的地址系统,它能够给连接到互联网的每一台主机或者路由器分配一个唯一的全局地址。TCP/IP协议的网络层使用的地址标识符叫做IP地址,IPv4中IP地址是一个32位的二进制地址。网
11、络中的 每一台主机或者路由器至少有一个IP地址,在In ternet中不允许有两个设备具有相同的IP地址。如果一台主机或者路由器连接到两个或多个物理网络,那么 它可以拥有两个或多个IP地址。IP地址采用分层结构,由网络号与主机号两部分组成(如下图所示):网络号主机号IP地址长度为32位,用点分十进制表示,格式为X . X .X . X,每个X为8位,每个X的值为0 255 (例如202.113.29.119 )。根据不同的取值范围,IP 地址可以分为五类,IP地址中的前5位用于标识IP地址的类别,具体的分类规 则如下:A类地址的第一位为B类地址的前两位为10 .C类地址的前三位为110。D类地
12、址的前四位为1110。E类地址的前五位为11110 。五类IP地址的结构如下所示;A类IP地址结构适合用于有大量主机的大型网络。由于主机号长度为24位,因此每个A类网络的主机IP数理论上为224=16777216。B类IP地址适合用于一些国际性大公司与政府机构等中等大小的组织。由于网络IP长度为14位,因此允许有214=16384个不同的B类网络,实际允许 连接16382个网络。C类IP地址适合用于一些小公司与普通的研究机构。2.特殊的IP地址形式(1) 直接广播地址A类,B类,C类IP地址中主机号全1的地址称为直接广播地址,用来使路由器将一个分组以广播方式发送给特定网络上的所有主机。直接广播
13、地址只能 作为分组中的目的地址。物理网络采用的是点一点传输方式, 分组广播需要通过 软件来实现。网络号主机号全1(2) 受限广播地址网络号与主机号的32位全位1的地址为受限广播地址,用来将一个分组以 广播方式发送给本网的所有主机。 本网的所有主机将接受该分组,路由器则阻挡 该分组通过。(3) “这个网络上的这台主机”地址(4) “这个网络上的特定主机”地址主机或路由器向本网络上的某个特定的主机发送分组,网络号部分为全0,主机号为确定的值。这样的分组被相知在本网络内部。主机号网络号全0(5 )回送地址回送地址用于网络软件测试和本地进程见通信。TCP/IP协议规定网络号为127的分组不能出现在任何
14、网络上;主机和路由器不能为该地址广播任何寻址信息。127任意值(通常取1)3.子网的划分人们在早期设计与建设ARPAnet是,没有预料到网络的发展速度如此之快, 应用范围如此之广。当时个人计算机与局域网尚未出现。所以,研究者在设计In ternet地址的编址方案时,主要是针对大型互联的网络结构。设计 IP地址的最初目的是希望每个IP得志都能唯一地、确定地识别一个网络与一台主机,但是这种方法同时也存在着两个主要的问题,即IP地址的有效利用率和路由器的工作效率。为了解决这个问题,人们提出了子网(sub net )和超网(sup ernet )的概念。子网就是一个大的网络划分成几个较小的网络,而每一
15、个小网络都是其自己的地址。超网就是将一个组织所属的几个C类网络合并成为一个更大地址范围的逻辑网络。划分子网实际上就是在IP地址系统中增加一个层次。三级IP地址的表示方法为netID-subnet ID-host ID。第一级网络号定义了网点的位置;第二级子网号定义了物理子网;第三级主机号定义了主机和路由器到物理网络的连接。三级 层次的IP地址,一个IP分组的路由器的过程分为三步:第一步将分组转发给网 点,第二步转发给物理子网,第三步转发给确切的主机。当三级层次的IP地址提出后,一个很显示的问题是:如何从一个IP地址提取出子网号。因此,提出了子网掩码(sub net mask )的概念。子网掩码
16、有时也 叫做子网掩码。子网掩码表示方法:网络号与子网号置 1,主机号置0。如判断某一 IP地址是否属于某一子网呢?只需将二进制IP地址与子网掩码IP按位进行“与”运算。若“与”运算所得值与给定子网地址一致,则说明该 地址属于给定的子网。四.课程设计过程1、课程设计流程图:程序开始,变量初始化I读取一个字符串NreturnYN段数=4?YYN输出”ip地址非法”Y调用 ipIsValid函数Y Y_1大于255是否都是数字字符每段的值是否Yipl sValid(subnet)是否为真YN子网号与掩码不匹配YNY匚Mask是否在lp&Mask=subnet(0,32)范围内输出”掩码非法”程序结束
17、输出”子 网非法”五.程序运行结果(1)在命令提示窗口中输入命令:这个结果表示所输入的子网及ip地址是合法的ip_test 202.113.16.0/24 202.113.16.10结果如下:唏人需要判茁的子性、推讯殳加吃址:20.16. 0/24 202. 1:3. 16. 10:t IS (i correct Ir ad;iress:垂谒台法;24t iw fl corrprt sumnAf nddrpss!:D地址环于该子匡罷(2)判断ip地址无效在命令提示窗口中输入命令:ip_test 202.113.16.0/24 202.123.21.$%结果如下:轴入需藝判飾的了Fq、擡码以耳i
18、n地址: 202, in. L6.o.24 203. 123.213% subnet :s nd richZ该结果表示所输入ip地址无效,因为ip地址中有无效字符“ $% ”。在命令提示窗口中输入命令:ip_test 202.113.16.0/24 202.123.21.10.10结果如下:爺A需要判降的:?网、掩码4灵ia地址: 202. ill :0/24 202. 123.21. 10. 10 IF ur subnti: arc notsunnet is correct!施码合法:24i)i fKit iiehtU由命令可以很明显的看出ip地址过长,说明该程序算法正确。判断掩码的有效性
19、在命令提示窗口中输入命令:ip_test 202.113.16.0/2ab 202.113.16.10结果如下:蠲人需要判的f赳、茏a氐地址: “DN 16. 0. rrrr.x :幫诽E法很显然,掩码中含有“ a”,不合法。在命令提示窗口中输入命令:ip_test 202.113.16.0/33 202.113.16.10结果如下:I琉人蕊要判斷的子网.廷耳以及5坦址;2U2. 113. 1G. 0/33 2(12. m. 1G. L0 iLonut is correct!掩巨非法iT 1- POTTfCT ip riddress; itjflM片不厘亍该干网! 请按任M锂蛊議 因掩码不能长
20、于32位,上提示掩码无效进一步说明该算法的正确性。(4) 判断ip地址是否属于该子网在(1)中是该ip地址属于该子网的情况,显然在命令提示窗口中输入命令:ip_test 202.113.16.0/24 202.113.15.10该ip地址不属于该子网。结果如下:诟h霉要列憲苗了网、掩码以亞地址:113. It), 202. 113, lb. 10.sunnet correctI;變雪含注ii L 1 1 s:ip纯吐国于匡子网! 请按炷苣睦继疾 .该结果符合我们的预想。(5)提示子网号全0或全1在命令提示窗口中输入命令:ip_test 0.0.0.0/24 202.113.16.10结果如下:
21、蚯入需要判券的子网,掩码y更“地址:丄 0 6 0芒4 202.113.16. 10sunnet is correct:笹人子网不眉干 AC科貉之间! 掩非注:T it n r-rrrf.!Ct ip sdriress; 和民谆干网! 涓吝HQ環港缕 .在命令提示窗口中输入命令:ip_test 255.255.255.0/24 202.113.15.10结果如下:谑;入粤翼4时说于网.葩薛即及吃土址= 200. Joo. 00. 0. #in cludevstri ng.h #in cludevstdlib.h#in cludevmath.h int Maskudge(i nt a)if(a=
22、1 &a=128&a=192&a=0&a=0&b= 0&cv=255)&(d=0&d=255)/判断第一个数是否为零开头的,例如if(str0=0&str1!=.|str0=&str1=0&str2!=.) 099.111.111.111prin tf(sub net is n ot nght1!n);return 0;for(i=0;i=q&e=31)printf(掩码合法:%dn,e);else if(e31n,e);if(o!=1)printf(斜杠只能出现一次!n);/判断ip地址是否正确if(f=0&fv=255)&(g=0&gv=255)&(h=0&h=0&jv=255)/判断第一
23、个数是否为零开头的,例如if(strz=0&strz+1!=.|strz=&strz+1=0&strz+2!=.) 099.111.111.111prin tf(ip is not right1!n);return 0;for(i=z;iz+16;i+)if(stri=.&stri+1=0&stri+2!=.&stri+2!=0&s tri+2!=)避免出现111.011.022.033 的错误ip地址prin tf(ip is n ot nght2!n);return 0;/1.elseif(stri=.&stri+1=0|stri=&stri+1=0&stri+2!=.|stri=.&st
24、ri+1=)/2.避/3.避免免最后一个数字是零的情况下以空格结尾判断失误printf(ipis not right3!n);最后出现类似1.1.1.1.地址/4.避return 0;免类似09.111.111.111地址prin tf(it is a correct sumnet address! n);elseprin tf(ip is not right4!n);return 0;=卷ipadd徊国2)=b2Hafoim(bsf& 2)=c2Hafoimoac sf& 2)=d2Hafoim(d2)=Pl1mf(=%2rrb2)-Pl1mf(=%2rfb2)-pl1m%2rrEPl1nf
25、f(=%2rfd2) - *一f2Hafoimoa(h stz 2)=g2Hafoimoa(F 2)=j2Hafoimp 2)=Pl1mf(=%2rrj2)-Pl1mf(=%2rr 込 2=Pl1mf(=%2rfh2)-Pl1mf(=%2rrj2) - *一numHemodH8e&8-dMderHpowupmodxpl1mf(=%2rfdMde2if(numHHlggf2HHa2ggg2、dMdeHHb2、dMde)prin tf(ip地址属于该子网1!n);return 0;elseif(n um=2&f2=a2&g2=b2&h2/divider=c2/divider)printf(ip 地址属于该子网2!n);return 0;elseif(num=3&f2=a2&g2=b2&h2=c2&j2/divider=d2/divi der)printf(ip地址属于该子网3!n);return 0;elseprintf(ip地址不属于该子网!n);/* prin tf(%d-%d-%d-%dn,a,b,c,d);prin tf(%dn,e);prin tf(%d-%d-%d-%d,f,g,h,j);*/int main (void)char con st* p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- “法治护航民营经济”行动方案
- 疼痛治疗总结2026
- 2025松阳县职业中等专业学校工作人员招聘考试试题
- 2025景东彝族自治县职业高级中学工作人员招聘考试试题
- 文化旅游演艺综合体在2025年的技术应用与创新前景分析报告
- 2025年废旧纺织品循环利用行业创新报告
- 哈丽法塔外幕墙单元体专项施工方案
- 幼儿园角色区服装清洗频率与卫生状况-基于2024年后勤清洗记录与抽检
- 初中历史教学中数字故事创作与历史情境再现的教学设计课题报告教学研究课题报告
- 北交所消费服务产业跟踪第六十期:工业金刚石近期价格上涨且散热应用逐步商业化关注北交所相关公司惠丰钻石
- 生物浙江宁波市三锋联盟2025-2026学年度高一年级第二(下)学期期中联考(4.22-4.24)
- 2026福建福州开大学川智慧教育科技有限公司招聘财务主管笔试参考题库及答案解析
- 【答案】《以案说法》(中南财经政法大学)章节作业慕课答案
- 云南省2025年普通高中学业水平合格性考试历史试题
- 《扣件式钢管脚手架安全技术规范》JGJ130-2023
- GB/T 39844-2021可靠性增长统计试验和评估方法
- GB/T 20641-2014低压成套开关设备和控制设备空壳体的一般要求
- GB/T 13454.2-2013塑料粉状三聚氰胺-甲醛模塑料(MF-PMCs)第2部分:试样制备和性能测定
- 计算流体力学CFD课件
- 作文与预测-范文gre讲义
- 昆虫生态及预测预报
评论
0/150
提交评论