好文档 - 专业文书写作范文服务资料分享网站

IP地址的合法性与子网判断计算机网络系统设计书

天下 分享 时间: 加入收藏 我要投稿 点赞

IP地址的合法性及子网判断计算机网络系统设计书

第一章 概述

1.1课程设计目的

本设计要求编写程序,判断一个IP地址是否合法,并判断该地址是否是属于一个给定的子网。从而考察读者是否对IP地址概念及子网划分有非常清楚的认识。

1.2 课程设计的要求

在掌握IP 地址的表示方法及指望划分方法的基础上,按如下要求完成程序。 1) 命令行格式:ip_test subnet/mask ip_addr

其中,ip_test为程序名;subnet为子网好;mask是一个数值,代表子网掩码连续1 的个数;ip_addr是要测试的IP地址。

例如,要测试的IP地址为202.113.16.10,子网号为202.113.16.0,子网掩码为255.255.255.0,则没命令行为ip_test202.113.16.0/24 202.113.16.10.(因为255.255.255.0是连续的24个1,所以用24表示。)

2) 判断subnet和ip_addr的合法性。

在判断IP地址的合法性是要自行编写代码,不要用任何的inet函数。

判断是要考虑全面,比如以下IP 的地址的合法性: 123..2.1 123.23¥.2.1 123.23.45.2.1 3) 判断掩码的合法性。

4) 在IP地址合法的前提下,判断ip_addr是否属于子网subnet。 5) 输入命令行中的ip是否合法,掩码是否合法(可适当给出不合法原因)

以及ip_addr是否属于子网subnet。

第二章 具体设计

2.1设计思路

根据以上的要求,并结合当前的所学的一些知识和技术,我们最终通过另一种方式来实现相同的功能,但代码更加优化,高效,方便用户的窗体程序。 对于以上的要求,设计思路如下:

1. 程序大致流程

1) 分别判断子网号,掩码和ip地址的基本格式的合法性。 2) 如果三者的基本格式都合法,才调用判定“IP地址是否为子网成

员”的函数。该函数同时判别子网号和掩码是否匹配,子网号为全0或全1,主机号为全0、全1。

2. 核心代码及说明

判断ip地址是否合法,才调用判定“IP地址是否为子网成员”的函数。该函数同时判断子网号与掩码是否匹配,子网号为全0或全1,主机号为全0、全1. 3. 核心代码及说明

1) 判断IP地址是否合法。

一般来说,我们先检查最明显的错误。例如,可以先判断IP中“.”

的个数是否正确;接着,以“.”为标志将IP字符串按节分开;然后,看该IP是否为4段,再判断各节是否是0~255间的整数。关于网络号、主机号全0全1等问题要在后面结合子网掩码一起判断。

这里德关键是怎么样将IP字符串以“.”为标志按节分开,这要用到函数strtok(char * strToken,const char * strDelimit)。第一个参数是给定的串,第二个参数是分隔符集合,该函数的功能就是以strDelimit中包含的任意字符为分隔符,在strToken中寻找下一个token。每一次调用strtok后,都会在strToken中插入一个NULL字符,所以,如果要读取下一个stoken,接下来调用strtok时第一个参数用NULL。

这样,IP串的每一段都放到dot数组里了,下面判断是否有非法字符,每一段的值是否在0~255之间,就很容易了。

2) 判断IP地址是否为子网成员,判断子网号与掩码是否匹配,以及

子网号、主机号全0、全1的问题

2.2流程图如下:

当用户启动程序后(如图2.1),在输入框中输入IP、子网、子网掩码,然后点击测试,验证其合法性。在此过程中调用子程序isLegal(如图2.2)在子程序中判断输入的IP地址是否合法(其中包括:1.判断输入的IP长度是否合法;2.判断输入的IP是否含有非法字符;3.判断输入的IP格式是否正确;4.判断输入的IP是否已转化为Ipaddress的实例)。跳回到主程序中继续执行,如果IP、子网、子网掩码都合法,调用子程序subChecked(如图2.3),在子程序中完成判断子网号和子网掩码是否匹配,如果匹配则进一步判读子网号是否为全0或全1,否则输出子网号和子网掩码不匹

配提示。接下来,如果子网号不为全0或全1则将IP和掩码做“与”运算,结果和子网号比较,否则输出子网号为全0或全1提示。再接下来,判断比较结果(IP和掩码做“与”运算的结果和子网号的比较结果)是否相等,如果相等则判断主机号是否为全0或全1,如果不相等则输出“IP不属于该子网”。最后,如果主机号为全0或全1则输出主机号为全0或全1提示,如果主机号不为全0或全1则输出“IP属于该子网”。

子程序执行完后返回主程序中继续执行,然后完成ip地址是否属于给定子网的判定

IP地址的合法性与子网判断计算机网络系统设计书

IP地址的合法性及子网判断计算机网络系统设计书第一章概述1.1课程设计目的本设计要求编写程序,判断一个IP地址是否合法,并判断该地址是否是属于一个给定的子网。从而考察读者是否对IP地址概念及子网划分有非常清楚的认识。1.2课程设计的要求在掌握IP地址的表示方法及指望划分方法的基础上,按如下要
推荐度:
点击下载文档文档为doc格式
8a6ty8oamr5136q5t3t485bn78arf200cla
领取福利

微信扫码领取福利

微信扫码分享