学习地址:

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等的更多相关文章

  1. 网络协议分析之wireshark---抓包使用

    Wireshark基本介绍和学习TCP三次握手 之前写过一篇博客:用 Fiddler 来调试HTTP,HTTPS. 这篇文章介绍另一个好用的抓包工具wireshark, 用来获取网络数据封包,包括ht ...

  2. 网络编程的基本概念,TCP/IP协议简介

    8.1.1 网络基础知识 计算机网络形式多样,内容繁杂.网络上的计算机要互相通信,必须遵循一定的协议.目前使用最广泛的网络协议是Internet上所使用的TCP/IP协议. 网络编程的目的就是指直接或 ...

  3. PYTHON黑帽编程1.5 使用WIRESHARK练习网络协议分析

    Python黑帽编程1.5  使用Wireshark练习网络协议分析 1.5.0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks At ...

  4. wireshark和tcpdump抓包TCP乱序和重传怎么办?PCAP TCP排序工具分享

    点击上方↑↑↑蓝字[协议分析与还原]关注我们 " 介绍TCP排序方法,分享一个Windows版的TCP排序工具." 在分析协议的过程中,不可避免地需要抓包. 无论抓包条件如何优越, ...

  5. linux 网络协议分析---3

    本章节主要介绍linxu网络模型.以及常用的网络协议分析以太网协议.IP协议.TCP协议.UDP协议 一.网络模型 TCP/IP分层模型的四个协议层分别完成以下的功能: 第一层 网络接口层 网络接口层 ...

  6. TFTP网络协议分析---15

    TFTP网络协议分析 周学伟 文档说明:所有函数都依托与两个出口,发送和接收. 1:作为发送时,要完成基于TFTP协议下的文件传输,但前提是知道木的PC机的MAC地址,因为当发送TFTP请求包时必须提 ...

  7. wareshark网络协议分析之DHCP

    声明:本文关于DHCP协议介绍部分摘自百度百科 一.DHCP协议介绍: DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用 ...

  8. android 网络编程--socket tcp/ip udp http之间的关系

    网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层,一般编程人员接触最多的就是应用层和运输层,再往下的就是所谓的媒体层了,不是我们研究的对象. 下面是应用层.运输层,网络 ...

  9. SOCKET,TCP/IP,UDP,HTTP,FTP总结

    一.TCP/UDP,SOCKET,HTTP,FTP简析   TCP/IP是个协议组(主要解决数据如何在网络中传输),可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议 ...

  10. ETHERNET数据包格式( IP & UDP & ICMP & ARP )

    ETHERNET数据包格式( IP & UDP & ICMP & ARP ) ETHERNET数据包格式 一.ETHERNET 数据包的协议类型 TYPE 的值为 0x0800 ...

随机推荐

  1. SQL优化篇之-如何减少耗时查询的调用次数

    函数调用次数与性能 在查询语句中,如果 Select 子句调用了较为耗时的函数或子查询,需要特别考虑函数调用次数对于SQL整体执行时间的影响. 一.数据准备,SQL 语句 模拟较耗时的用户函数 确保执 ...

  2. https://codeforces.com/gym/496962

    A略. B最大最小即为答案. C略. DE记录 t 的每个字母 在 s 中出现的最左和最右,特判端点. FG先贪心后反悔 or 背包. *H:不会.AC自动机.

  3. Vue入门笔记二

    <Vue.js项目实战> 开发所需的包称为开发依赖,应该使用--save-dev标志进行安装 应用运行需要的直接依赖应该使用--save标志进行安装 模板 使用Pug Pug(以前称为Ja ...

  4. 3D Object Detection Essay Reading 2024.04.01

    Swin Transformer paper: https://arxiv.org/abs/2103.14030 (ICCV 2021) code:https://github.com/microso ...

  5. #排列组合,背包#CF232B Table

    题目 有一个 \(n\times m\) 的矩阵,求使得每个 \(n\times n\) 的矩阵中都有正好 \(k\) 个点的方案数. 分析 考虑到如果确定了前 \(n\) 列的选点个数,那么对于一列 ...

  6. #状压dp#洛谷 3959 [NOIP2017 提高组] 宝藏

    题目 选定一个起点 \(S\),找到一棵生成树,最小化 \[\sum_{i=1}^n dep_i\times dis_i \] \(n\leq 12\) 分析 设 \(dp[d][S]\) 表示当前树 ...

  7. 记录C++,读文件返回base64数据

    读文件返回base64函数: void CZZUser::hidFileToBase(const char* filePath) { // 文件 转 base64 // 计算文件长度 unsigned ...

  8. Jenkins安装插件很慢的解决方法

    修改 Jenkins /  update  /  default.json  这个文件就可以了 修改内容 1. 把 " www.google.com "  改成  " h ...

  9. k8s 深入篇———— k8s 的本质[四]

    前言 简单整理一下k8s的本质. 正文 首先,Kubernetes 项目要解决的问题是什么? 编排?调度?容器云?还是集群管理? 实际上,这个问题到目前为止都没有固定的答案.因为在不同的发展阶段,Ku ...

  10. formdata 的前世今生

    前言 为什么会产生formdata这东西呢? 看下简介: FormData 接口提供了一种表示表单数据的键值对的构造方式,经过它的数据可以使用 XMLHttpRequest.send() 方法送出,本 ...