计算机网络实验报告1
任务1
目标: 创建一个以自己姓名命名的java项目,编写java代码,将自己的学号和姓名打印出来,将操作过程中的关键步骤和实验结果截图
实验代码:
1 | package com.company; |
任务2
目的:访问自己经常访问的网站,并将访问过程中的网络包抓取下来并截图;另外根据不同的过滤规则抓取网络包,并截图,书写实验报告
首先我们打开 Wireshark 软件,找到有流量的网卡,这里是无线网卡 WLAN
结果如下,这个软件会将所有的包都抓取下来,且实时更新:
设置过滤规则
学习博客: https://www.cnblogs.com/mq0036/p/11187138.html
利用地址过滤
我们首先在 cmd 中ping一下目标网站的域名,这里我以一个著名的学习网站:https://codewithmosh.com/ 为例。
然后我打开这个网页,并在 Wireshark里面设置过滤词: ip.addr == 104.193.88.77
addr 这个过滤类型是对所有 Source address和Destination address 进行筛选,因此这里一共显示了8条数据。
如果我只对 Source address进行筛选,那么我们可以这样写:ip.src == 104.193.88.77
或者对 Destination address进行筛选, 那么我们就这样写:ip.dst == 104.193.88.77
利用协议过滤
因为我们有个下载可见的 ftp,所以这里我直接在搜索框中搜 ftp 就能抓取所有协议是ftp的网络包了
进阶任务1
Java项目:任意构造两个类,两个类分别具有不同的属性和操作,并分别实例化一个对象,完成任意操作。
Main class:
1 | package com.company; |
class1: Plus calculator
这个类实现的功能很简单,就是返回两个数字相加
1 | package com.company; |
class2: Minor calculator
同理,这个类就是返回两个数字相减
1 | package com.company; |
实验结果:
实验感悟
这几个类设计的非常简单,但是却让我了解了Java文件的运行模式:它是一门面向对象的语言。因此我们可以通过实现一系列操作降低代码的耦合度。 Idea提供了很方便的快捷指令将写在 Main函数当中的方法独立抽象出来生成一个类。这一方法在我的博客中有详细说明。Extracting the Class
进阶任务2
安装发包软件(自己寻找),发送不同协议的网络包,并用 wireshark 抓取。
这里我使用 Xcap 软件来作为发包工具。下载地址: http://xcap.weebly.com/
首先我们要选择打开的接口,然后往这个接口发送数据包。因为Wireshark中若选择 WLAN,会有很多干扰。很难找到xcap发出的数据包。因此这里我选择 本地连接10做为接口。
紧接着,我们在 Packet group中新建一个报文组。
这里,我已经将一些数据包保存为一个 .pcap 文件,我们只需要点击 Read from .pcap file 这个选项,从里面选择我们要发送的不同协议的数据包即可。
紧接着,我们将接口选择刚才已经打开的 Interface2,结果如下:
然后我们打开 Wireshark, 选择本地连接10,并选中我们要发送的几种数据包:
然后,我们在本地连接10 成功收到了 xcap发出的五种不同协议的数据包。实验结果让人满意