计算机网络课程设计验证ip地址附源代码Word下载.docx

上传人:b****6 文档编号:17317883 上传时间:2022-12-01 格式:DOCX 页数:15 大小:1.10MB
下载 相关 举报
计算机网络课程设计验证ip地址附源代码Word下载.docx_第1页
第1页 / 共15页
计算机网络课程设计验证ip地址附源代码Word下载.docx_第2页
第2页 / 共15页
计算机网络课程设计验证ip地址附源代码Word下载.docx_第3页
第3页 / 共15页
计算机网络课程设计验证ip地址附源代码Word下载.docx_第4页
第4页 / 共15页
计算机网络课程设计验证ip地址附源代码Word下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

计算机网络课程设计验证ip地址附源代码Word下载.docx

《计算机网络课程设计验证ip地址附源代码Word下载.docx》由会员分享,可在线阅读,更多相关《计算机网络课程设计验证ip地址附源代码Word下载.docx(15页珍藏版)》请在冰豆网上搜索。

计算机网络课程设计验证ip地址附源代码Word下载.docx

第一种情况、IP地址格式输入不合时,要滤掉全部情况,例如输入的为一串字符串;

第二正情况、就是IP地址公式输入不合法时,要过滤掉一些特殊的地址,如全为0对应当前主机,全为1则对应当前子网的有限广播地址,所以首先要过滤这两个地址;

第三种情况、IP的值被分割成四个值,对这四个值有统一的要求,就是0-255的整数,同时要考虑IP地址的第一个字节不能为零的情况,这个可以用正则表达式来进行匹配。

除此之外,还要判断输入的子网掩码是否合法,计算出来的网络地址,主机地址是否合法。

3.1.2、子网判断

子网判断的前提时要输入子网地址,在设计的过程中采用子网与网络号进行匹配,当给定子网的地址与网络地址相同时,说明地址在给定子网中,否则不在给定子网中。

3.2、程序流程图

3.3结果与分析

1、登录界面

2、操作界面

3、测试IP地址合法性

4、测试子网掩码合法性

5、判定子网

3.4、源代码

登陆界面

namespaceip

{

publicpartialclassForm1:

Form

{

publicForm1()

InitializeComponent();

}

privatevoidbutton2_Click(objectsender,EventArgse)

foreach(ControlchildControlinthis.Controls)

if(childControlisTextBox)

((TextBox)childControl).Text="

"

;

privatevoidbutton1_Click(objectsender,EventArgse)

inti=0;

stringstrcon="

server=DESKTOP-RADS474;

DataBase=IP验证;

IntegratedSecurity=True"

SqlConnectionsqlcon=newSqlConnection(strcon);

stringstrcom="

selectpwdfromyonghuwhereid='

+textBox1.Text+"

'

andpwd='

+textBox2.Text+"

SqlCommandsqlcom=newSqlCommand(strcom,sqlcon);

sqlcon.Open();

SqlDataReadersqldr=sqlcom.ExecuteReader();

while(sqldr.Read())

i++;

if(textBox1.Text!

="

&

&

textBox2.Text!

if(i==0)

MessageBox.Show("

请输入正确的账号密码!

);

else

登陆成功"

Form2frm2=newForm2();

frm2.Show();

账号密码不能为空!

sqlcon.Close();

privatevoidtextBox1_TextChanged(objectsender,EventArgse)

}

操作界面

publicpartialclassForm2:

publicForm2()

publicboolIsCorrectIP(stringip)//判断IP地址合法

stringpattrn=@"

(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])"

if(System.Text.RegularExpressions.Regex.IsMatch(ip,pattrn))

returntrue;

returnfalse;

publicboolIsCorrectMask(stringm)//判断子网掩码合法

stringpattrn="

(254|252|248|240|224|192|128|0)\\.0\\.0\\.0|"

+"

255\\.(254|252|248|240|224|192|128|0)\\.0\\.0|"

255\\.255\\.(254|252|248|240|224|192|128|0)\\.|"

255\\.255\\.255\\.(254|252|248|240|224|192|128|0)"

if(System.Text.RegularExpressions.Regex.IsMatch(m,pattrn))

privatevoidlabel5_Click(objectsender,EventArgse)

privatevoidbutton6_Click(objectsender,EventArgse)

