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

IP地址的合法性及子网判断

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

仲恺农业工程学院

课 程 设 计

IP地址的合法性及子网判断

姓 名

院(系) 信息科学与技术学院 专业年级 学 号 指导教师 职 称 导 师

起止时间 2013.10.21—2013.11.04

仲恺农业工程学院教务处制

1

目 录

1.课程设计目的和意义????????????????????????3

1.1设计的目的?????????????????????????3 1.2设计的意义?????????????????????????3

2.课程设计的内容和要求???????????????????????4 3.课程设计的相关技术????????????????????????4

3.1课程设计的运行环境?????????????????????4 3.2 IP地址相关概念和知识的回顾?????????????????5 3.3特殊的IP地址形式??????????????????????6 3.4子网的划分?????????????????????????7

4.课程设计过程???????????????????????????7

4.1程序大致设计过程??????????????????????7 4.2实验流程图?????????????????????????8 5.部分程序运行结果????????????????????????10 6.课程设计小结??????????????????????????12 7.参考文献????????????????????????????13 源代码??????????????????????????????13

2

1. 课程设计目的和意义

1.1设计目的

通过计算机网络课程设计,让我们学会处理几种常用计算机网络问题的基本处理方法,掌握计算机网络的基本原理,使我们在面对不断变化的技术时,具有跟踪,学习的基础与能力。

掌握IP地址的分类,准确理解子网、掩码的概念,确切地明了IP地址的合法格式。并判断该地址是否属于一个给定的子网。

具体而言,关于”IP地址的合法性及子网判断”课程设计题目的目的是:用C/C++语言编写程序,以判断一个IP地址是否合法,并判断该地址是否属 于一个给定的子网.从而能够考察我们对IP地址的概念,各类IP地址的区分以及子网划分的理解和掌握程度。 1.2设计的意义

1) 有利于基础知识的理解

通过计算机网络的学习,学生掌握了一些信息时代生存与发展必需的信息技术基础知识和基本技能,具备了在日常生活与学习中应用信息技术解决问题的基本态度与基本能力。让学生接触了程度设计,就能真正理解,从而进一步打破计算机的神秘感。

2) 有利于逻辑思维的锻炼

程序设计是公认的、最能直接有效地训练学生的创新思维,培养分析问题、解决问题能力的学科之一。即使一个简单的程序,从任务分析、确定算法、界面布 局、编写代码到调试运行,整个过程学生都需要有条理地构思,这中间有猜测设想、判断推理的抽象思维训练,也有分析问题、解决问题、预测目标等能力的培养。

3) 有利于与其他学科的整合

在程序设计中,我们可以解决其它学科有关问题,也利用其它课程的有关知识来解决信息技术中比较抽象很难理解的知识。在信息技术课中整合其它学科的知识,发挥信息技术的优势。

4) 有利于治学态度的培养

3

程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不通过,程序无法正常运行。因此,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能 成功,但这种现象会随着学习的深入而慢慢改观。有助于严谨治学、一丝不苟的科学精神的培养,以及不怕失败、百折不挠品格的锻炼。

2. 课程设计的内容和要求

在掌握IP地址的表示方法以及子网划分方法的基础上,并以计算机网络中关于IP地址的相关理论知识为基石,运用C/C++语言按如下要求完成程序。

(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.2345.2.1 123.23.45.1

(3)判断掩码的合法性。

譬如说mask的值为负数或者大与32,这时输入的掩码就不合法。 (3) 在IP地址合法,掩码合法以及子网号也合法的前提下,判断ip_addr是否属于subnet。

(4) 输出命令行中的ip是否合法,掩码是否合法,子网号码是否合法(可适当给出不合法的原因)以及ip_addr是否属于子网subnet。

(5) 还可以判断子网号,主机号全0,全1问题。

3. 课程设计的相关技术

3.1 课程设计的运行环境

C++是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽 象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。

4

本程序在Windows环境下利用C++语言编写,Microsoft Visual Studio 6.0进行编译。Visual Studio是微软公司推出的开发环境,Visual Studio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和office插件。 3.2 IP地址相关概念和知识的回顾

大型的互连网络中应该有一个全局的地址系统,它能够给连接到互联网的每一台主机或者路由器分配一个唯一的全局地址。TCP/IP协议的网络层使用的 地址标识符叫做IP地址,IPv4中IP地址是一个32位的二进制地址。网络中的每一台主机或者路由器至少有一个IP地址,在Internet中不允许有 两个设备具有相同的IP地址。如果一台主机或者路由器连接到两个或多个物理网络,那么它可以拥有两个或多个IP地址。

IP地址采用分层结构,由网络号与主机号两部分组成(如下图所示):

网络号 主机号 IP地址长度为32位,用点分十进制表示,格式为ⅹ.ⅹ.ⅹ.ⅹ,每个ⅹ为8位,每个ⅹ的值为0—255(例如202.113.29.119)。根据不同的取值范围,IP地址可以分为五类,IP地址中的前5位用于标识IP地址的类别,具体的分类规则如下:

·A类地址的第一位为0。 ·B类地址的前两位为10。 ·C类地址的前三位为110。 ·D类地址的前四位为1110。 ·E类地址的前五位为11110。 五类IP地址的结构如下所示; 0 10 110 1110 11110

5

网络号(7位) 网络号(14位) 网络号(21位) 组播地址 主机号(24位) 主机号(16位) 主机号(8位) 保留用于课程设计和将来使用

IP地址的合法性及子网判断

仲恺农业工程学院课程设计IP地址的合法性及子网判断姓名院(系)信息科学与技术学院专业年级学号指导教师职称导师起止时间2013.10.21—2013.
推荐度:
点击下载文档文档为doc格式
7rgna0vvuv92i2o9mdd8
领取福利

微信扫码领取福利

微信扫码分享