在bochs2.6中运行DlxLinux:

ping –c 1 111.13.100.92

这时dos窗口windump看到:

arp首先会问网关在哪里:

1.

arp问谁有这个IP地址:192.168.1.1  (真实路由)

arp答复在ec:17:2f:f4:c5:a2     (真实路由的mac地址)

接下来几步就是通过远方的服务器问和答完成ping命令ICMP request 及 ICMP reply

2.

arp问谁有这个IP地址:192.168.1.99  (我的虚拟网卡)

arp答复在b0:c4:20:A1:3C:00  (正是我们在bochsrc.bxrc中的指定mac)

3.

arp问谁有这个别名:ty-b8ddac403197.137  (我的真实网卡别名)

arp答复在00:16:17:10:04:22  (真实网卡的mac)

下面我们从抓包工具中分析对应以上几步中和具体数据:

1.

FF FF FF FF FF FF B0 C4 20 A1 3C 00 08 06 00 01 08 00 06 04 00 01 B0 C4 20 A1 3C 00 C0 A8 01 63 00 00 00 00 00 00 C0 A8 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

文件标题:ARP-Request:who-has 192.168.1.1 tell 192.168.1.99

FFFFFFFFFFFF   目地地址

B0C420A13C00  源地址

0806  ARP(Address Request Protocol)

0001  Ethenet

0800  DoD IP

06    硬件地址长

04    协议地址长

0001  操作码:Request

B0C420A13C00  发送者mac地址

C0A80163      发送者IP:192.168.1.99

000000000000   目标mac地址

C0A80101       目标IP:192.168.1.1

000000000000000000000000000000000000    补帧18字节

B0 C4 20 A1 3C 00 EC 17 2F F4 C5 A2 08 06 00 01 08 00 06 04 00 02 EC 17 2F F4 C5 A2 C0 A8 01 01 B0 C4 20 A1 3C 00 C0 A8 01 63 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

文件标题:ARP-Reply:192.168.1.1 is at EC:17:2F:F4:C5:A2

B0C420A13C00   目地地址

EC172FF4C5A2    源地址

0806  ARP(Address Request Protocol)

0001  Ethenet

0800  DoD IP

06    硬件地址长

04    协议地址长

0002  操作码: Reply

EC172FF4C5A2  发送者mac地址

C0A80101      发送者IP:192.168.1.1

B0C420A13C00   目标mac地址

C0A80163       目标IP:192.168.1.99

000000000000000000000000000000000000    补帧18字节

弄清了192.168.1.1在什么地方,就开始发送ping内容了:

EC 17 2F F4 C5 A2 B0 C4 20 A1 3C 00 08 00 45 00 00 54 00 10 00 00 40 01 E5 24 C0 A8 01 63 6F 0D 64 5C 08 00 96 98 2B 00 00 00 44 45 F3 55 0C C9 07 00 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37

文件标题:ICMP

EC172FF4C5A2   目地地址

B0C420A13C00   源地址

0800  DoD IP

IPV4 头开始

45     版本4长度5(20字节)

00     服务类型

0054   总长84字节20+64

0010   标识

0000   标志及帧偏移量

40     生存64hops

01     协议:1 -> ICMP

E524   检验

C0A80163  源IP: 192.168.1.99

6F0D645C  目地IP:111.13.100.92

以下64字节显示:...... !"#$%&'()*+,-./01234567

080096982B0000004445F3550CC9070008090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F3031323334353637

EC 17 2F F4 C5 A2 00 16 17 10 04 22 08 00 45 00 00 47 E8 B7 00 00 40 11 0E 38 C0 A8 01 65 C0 A8 01 01 E5 A9 00 35 00 33 11 F3 FE 3A 01 00 00 01 00 00 00 00 00 00 02 39 39 01 31 03 31 36 38 03 31 39 32 07 69 6E 2D 61 64 64 72 04 61 72 70 61 00 00 0C 00 01

文件标题:UDP 192.168.1.101:58793->192.168.1.1:53

EC172FF4C5A2  目地地址

001617100422  源地址

0800  DoD IP

IPV4 头开始

45     版本4长度5(20字节)

00     服务类型

0047   总长71字节20+8+43

E8B7   标识

0000   标志及帧偏移量

40     生存64hops

11     协议:17 -> UDP

0E38   检验

C0A80165  源IP: 192.168.1.101

C0A80101  目地IP: 192.168.1.1

Udp头开始

E5A9  源端口58793

0035  目地端口53

0033  长51字节 8+43

11F3  检验

数据部分43字节,显示:.:...........99.1.168.192.in-addr.arpa...... 注意倒序

FE3A010000010000000000000239390131033136380331393207696E2D61646472046172706100000C0001

