一,协议(协议工作于数据包)
1.ARP【根据IP地址获取物理地址】
2.ICMP【传递控制信息·检测网络通信故障】
- 基础知识:(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。
- 作用:ICMP协议主要用来检测网络通信故障和实现链路追踪,使用ICMP,当网络中数据包传输出现问题时,主机或设备就会向上层协议报告差错情况和提供有关异常情况的报告,使得上层协议能够通过自己的差错控制程序来判断通信是否正确,以进行流量控制和差错控制,从而保证服务质量。
- ICMP信息
-
ICMP具体信息
成功Code是0
-
-
-
具体发给网关的数据包(加密)
3.UDP【传输通信协议】
1)UDP是User Datagram Protocol的简称,中文名是用户数据报协议,是OSI参考模型中的传输层协议,它是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
2)UDP和TCP的区别:
TCP有连接,更可靠,但更慢
4.TCP【常用·传输通信协议】
1)TCP连接三次握手:
- a)SYN(synchronize):连接请求同步
- b)ACK:确定这个消息同步
- 发送SYN=1到服务器(例如京东)
- 服务器返回ACK=1
- 接着本机再ACK=1发送回去,建立了连接
- 发送的端口是什么回到的也是什么端口
2)是一个传输通信协议,用于数据层传输数据流
5.TCP协议的四次挥手协议
- FIN表示结束
- 解释:发送FIN请求
- 发送ACK确认信息
- 确认后发送一个断开的指令FIN
- 客户端确认后发送ACK表示确定消息
6.HTTP协议【请求➡响应协议】
1)超文本传输协议(Hypertext Transfer Protocol,HTTP)是一个简单的请求-响应协议。是用于从互联网服务器传输超文本到本地浏览器的传送协议,基于TCP/IP协议通信协议来传递HTML 文件、图片文件、查询结果等数据。
HTTP协议不涉及数据包(Packet)的传输,主要规定了客户端和服务器之间的通信格式,一般来说默认使用80端口。
2)使用:客户向服务器请求服务时,只需传送请求方法和路径。
- 首先客户端对服务器(百度)发送连接请求SYN
- 服务器发送确认消息ACK
- 客户端确认消息ACK=1
- 进入了百度的搜索页面,发送http请求
- 百度给一个响应表示收到
- 百度发送信息响应成功(200)
- 接着客户端发送FIN请求进行四次挥手
7.DHCP【配置IP】
1)DHCP是动态主机配置协议(Dynamic Host Configuration Protocol)的缩写。它是一种存在于应用层的网络管理协议。
2)DHCP 是一种 Client/Server 模式的网络协议,由 DHCP Client 向 DHCP Server 提出配置申请,DHCP Server 从IP池化层中自动选择IP地址,并且一同返回其它相应的配置信息(子网掩码等)给 DHCP Client 。这里的 Client 和 Server 是应用程序,可以运行在电脑、服务器、路由器等设备上。
8.DLC【不同网络设备间传输数据】
DLC,即Data Link Control,是数据链路控制的简称,它是在OSI参考模型的第二层,数据链路层的一种协议,主要负责在不同的网络设备之间传输数据,它是一种管理网络通信的协议。
二,基础知识
1.访问网址时先到网关,接着发送到对方服务器,对方再把数据通过网关传到本机电脑
2.以太网是指插网线的
3.混杂模式是指不管什么数据包都能被抓到,因为它不会去校验ip是合法或者非法,
4.普通模式:只接收正确的发送到电脑网卡的数据
5.tcp.flags.ack == 0 and tcp.flags.syn == 1
6.基本释义:SYN发送请求,ARP确认请求
Hardware type:硬件类型;
Protocol type :网络层协议类型
Hardware size:mac地址的长度,6字节
Protocol size:协议的长度,4字节
Opcode:request 类型是发送请求
Sender MAC address:当前网关的物理地址
Sender IP address:发送者的IP,当前的网关的IP
Target IP address:发到的地址
7.MAC地址
MAC地址(英语:Media Access Control Address)直译为媒体存取控制位址,
- 局域网地址(LAN Address),MAC位址,以太网地址(Ethernet Address)或物理地址(Physical Address),它是一个用来确认网络设备位置的位址。
三,抓包
1.按照IP地址过滤:
- 查看源IP地址为xx的包:ip.src == IP地址
- 查看目标IP为xx的包:ip.dst==IP地址
- 查看源IP或者目标IP为xx的包:ip.addr==IP地址
2.按照MAC地址过滤:
- 查看源MAC地址为xx的包:eth.src==物理地址
- 查看目标MAC地址为xx的包:eth.dst==物理地址
- 查看源MAC或目标MAC地址为xx的包:eth.addc==物理地址
3.按照端口号过滤:
- 查看TCP端口号为xx的包:tcp.port==端口号
- 查看TCP源端口号为xx的包:tcp.srcport==端口号
- 查看TCP目标端口为xx的包:tcp.dstport==端口号
4.按照协议名称来过滤:
单独使用:输入协议名称 【可用 and 或者 or 连接】
组合使用:
1)and:xx协议 and 按照xx查看xx包 ➡ 按照xx协议查看xx的xx包
- 例如:HTTP and eth.dstport == 端口号
2)or: xx协议 or xx协议 ➡ 两种协议都要看【后面不能加数据包过滤命令】
- 例如:ARP or DHCP
3)!:在协议前面加感叹号➡不看该协议工作的数据包
- 可以和and,or组合使用
4)可以组合使用多个 and 或者 or
四,数据包
1.ping详解:发的是ICMP包到目的地
- ping通:告诉延迟;
- 不通:告诉原因,用icmp包里的type+code两个数字的组合代表故障原因
- 1.没配网关:显示传输失败,常见故障
五,域名系统DNS
1.基本知识:
DNS(Domain Name System,域名系统),因特网上作为域名和IP地址互相映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
通过主机名,最终得到该主机对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。
2.作用:
- 正向解析:根据主机名称(域名)查找对应的IP地址
- 反向解析:根据IP地址查找对应的主机域名
- 图解:DNS
工作过程:通过wireshark查看过程:
- 输入dns回车,在浏览器输入网址,回到wireshark可以看见dns回复了通过网址找到的IP地址,源ip是本机,目标服务器是本机配的DNS服务器
- 本机向DNS服务器发送了一个解析请求,用于分析最后红圈内的IP
- 点开封装:UDP是头部,下面是DNP的应用层协议
- 查询(Queries)该网址
- 服务器会给本机一个回应,表示IP地址
六,数据流
1.红色:网址
2.蓝色:反馈