专栏博客链接


《计算机网络自顶向下》Wireshark Lab + 套接字编程作业 + 杂项实验室编程作业 全实验博客链接


前引


各位好 呜呜 本来我现在是打算去写Ethernet and ARP Lab的 结果忽然在下载链接看到了 怎么多了两个Lab 一个是NAT 一个是DHCP - - 之前写ICMP的时候就觉得挺奇怪的 怎么上面还有两个 但是我还是按照书本上的Lab 继续写 但是真的又觉得不对啊 NAT DHCP也介绍过 不可能放在后面再做吧 - -

这个时候我就意识到了 应该是书上漏掉了写有这两个Lab了 - -
周末的任务还是挺多的 得一件一件去做 那开始做Lab了


Lab6 NAT


查阅Wireshark Lab官网 获取Lab文档


下面是方便大家下载的链接 友情提供哈^^
WIRESHARK LABS

下面是Lab的中文截图 大家看看就好
在这里插入图片描述


Q&A 1 所作工作


这个Lab由于我们不好捕捉包 所以我们需要下载别人给的捕获包 下面是链接 复制到网页下载或者迅雷下载即可
http://gaia.cs.umass.edu/wireshark-labs/wireshark-traces.zip

下载的我们要用到的是NAT_home_side NAT_ISP_side 这两个 一个是在客户机上捕获的 一个是由路由器发送到ISP的包

我们先打开NAT_home_side 客户机的Wireshark文件 截图如下 之后还需要看ISP端的文件 再打开即可

在这里插入图片描述


Q&A 1


1. 客户的 IP 地址是什么?
看图可得 私网IP地址为192.168.1.100 对外的外网ip为71.192.34.104

2. 客户端实际上与几个不同的 Google 服务器进行通信,以便实现"安全浏览"。(请参阅本实验室末尾的额外Credit部分)。将服务于谷歌主网页的谷歌主服务器IP地址为64.233.169.104。 为了只显示那些包含 HTTP 消息的帧,发送到/从这个谷歌,服务器,输入表达"http +ip.addr=64.233.169.104"(无报价)到过滤器:在 Wireshark 字段。
这个是操作 我们需要过滤 如下
在这里插入图片描述


3. 现在考虑 HTTP GET 从客户端发送到 Google 服务器(其 IP 地址为 IP 地址 64.233.169.104)的时间 7.109267。 携带此 HTTP GET 的 IP 数据图上的源和目的地 IP 地址以及 TCP 源和目的地端口是什么?
对于客户机 私网
Source IP 192.168.1.100 Des IP 64.233.169.104 TCP 端口4335 Dst Port 80
对于路由器端
Source IP 71.192.34.104 Des IP 64.233.169.104 TCP 端口4335 Dst Port 80


4. 从 Google 服务器收到的相应 200 OK HTTP 消息在什么时间? 携带此 HTTP 200 OK 消息的 IP 数据图上的源和目的地 IP 地址以及 TCP 源和目的地端口是什么?
对于客户机 私网 7.15s
Source IP 64.233.169.104 Des IP 192.168.1.100 TCP 端口4335 Dst Port 80
对于路由器端 6.11s
Source IP 64.233.169.104 Des IP 71.192.34.104 TCP 端口4335 Dst Port 80


5. 请记住,在 GET 命令发送到 HTTP 服务器之前,TCP 必须首先使用三向 SYN/ACK 握手设置连接。 在什么时间发送的客户端到服务器 TCP SYN 段,该段设置 GET 在 7.109267 时发送的连接? TCP SYN 段的源和目的地 IP 地址以及源和目的地端口是什么? ACK 的源和目的地 IP 地址以及响应 SYN 发送的源和目的地端口是什么? 此 ACK 在客户端收到的时间是哪个时间?(注意:要查找这些段,您需要清除您在第 2 步中输入的筛选器表达式。 如果您输入过滤器"tcp",只有 TCP 段将由 Wireshark 显示)。

在这里插入图片描述

在这里插入图片描述

对于握手 和上文IP地址 目的地址一样 - -
对于客户机 私网 7.15s
Source IP 64.233.169.104 Des IP 192.168.1.100 TCP 端口4335 Dst Port 80
对于路由器端 6.11s
Source IP 64.233.169.104 Des IP 71.192.34.104 TCP 端口4335 Dst Port 80


Q&A 2 所作工作


其实下面就是要打开NAT_ISP_SIDE 但是我们上面的问题其实也是打开了那个文件的- - 我的感觉其实就是 私网IP在路由器端做了转换而已 带上了一个面具 ^^ 每次用面具在跟人聊天 在路过路由器的时候把面具带上 一个子网的很多人都用相同的面具 只是根据分配的子网地址不同 端口号 而有区分

下面是NAT_ISP_SIDE的截图
在这里插入图片描述


Q&A 2


1. 在NAT_ISP_side跟踪文件中,找到 HTTP GET 消息是从客户端发送到 Google 服务器的时间 7.109267(其中 t=7.109267 是将此发送的时间记录在 NAT_home_side跟踪文件中)。 此消息在什么时间出现在NAT_ISP_side跟踪文件中? 携带此 HTTP GET 的 IP 数据图上的源和目的地 IP 地址以及 TCP 源和目的地端口(如NAT_ISP_side跟踪文件中的记录)是什么? 这些字段中哪些领域相同,哪些领域与您对上述问题 3 的回答不同?
这些在上面对比的时候就写了 除了源地址不同 还有因为源地址不同而导致checksum不同 帧不同这个就不说了- - 其他全部都是一样的

2. HTTP 获取消息中的任何字段是否已更改?携带 HTTP GET 的 IP 数据图中的哪些字段已更改:版本、头长度、标志、检查表。 如果这些字段中的任何一个已更改,给出一个理由(在一句话中)说明该字段需要更改的原因。
其他的都是没有改 除了checksum 因为源地址发生了改变 一个是带着外网认可的面具 一个是私网ip - -

3. 在NAT_ISP_side跟踪文件中,从 Google 服务器收到的第一个 200 个 OK HTTP 消息在什么时间? 携带此 HTTP 200 OK 消息的 IP 数据图上的源和目的地 IP 地址以及 TCP 源和目的地端口是什么?这些字段中哪些是相同的,哪些领域与您对上述问题 4 的回答不同?
都是纯纯的一样的 除了目的地址 - -

4. 在NAT_ISP_side跟踪文件中,客户端到服务器 TCP SYN 段和服务器对客户端 TCP ACK 段在什么时间与上述 5 个问题段对应?这两个细分市场的源和目的地 IP 地址以及来源和目的地端口是什么?这些字段中哪些字段相同,哪些字段与您对上述问题 5 的回答不同?
没有没有没有没有不一样的

5. 使用您对上面 1-8 的答案,填写上述问题 1-8 中考虑的 HTTP 连接的 NAT 翻译表条目。
一个是内网地址 一个是外网地址


实验到这里就结束了 通过仔细观察了两个的不同而有了一个感性的认识- - 但是我记得书上NAT应该是对其PORT进行了修改的 从而使家庭路由器中的成员能够区分 但是这里没有出现 可能是转换表中 两个PORT是相同的 就直接用了 那对于这个Lab就到这里结束了 感觉还是挺好的 对NAT的认识更具体了一点了 哈哈

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