00 16 17 10 04 22 EC 17 2F F4 C5 A2 08 00 45 00 00 94 0B 7C 40 00 37 11 B4 26 C0 A8 01 01 C0 A8 01 65 00 35 E5 A9 00 80 B3 EA FE 3A 81 83 00 01 00 00 00 01 00 00 02 39 39 01 31 03 31 36 38 03 31 39 32 07 69 6E 2D 61 64 64 72 04 61 72 70 61 00 00 0C 00 01 C0 11 00 06 00 01 00 00 1E 33 00 41 08 70 72 69 73 6F 6E 65 72 04 69 61 6E 61 03 6F 72 67 00 0A 68 6F 73 74 6D 61 73 74 65 72 0C 72 6F 6F 74 2D 73 65 72 76 65 72 73 C0 45 00 00 00 01 00 09 3A 80 00 00 00 3C 00 09 3A 80 00 09 3A 80

文件标题:UDP  192.168.1.1:53 ->192.168.1.101:58793

00 16 17 10 04 22   目地地址

EC 17 2F F4 C5 A2   源地址

0800  DoD IP

IPV4 头开始

45     版本4长度5(20字节)

00     服务类型

00 94   总长148字节 20+8+120

0B 7C   标识

40 00    标志40及帧偏移量0

37     生存55hops

11     协议:17 -> UDP

B4 26   检验

C0A80101  源IP: 192.168.1.1

C0A80165  目地IP: 192.168.1.101

Udp头开始

00 35  源端口53

E5 A9  目地端口58793

00 80 长128字节8+120

B3 EA  检验

数据部分120字节,显示:

.:...........99.1.168.192.in-addr.arpa..............3.A.prisoner.iana.org..hostmaster.root-servers.E......:....<..:...:.

FE 3A 81 83 00 01 00 00 00 01 00 00 02 39 39 01 31 03 31 36 38 03 31 39 32 07 69 6E 2D 61 64 64 72 04 61 72 70 61 00 00 0C 00 01 C0 11 00 06 00 01 00 00 1E 33 00 41 08 70 72 69 73 6F 6E 65 72 04 69 61 6E 61 03 6F 72 67 00 0A 68 6F 73 74 6D 61 73 74 65 72 0C 72 6F 6F 74 2D 73 65 72 76 65 72 73 C0 45 00 00 00 01 00 09 3A 80 00 00 00 3C 00 09 3A 80 00 09 3A 80

2.

FF FF FF FF FF FF 00 16 17 10 04 22 08 06 00 01 08 00 06 04 00 01 00 16 17 10 04 22 C0 A8 01 65 00 00 00 00 00 00 C0 A8 01 63

文件标题:ARP-Request:who-has 192.168.1.99 tell 192.168.1.101

FFFFFFFFFFFF   目地地址

00 16 17 10 04 22   源地址

0806  ARP(Address Request Protocol)

0001  Ethenet

0800  DoD IP

06    硬件地址长

04    协议地址长

0001  操作码:Request

00 16 17 10 04 22 发送者mac地址

C0A80165       发送者IP:192.168.1.101

000000000000   目标mac地址

C0A80163       目标IP:192.168.1.99

补帧0字节   共42字节

B0 C4 20 A1 3C 00 EC 17 2F F4 C5 A2 08 00 45 00 00 54 00 10 00 00 33 01 F2 24 6F 0D 64 5C C0 A8 01 63 00 00 9E 98 2B 00 00 00 44 45 F3 55 0C C9 07 00 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37

文件标题:ICMP

B0 C4 20 A1 3C 00   目地地址

EC 17 2F F4 C5 A2    源地址

0800  DoD IP

IPV4 头开始 下面有84字节,加上上面的14字节,共98字节

45     版本4长度5(20字节)

00     服务类型

0054   总长84字节20+64

0010   标识:16

0000   标志及帧偏移量

33     生存51hops

01     协议:1 -> ICMP

F2 24   检验

6F 0D 64 5C  源IP: 111.13.100.92

C0 A8 01 63  目地IP:192.168.1.99

以下64字节显示:....+...DE.U............................ !"#$%&'()*+,-./01234567

00 00 9E 98 2B 00 00 00 44 45 F3 55 0C C9 07 00 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37

我们将要模仿上面这段数据发送。

00 16 17 10 04 22 B0 C4 20 A1 3C 00 08 06 00 01 08 00 06 04 00 02 B0 C4 20 A1 3C 00 C0 A8 01 63 00 16 17 10 04 22 C0 A8 01 65 44 45 F3 55 0C C9 07 00 08 09 0A 0B 0C 0D 0E 0F 10 11

文件标题:ARP-Reply:192.168.1.1 is at EC:17:2F:F4:C5:A2

00 16 17 10 04 22    目地地址

B0 C4 20 A1 3C 00    源地址

0806  ARP(Address Request Protocol)

0001  Ethenet

0800  DoD IP

06    硬件地址长

04    协议地址长

0002  操作码: Reply

B0 C4 20 A1 3C 00  发送者mac地址

C0A80163         发送者IP:192.168.1.99

00 16 17 10 04 22   目标mac地址

C0A80165       目标IP:192.168.1.101

44 45 F3 55 0C C9 07 00 08 09 0A 0B 0C 0D 0E 0F 10 11      补帧18字节

以下略......

telnet 130.212.3.51 80 有数据包传输,显示与thecity.sfsu.edu.80 通信。

显示Escape character is ‘^]’( 这里是指示按 ctrl+] )

按ctrl+]进入telnet提示符,按quit退出。

