网络协议基础
-
tcp/ip协议簇
-
TCP/IP协议族 网络接口层(没有特定的协议) 物理层 数据链路层 网络层: IP (v4/v6) ARP(地址解析协议) RARP . ICMP (Internet控制报文协议) IGMP 传输层: TCP (传输控制协议) UDP (用户数据报协议) 应用层: 都是基于传输层协议的端口,总共端口0~65535 0~1023 HTTP---tcp80HTTPS----TCP443 DHCP DNS HTTP HTTPS FTP SMTP POP3 IMAP
-
子主题 1
-
1.物理层和数据链路层 在物理层和数据链路层,TCP/IP并没有定义任何特定的协议。它支持所有标准的和专用的协议,例如以太网协议等。基本上所有的局域网都采用以太网技术,上述说明的过程就是以太网技术所采用的方式。至于PPP协议一般用于点到点传输,电信网通等部门早期采用的一种技术,现在ADSL技术中使用的PPPoE、PPPoA协议就是PPP协议的一种。所以实际上只有三个层次 2.网络层 在网络层,TCP/IP定义了网际协议(Internet Protocol,简称IP),而IP又由4个支撑协议组成:ARP(地址解析协议)、RARP(逆地址解析协议)、ICMP(网际控制报文协议)和IGMP(网际组管理协议)。 3.传输层 TCP协议传输控制协议,传输更加稳定可靠,UDP协议,用户数据报协议,UDP协议传输效率更高。 4.应用层 这一层有很多上层应用协议,这些协议帮助实现上层应用之间的通讯,例如HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)、DNS(域名系统)等。
-
-
-
流量抓取工具wireshark
-
一、网卡 wireshark是对主机网卡上的数据流量进行抓取 1、网卡模式 混杂模式:不管目的是否是自己,都接收 非混杂模式:默认情况下,主机的网卡处于此模式,不会接收目的非自己的数据 2、两种过滤器 捕获过滤器: 在抓包之前先进行过滤,(只抓某种类型的包或者不抓某些类型的包) 显示过滤器:抓包前后抓包后都可以进行过滤,但是不会影响抓取的(会抓取所有的包,只不过在查看的时候只显示某些包) 3、过滤器 捕获过滤器 语法 类型: host net port 方向: src dst 协议: ether ip tcp udp http ftp.......... 逻辑运算符: &&与或 !非 举例 抓取源IP为192.168.18.14并且目标端口为80的报文 src host 192.168.18.14 && dst port 80 抓取IP为192.168.18.14或者IP地址为192.168.18.1 host 192.168.18.14 ll host 192.168.18.1 不抓取广播包 ! broadcast 显示过滤器 语法 比较操作符: == (eg) != (neq) 大于 (gt) <小于(t) >= 大于等于 (ge) <= 小于等于 (le) 辑操作符: and (&&)与or (ll) not ip.dst IP地址过滤: ip.addr ip.src 端口过滤: tcp.port udp.port tcp.dstport 协议过滤: arp icmp udp tcp tcp.flag.syn tcp.flag.ack http 显示源IP等于192.168.18.14并且tcp端口为443 ip.src==192.168.18.14 and tcp.port==443
-
-
ARP协议(地址解析协议)
-
将一个已知的IP地址解析为MAC地址,从而进行二层数据交互 是一个三层的协议,但是工作在网络层
-
工作流程
-
两个阶段
-
ARP请求
-
ARP响应
-
-
ARP协议报文分组格式
-
目的mac 源mac 帧类型 arp协议报文(硬件类型、协议类型、硬件地址长度、协议地址长度、opcode、发送方的mac地址、发送的IP地址、接收方的mac地址、接收方的mac地址) 帧校验
-
-
ARP缓存
-
为了避免重复发送ARP请求
-
ARP -d清空缓存 ARP -a查看
-
-
-
ARP攻击及欺骗
-
ARP攻击
-
伪造ARP应答报文,向被攻击主机响应虚假的MAC地址 网络 当被攻击主机进行网络通信时,会将数据交给虚假的MAC地址进行转发,由于虚假的MAC地址不存在,所以造成被攻击主机无法访问
-
-
arp欺骗
-
欺骗网关
-
伪造ARP应答报文,向被攻击主机和网关响应真实的MAC地址当被攻击主机进行网络通信时,会将数据交给真实MAC地址进行转发,从而来截获被攻击主机的数据,这时被攻击主机是可以进 行网络通信的
-
-
欺骗主机
-
伪造ARP应答报文,向被攻击主机和通信的主机响应真实的MAC地址当被攻击主机向通信主机发送数据时,会将数据交给真实MAC地址进行转发,从而来截获被攻击主机的数据,这时被攻击主机是可以进行网络通信的
-
-
-
解决ARP攻击及欺骗
-
相互绑定或者下载ARP防火墙
-
-
-
实施ARP攻击和欺骗
-
kali linux 安装一个arpspoof kaii配置 kali Linux 系统是基于debian Linux系统,采用deb包管理方式,可以使用apt源的方式进行直接从源安装 1、配置源 apt -get update 2、安装工具 arpspoff 是集成在dsniff工具,需要安装dsniff工具 apt -get install dsniff arpspoof -i eth0(虚拟机网卡 ifconfig查看 ) -t 攻击的主机ip 网关地址 apt -get install driftnet抓取图片 driftnet -i eth0
-
-
-
ICMP网际控制报文协议
-
lnternet控制报文协议,用于在IP主机、路由照之间传递控制消息,控制消息指网络通不通、主机是否可达、路由是否可用等等 ICMP是属于网焰层的协议,封装在传输层与网络层之间
-
2、ICMP报文格式 类型(type) 代码 (code) 类型 (8 0)请求 (0 0)回显应答 (表示比较正常的应答) (3 1)目标不可达(主机不可达) (11 0)超时 (传输期间生存时间为0) (3 3)目标不可达 (端口不可达) (3 2)协议不可达 类型13 14时间戳请求和应答 (5 0)重定向(网络重定向) (5 1)主机重定向
-
3、ICMP常见的报文 请求报文:使用ping请求(type=8)发送给目标主机,用于探测目标主机是否可达。 响应报文:目标主机收到ping请求后,会发送响应(type=0)给源主机,表示目标主机的可达性。 目标不可达报文: 当目标主机无法到达或无法处理某个IP数据报时,会发送目标不可达报文(type=3)给源主机,以告知源主机无法到达目标。 源抑制报文: 源抑制报文(type=4)充当一个控制流量的角色,它通知源主机减少数据报的发送速率。由于ICMP没有恢复传输的报文,所以只要停止该报文,源主机就会逐渐恢复传输速率。 超时报文: 超时报文用于指示IP数据报在传输过程中发生超时。类型11的超时报文有两种code: code 0:传输超时,表示某个IP数据报在传输过程中超过了指定的时间限制。 code 1:重组分段超时,表示某个IP数据报的分段在重组过程中超过了指定的时间限制。 时间戳请求和应答报文: 时间戳请求报文(type=13)用于请求目标主机的当前时间戳。 时间戳应答报文(type=14)是目标主机对时间戳请求的响应,包含目标主机的当前时间戳。
-
响应请求 使用ping请求(type=0) 响应 (type=8) 目标不可达 type=3 源抑制 源抑制则充当一个控制流显的角色,它通知主机减少数据报流量,由于1CMP没有恢复传输的报文,所以只要停止该报文,主机就会逐渐恢复传动速率 type=4 超时报文 类型11 code 0 传输超时, code 1 重组分段超时。 时间配 type= 13时间戳清求 type =14 时间戳应答
-
-
ICMP重定向
-
在某些特定情况下,路由器检测到主机使用非优化路由时候,会向主机发送一个CMP重定向报文,是主机的路由改变
-
-
相关文章:
网络协议基础
tcp/ip协议簇 TCP/IP协议族 网络接口层(没有特定的协议) 物理层 数据链路层 网络层: IP (v4/v6) ARP(地址解析协议) RARP . ICMP (Internet控制报文协议) IGMP 传输层: TCP (传输控制协议) UDP (用户数据报协议) 应用层: 都是基于传输层协议的端口,总共端口0~65535 …...
Mac使用adb调试安卓手机
0x00 背景 最近windows电脑休息,用mac办公比较多,手机用时间长了,不太灵光,准备修理一番。于是要用mac调试下android手机。配置略显麻烦,网上的步骤多参差不齐。估计是入门步骤,大佬们也懒得写的太细。于是…...
Web 开发 1: Flask 框架介绍和使用
在 Web 开发中,Flask 是一个流行且灵活的 Python Web 框架,用于构建 Web 应用程序。它简洁而易于上手,适用于小型到中型的项目。在本篇博客中,我将为你介绍 Flask 框架的基础知识和常用技巧,帮助你更好地掌握 Web 开发…...
Centos7.6之禅道开源版17.6.1安装记录
Centos7.6之禅道开源版17.6.1安装记录 文章目录 Centos7.6之禅道开源版17.6.1安装记录1. 下载2. 安装3. 登录4. 连接数据库1. 本地连接2. 远程连接1. 开启远程访问用户2. 更改mysql绑定的主机3. 重启Apache与MySQL服务 4. 常用命令1. Apache和Mysql常用命令2. 其他 1. 下载 官网…...
有趣的代码(简单)
1.代码1 #include<stdio.h> #include<string.h> #include<windows.h> #define _CRT_SECURE_NO_WARNINGS 1 void love() {system("color 4");printf(" **** ***************** ** …...
Java和Redis实现一个简单的热搜功能
1. 前言 我们有一个简单的需求: 搜索栏展示当前登陆的个人用户的搜索历史记录,删除个人历史记录。用户在搜索栏输入某字符,则将该字符记录下来 以zset格式存储的redis中,记录该字符被搜索的个数以及当前的时间戳 (用…...
超越传统,想修哪里就修哪里,SUPIR如何通过文本提示实现智能图像修复
项目简介 通过参数增加使得模型不仅能够修复图像中的错误或损坏,还能根据文本提示进行智能修复。例如根据描述来改变图像中的特定细节。这样的处理方式提升了图像修复的质量和智能度,使得模型能够更准确、更灵活地恢复和改进图像。 SUPIR的主要功能图像…...
《如何画好架构图》学习笔记
看了一堂《如何画好架构图》的公开课,结合网上的资料与经验做一些思考总结。文中的例子和图片大多是从课程中摘录的。 1. 4R架构定义 4R架构定义其实是软件架构定义经过归纳提炼后的简称。 软件架构定义:软件架构是指软件系统的顶层(Rank&am…...
redis整合
一.redis的发布订阅 什么 是发布和订阅 Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。 Redis 客户端可以订阅任意数量的频道。 1、Redis的发布和订阅 客户端订阅频道发布的消息 频道发布消息 订阅者就可以…...
开循环低温样品架节约液氦操作技巧
开循环低温样品架以降温快、无轰动源、重量轻、装置便利等特色遭到大多数客户的喜爱。但是制冷剂消耗量引起的运用本钱是客户在运用过程中zhong点重视的问题,特别是随着全球液氦价格继续飙升,开循环样品架的运用本钱也在逐渐添加,如何节约液氦…...
年薪30W+,待遇翻倍,我的经历值得每个测试人借鉴
从自考大专到出走公司,从半年无业露宿深圳北站,从8k…到11.5k…再到20k,我的经历值得每个测试人借鉴 或许学历并没有那么重要 12年高考之后,在朋友的介绍下(骗了过去),没有好好的读大学&#x…...
DEB方式安装elastic search7以及使用
参考:https://www.cnblogs.com/anech/p/15957607.html 1、安装elastic search7 #手动下载安装 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.1-amd64.deb wget https://artifacts.elastic.co/downloads/elasticsearch/elastics…...
[Tomcat] [最全] 目录和文件详解
打开tomcat的解压之后的目录可以看到如下的目录结构: Bin bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令)。 …...
微信小程序元素/文字在横向和纵向实现居中对齐、两端对齐、左右对齐、上下对齐
元素对齐往往是新学者的一大困惑点,在此总结常用的各种元素和文字对齐方式以供参考: 初始显示 .wxml <view style"width: 100%;height: 500rpx; background-color: lightgray;"><view style"width: 200rpx;height:100rpx;bac…...
兼容树莓派扩展模块,专注工业产品开发的瑞米派强势来袭
近日,米尔电子和瑞萨电子共同定义和开发了瑞萨第一款MPU生态开发板——瑞米派(Remi Pi)正式上市了!在各种Pi板卡琳琅满目的当下,Remi Pi是一款与众不同的开发板,他兼顾了严肃产品开发和爱好者创意实现两种需…...
云原生 - 微信小程序 COS 对象存储图片缓存强制更新解决方案
问题描述 遇到一个这样的情况:在微信小程序里图片缓存十分麻烦,网上很多说在腾讯云里的 COS 存储对象服务里设置对应的图片缓存(Header 头 Cache-Contorl),说实话真不好用,一会儿生效,一会儿没…...
设计公司设计ppt的优势—南京梵构广告
在这个时代的发展下,PPT软件越来越好用,投影仪越来越便宜,直接导致许多商界人士不再撰写文件了。他们只是在编写演示文稿,这些文稿只是些没有细节、缺乏支持的概要。许多人不喜欢撰写详尽文件所付出的脑力劳动。 视觉效果 一个好…...
gitlab设置/修改克隆clone地址端口
最近由于公司要停测试库云服务器? 什么?要停测试库服务器??? 是的! 你没听错。 真是醉了,多大的集团,为了省钱,也真是拼了, 作为开发人员,没有测试服务器,犹如断臂之人。 所以,在之前搭建环境的时候都没有写文档,今天算是弥补上,以后都可以作为参考了, …...
Jellyfin影音服务本地部署并结合内网穿透实现公网访问本地资源
文章目录 1. 前言2. Jellyfin服务网站搭建2.1. Jellyfin下载和安装2.2. Jellyfin网页测试 3.本地网页发布3.1 cpolar的安装和注册3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5. 结语 1. 前言 随着移动智能设备的普及,各种各样的使用需求也被开发出来&…...
笨蛋学设计模式行为型模式-责任链模式【18】
行为型模式-责任链模式 8.5责任链模式:arrow_up::arrow_up::arrow_up:8.5.1概念8.5.2场景8.5.3优势 / 劣势8.5.4责任链模式可分为8.5.5责任链模式8.5.6实战8.5.6.1题目描述8.5.6.2输入描述8.5.6.3输出描述8.5.6.4代码 8.5.7总结 8.5责任链模式⬆️⬆️⬆️ 8.5.1概念 责任…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
ssc377d修改flash分区大小
1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...
零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
本期内容并不是很难,相信大家会学的很愉快,当然对于有后端基础的朋友来说,本期内容更加容易了解,当然没有基础的也别担心,本期内容会详细解释有关内容 本期用到的软件:yakit(因为经过之前好多期…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
uniapp 字符包含的相关方法
在uniapp中,如果你想检查一个字符串是否包含另一个子字符串,你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的,但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...
R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
《Docker》架构
文章目录 架构模式单机架构应用数据分离架构应用服务器集群架构读写分离/主从分离架构冷热分离架构垂直分库架构微服务架构容器编排架构什么是容器,docker,镜像,k8s 架构模式 单机架构 单机架构其实就是应用服务器和单机服务器都部署在同一…...
数据库正常,但后端收不到数据原因及解决
从代码和日志来看,后端SQL查询确实返回了数据,但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离,并且ai辅助开发的时候,很容易出现前后端变量名不一致情况,还不报错,只是单…...