if(textBox3.Text=="

网络地址不合法!

if(textBox5.Text=="

请输入子网地址"

//拆分网络地址

stringstrr0;

strr0=textBox3.Text;

char[]separator3={'

.'

};

int[]arr5=newint[4];

string[]splitstrings3=newstring[100];

splitstrings3=strr0.Split(separator3);

for(i=0;

i<

splitstrings3.Length;

i++)

arr5[i]=Convert.ToInt32(splitstrings3[i]);

//拆分子网

stringstrr1="

stringstrr2="

stringstrr3="

strr1=textBox5.Text;

int[]arr6=newint[4];

string[]splitstrings4=newstring[100];

splitstrings4=strr1.Split(separator3);

for(intj=0;

j<

4;

j++)

arr6[j]=Convert.ToInt32(splitstrings4[j]);

//子网位与网络位相与

arr5[i]=arr5[i]&

arr6[i];

if(i==3)

strr3+=Convert.ToString(arr5[i]);

strr3+=Convert.ToString(arr5[i])+"

."

//显示基本信息

if(strr1.CompareTo(strr3)==0&

strr3.CompareTo("

0.0.0.0"

)!

=0)

label7.Text="

给定子网地址:

+textBox5.Text+"

\n该主机网络号:

+textBox3.Text;

属于给定子网"

不属于给定子网"

privatevoidbutton4_Click(objectsender,EventArgse)//重置textbox

stringIPA;

IPA=textBox1.Text;

if(textBox1.Text=="

请输入IP地址!

elseif(IsCorrectIP(IPA))

stringstr=textBox1.Text;

char[]separator={'

string[]splitstrings=newstring[100];

splitstrings=str.Split(separator);

if(Convert.ToInt32(splitstrings[0])==0&

Convert.ToInt32(splitstrings[1])==0&

Convert.ToInt32(splitstrings[2])==0&

Convert.ToInt32(splitstrings[3])==0||

(Convert.ToInt32(splitstrings[0])>

=255||Convert.ToInt32(splitstrings[1])>

=255||

Convert.ToInt32(splitstrings[2])>

=255||Convert.ToInt32(splitstrings[3])>

=255))

该IP地址不合法!

该IP地址合法!

IPA=textBox2.Text;

if(textBox2.Text=="

请输入子网掩码地址!

elseif(IsCorrectMask(IPA))

该子网掩码地址合法"

该子网掩码地址不合法"

privatevoidbutton3_Click(objectsender,EventArgse)

//拆分IP地址

strr0=textBox1.Text;

//拆分子网掩码

strr1=textBox2.Text;

//IP地址与子网掩码相与

arr6[i]=arr5[i]&

strr3+=Convert.ToString(arr6[i]);

strr3+=Convert.ToString(arr6[i])+"

textBox3.Text=strr3;

char[]separator4={'

int[]arr7=newint[4];

string[]splitstrings5=newstring[100];

splitstrings5=strr3.Split(separator4);

splitstrings5.Length;

arr7[i]=Convert.ToInt32(splitstrings5[i]);

//IP地址与网络地址相减

arr7[i]=arr5[i]-arr7[i];

strr2+=Convert.ToString(arr7[i]);

strr2+=Convert.ToString(arr7[i])+"

textBox4.Text=strr2;

privatevoidbutton5_Click(objectsender,EventArgse)

this.Close();

四、改进和建议

登录界面通过访问数据库判定用户账号密码信息。

将操作界面得到的结果保存到TXT文件或数据库中实现信息的保存。

五、感悟与心得

通过这次课程设计我收获很多,在学习方面,通过上网和到图书馆借书查阅资料使我更加深入的学习力C#程序开发语言并利用我所学到的知识完成了本次课程设计。

另一方面,也使我体会到了团队合作的重要性。

虽然本次课程设计是需要独自完成,但在设计的过程中难免会遇到难题,这时请教同学或老师变成了良好的选择。

和同学老师一起探讨问题,思想就会变得全面,考虑问题变得更加多元,是我们可以进款的找到问题的所在。

使得程序更加的完善。

这次课程设计充分锻炼、增强了我的程序设计能力,使我加深了对理论知识的理解和掌握。

充分体会到了理论固然重要,如果没有实践去检验,那也只是停留在理论层面上,它的实现意义将无法得到体现。

所以,这次课程设计是理论与实践的结合,增强了我的个人实践能力。

六、参考文献

C#应用开发与实践;

CSDN博客

综合实习成绩评定表

学生姓名

专业班级

设计题目

指导教师评语及意见:

指导教师评阅成绩:

指导教师签字:

年月日

注:

此表装订在课程设计之后。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1