操作系统与网络实现 之十八(丁)相关推荐

  1. Linux操作系统学习笔记(二十八)深入理解CPU

    一. 前言   在前面一些文章中多多少少有提到一些CPU的结构以及对应的寄存器等,但是总觉得不够透彻,所以单开一文详细叙述CPU的各种知识,从而加深对操作系统和性能的理解.本文从最基本的加法器和乘法器 ...

  2. 操作系统学习笔记(二十八)~文件系统+连续分配+链接分配+索引分配+空闲空间管理

    11.1 文件系统 1.下面有关文件系统的论述错误的是().D A.在存储设备上组织文件的方法和数据结构 B.操作系统中负责管理和存储文件信息的模块 C.负责文件检索.读写等操作 D.从系统角度来说, ...

  3. 趣谈网络协议笔记-二(第十八讲)

    趣谈网络协议笔记-二(第十八讲) DNS协议:网络世界的地址簿 自勉 勿谓言之不预也 -- 向为祖国牺牲的先烈致敬! 正文 DNS用于域名解析,但也不仅仅是用于域名解析,不仅仅是将域名转换成IP. 在 ...

  4. 2022Java学习笔记八十八(网络编程:UDP通信,一发一收,多发多收消息接收实现)

    2022Java学习笔记七十八(网络编程:UDP通信,一发一收,多发多收消息接收实现) 一.快速入门 DatagramPacket:数据包对象 实例代码 定义发送端 package com.zcl.d ...

  5. 深度学习之图像分类(二十八)-- Sparse-MLP(MoE)网络详解

    深度学习之图像分类(二十八)Sparse-MLP(MoE)网络详解 目录 深度学习之图像分类(二十八)Sparse-MLP(MoE)网络详解 1. 前言 2. Mixture of Experts 2 ...

  6. 基于eclipse的android项目实战—博学谷(十八)播放不同视频(网络视频)

    相信经过了这么长时间,小伙伴们应该都发现了博学谷这个项目存在问题,播放视频的时候,无论播放任何一个章节,他播放的视频都只是一个,也就是VideoPlayActivity.java里面写死的那个(myv ...

  7. ROS探索总结(十六)(十七)(十八)(十九)——HRMRP机器人的设计 构建完整的机器人应用系统 重读tf 如何配置机器人的导航功能

    ROS探索总结(十六)--HRMRP机器人的设计 1. HRMRP简介         HRMRP(Hybrid Real-time Mobile Robot Platform,混合实时移动机器人平台 ...

  8. 大数据分析十八般工具

    大数据分析是一个含义广泛的术语,是指数据集,如此庞大而复杂的,他们需要专门设计的硬件和软件工具进行处理.该数据集通常是万亿或EB的大小.这些数据集收集自各种各样的来源:传感器,气候信息,公开的信息,如 ...

  9. 想要成为一名优秀的程序员,这十八招必看

    文章目录 第一招:速学能力 第二招:理解能力 第三招:编程能力 第四招:使用能力 第五招:编码能力 第六招:注释能力 第七招:思维能力 第八招:英语能力 第九招:学习能力 第十招:思考能力 第十一招: ...

最新文章

  1. oracle中代替in 和not in 高效方法
  2. ubuntu14.04上java jdk mvn安装
  3. Where to Store your JWTs – Cookies vs HTML5 Web Storage--转
  4. js日期格式化精髓总结
  5. BZOJ4590: [Shoi2015]自动刷题机
  6. 前端学习(2825):vs开发小程序的插件
  7. 7.边缘检测:2D运算——Canny边缘原理、Canny边缘检测器、Canny-Matlab实战_2
  8. java biginteger相比_java Biginteger类
  9. Java实战之管家婆记账系统(3)——数据库表
  10. 一步一步学Repast 第二章(把界面显示出来)
  11. eclipse翻译插件,支持最新版eclipse 2022-09
  12. docker配置aria2
  13. Jdk8下载安装配置教程
  14. MSTAR雷达数据集总结
  15. Go语言自学系列 | golang包管理工具go module
  16. 内网穿透-把自己的电脑部署为公网可访问的服务器
  17. 基于Android的健康宝体检app介绍(一)
  18. 威眼(WeaView)企业计算机监管系统如何安装客户端和日常使用
  19. App uni.downloadFile ios问题
  20. 自动化小工具---秒级倒计时

热门文章

  1. java se 7 64位_Java SE Runtime Environment(JRE7 64位版)7u80 多语官方安装版 X64
  2. 计算机专业学生参加igem,iGEM:走向国际舞台的竞赛,到底有何魅力?
  3. Python学习之numpy生成矩阵基础用法
  4. 计算机摄影比赛,计算机与信息学院影动我心摄影大赛策划.ppt
  5. Android 面试基础
  6. 求一个数的所有质因数
  7. CARLA中创建新传感器(Create a new sensor in CARLA)
  8. 好朋友同时撩三个妹子,扬言我也可以,我直呼好家伙---我把我偷学来的全都告诉你
  9. linux磁盘相关命令,Linux磁盘管理常用操作命令
  10. Mac系统下Python下载安装