网络协议分析与抓包 TCP/IP UDP等
学习地址:
https://www.bilibili.com/video/BV1hV411U74y?p=4
https://www.bilibili.com/video/BV1S7411R7kF?p=19
https://www.bilibili.com/video/BV1z4411G7CY?p=3
go os/exec
https://blog.csdn.net/qianghaohao/article/details/96614079

运维负责传输层
TCP/IP协议模型
网上有5层和4层两种说法
5层:
1.物理层
2.数据链路层
3.网络层
4.传输层
5.应用层
一个数据包:传输控制层面只占一部分,数据才占用大部分.



OSI七层协议中,网络层协议:HTTP、DNS、IP、ICMP(因特网控制报文协议)、ARP、RARP、OSPF、IPX、RIP、IGRP
传输层:TCP、UDP;
应用层:FTP TELNET DNS SMTP
在TCP/IP模型中,ARP协议属于IP层;在OSI模型中,ARP协议属于链路层。
这里有四个互联协议:
网际协议IP:负责在主机和网络之间寻址和路由数据包。
地址解析协议ARP:获得同一物理网络中的硬件主机地址。
网际控制消息协议ICMP:发送消息,并报告有关数据包的传送错误。
互联组管理协议IGMP:被IP主机拿du向本地多路广播路由器报告主机组成员。
数据封装,解封装,数据传输过程


OSI TCP/IP协议封装模型

OSI TCP/IP协议数据的解封装过程

抓包:

网络传输效率

seq:随机序列号
ack:确认(期望)序列号
确认序列号(ack)是上一个包的随机序列号(seq)
TCP/IP协议的三次握手和四次握手

三次握手
抓包tcp/ip的包 :
观察三次抓包

TCP握手协bai议 :在TCP/IP协议中,TCP协议提供可靠的连接du服务zhi,采用三次握手建立一个连接dao。
1、第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; SYN:同步序列编号(Synchronize Sequence Numbers)
2、第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
3、第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据。
所谓的三次握手(three times handshake;three-way handshaking)即对每次发送的数据量是怎样跟踪进行协商使数据段的发送和接收同步,根据所接收到的数据量而确定的数据确认数及数据发送、接收完毕后何时撤消联系,并建立虚连接。
为了提供可靠的传送,TCP在发送新的数据之前,以特定的顺序将数据包的序号,并需要这些包传送给目标机之后的确认消息。TCP总是用来发送大批量的数据。当应用程序在收到数据后要做出确认时也要用到TCP。
四次握手
四次挥手



ip地址划分





ip地址的转换

http协议:
request

传参:

GETT 和 POST的区别
- GET是获取数据,POST是传送数据给服务器
- GET是url传参,POST是body传参数
- GET的数据大小显示2K;POST没有理论限制
- POST相对安全一点,包含机密信息,建议用POST数据提交方式
- 在做获取数据是用GET,做数据的添加,修改,删除时建议用POST
response

状态码

web服务器
- Apache:可以运行在Linux,Windows,Mac上
- IIS:是微软的软件,只能运行在Windows电脑上
- NGINX:只能运行Linux/Unix
NGINX 不让ip地址访问网站
vim /etc/nginx/nginx.cnf
server{
listen 80 default;
server_name localhost;
access_log off;
location / {
#return 302 https://haimait.com$request_uri;
return 404;
}
rewrite ^(.*) http://www.xxx.com;
}
dns解析
dns出现的原因,ip地址不好记
域名 :baidu.com
dns服务器:baidu.com 119.22.22.22
ftp服务:tcp 21端口
ssh服务:tcp 22端口
telnet:tcp 25端口
dns服务:udp 53端口
smtp:tcp 80端口
http服务: tcp 80端口
https服务:tcp 443端口
tomcat服务:8080端口
mysql服务:tcp,udp 3306端口
redis服务:6379端口
HBASE服务:60010端口
kafka服务:9092端口
zookeeper服务:2181端口
memcached服务:11211端口
mongdb服务:27017端口
dns解析的流程:

查dig是属于哪个包
yum provides dig
网络协议分析与抓包 TCP/IP UDP等的更多相关文章
- 网络协议分析之wireshark---抓包使用
Wireshark基本介绍和学习TCP三次握手 之前写过一篇博客:用 Fiddler 来调试HTTP,HTTPS. 这篇文章介绍另一个好用的抓包工具wireshark, 用来获取网络数据封包,包括ht ...
- 网络编程的基本概念,TCP/IP协议简介
8.1.1 网络基础知识 计算机网络形式多样,内容繁杂.网络上的计算机要互相通信,必须遵循一定的协议.目前使用最广泛的网络协议是Internet上所使用的TCP/IP协议. 网络编程的目的就是指直接或 ...
- PYTHON黑帽编程1.5 使用WIRESHARK练习网络协议分析
Python黑帽编程1.5 使用Wireshark练习网络协议分析 1.5.0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks At ...
- wireshark和tcpdump抓包TCP乱序和重传怎么办?PCAP TCP排序工具分享
点击上方↑↑↑蓝字[协议分析与还原]关注我们 " 介绍TCP排序方法,分享一个Windows版的TCP排序工具." 在分析协议的过程中,不可避免地需要抓包. 无论抓包条件如何优越, ...
- linux 网络协议分析---3
本章节主要介绍linxu网络模型.以及常用的网络协议分析以太网协议.IP协议.TCP协议.UDP协议 一.网络模型 TCP/IP分层模型的四个协议层分别完成以下的功能: 第一层 网络接口层 网络接口层 ...
- TFTP网络协议分析---15
TFTP网络协议分析 周学伟 文档说明:所有函数都依托与两个出口,发送和接收. 1:作为发送时,要完成基于TFTP协议下的文件传输,但前提是知道木的PC机的MAC地址,因为当发送TFTP请求包时必须提 ...
- wareshark网络协议分析之DHCP
声明:本文关于DHCP协议介绍部分摘自百度百科 一.DHCP协议介绍: DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用 ...
- android 网络编程--socket tcp/ip udp http之间的关系
网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层,一般编程人员接触最多的就是应用层和运输层,再往下的就是所谓的媒体层了,不是我们研究的对象. 下面是应用层.运输层,网络 ...
- SOCKET,TCP/IP,UDP,HTTP,FTP总结
一.TCP/UDP,SOCKET,HTTP,FTP简析 TCP/IP是个协议组(主要解决数据如何在网络中传输),可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议 ...
- ETHERNET数据包格式( IP & UDP & ICMP & ARP )
ETHERNET数据包格式( IP & UDP & ICMP & ARP ) ETHERNET数据包格式 一.ETHERNET 数据包的协议类型 TYPE 的值为 0x0800 ...
随机推荐
- KingbaseES V8R6集群部署案例之---脚本部署节点环境检查故障
KingbaseES V8R6集群部署案例之---脚本部署节点环境检查故障 案例说明: KingbaseES V8R6集群在部署前会对集群节点系统环境进行检测,检测失败后,将中断部署:其中一个检测项, ...
- KingbaseES V8R3 集群运维案例--kingbase_monitor.sh启动”two master“案例
案例说明: KingbaseES V8R3集群,执行kingbase_monitor.sh启动集群,出现"two master"节点的故障,启动集群失败:通过手工sys_ctl启动 ...
- jsonb操作符
json类型以文本方式存储json对象,把输入的数据原封不动的存放到数据库中,会保留多余的空格,保留重复的Key,保留Key的顺序. jsonb类型转换文本格式json对象为二进制格式,不保留多余的空 ...
- C#数据去重的5种方式,你知道几种?
前言 今天我们一起来讨论一下关于C#数据去重的的5种方式,每种方法都有其特点和适用场景,我们根据具体需求选择最合适的方式.当然欢迎你在评论区留下你觉得更好的C#数据去重的方式. 使用HashSet去重 ...
- Python企业面试题2 —— 基础篇
1. re 的match和search区别? re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none. re.search 扫描整个字符串并返 ...
- #dp or 贪心+堆#CF704B Ant Man
题目 分析(dp) 考虑到对于一个排列单独抽出 \(1\sim i\) 可能会分成若干段,而贡献一定是固定的,不会影响之后的选择. 首先 \(a,c\) 加上 \(x\),\(b,d\) 减去 \(x ...
- gRPC入门学习之旅(五)
gRPC入门学习之旅(一) gRPC入门学习之旅(二) gRPC入门学习之旅(三) gRPC入门学习之旅(四) 通过之前的文章,我们已经创建了gRPC的服务端应用程序,那么应该如何来使用这个服务端应用 ...
- Java 编程指南:入门,语法与学习方法
Java 是什么? Java 是一种流行的编程语言,诞生于 1995 年.由 Oracle 公司拥有,运行在超过 30 亿台设备上.Java 可以用于: 移动应用程序(尤其是 Android 应用) ...
- Redis 19 SpringBoot集成
概述 SpringBoot 整合 Redis 是使用 SpringData 实现的. SpringData 是与 SpringBoot 齐名的顶级项目,整合了对常用数据库的模板型操作. 在 Sprin ...
- Excel分析师的工资能一直飙升,原因其实是...
世界上的数据分析师分为使用Excel的分析师和其他分析师两类. 即使在互联网数据分析界,java遍街头,Python不如狗,Excel也是不可替代的. 上班前以为自己是西装笔挺的Excel数据分析师, ...