当前位置: 首页 > news >正文

网络安全 Day19-计算机网络基础知识04(网络协议)

计算机网络基础知识04(网络协议)

  • 1. ARP
    • 1.1 ARP通讯原理
    • 1.2 arp欺骗
    • 1.3 ARP欺骗与预防
    • 1.4 排查ARP病毒
  • 2. DHCP工作原理(自动分配内网IP)
  • 3. TCP协议三次握手、四次挥手原理
  • 4. DNS协议工作原理

1. ARP

  • Linux查看arp:arp -a
  • 局域网内主机的通讯方式是通过MAC地址来实现的
  • 告诉MAC地址如何查找物理记得位置
    • 员工入职记录网卡MAC地址
    • 工位网线接口上联交换机端口,用交换机查看

1.1 ARP通讯原理

  • 刚连接上网络时的电脑和交换机情况
    在这里插入图片描述
  • 当PC1开始发出数据传输PC7请求时(请求内容:PC1deIP PC1的MAC地址 ??? PC7的IP地址)
    在这里插入图片描述
  • 交换机进行广播,广播内容中的IP如果是PC7,相应的机器不会接收其内容,如果是则接收。同时在MAC表上临时记录PC1的MAC地址
    在这里插入图片描述
  • PC7再返回信息给PC1同时PC1也记住了PC7的MAC地址,下次通信的时候就不用再次广播通知PC2-PC8了
    在这里插入图片描述

1.2 arp欺骗

  • 原理
    • 通过arp缓存表的缺陷,经过一次连接后,所有地址存在内存中。
    • 一台机器中arp毒后修改其他机器的ARP表中的解析记录,修改其他机器的ARP表中的MAC地址为病毒机器MAC
    • 主机A发数据包的时候,不会ARP广播了,因为直接读APR表信息进行封包,源地址:10.0.0.3 主机A MAC 目的地址: 10.0.0.254 病毒机器MAC,发到网络里。
  • 图示
    • 没中病毒时
      在这里插入图片描述
    • 中ARP病毒时,ARP表就会被修改从而连接的MAC地址就会改变就连接到和黑客机器。
      在这里插入图片描述

1.3 ARP欺骗与预防

  1. 手工绑定IP和MAC(麻烦)
    1. 手工绑定IP和MAC:arp -s ip地址 mac地址
    2. 绑定之后不会查找缓存表,而是直接绑定
  2. Windows安装防火墙

1.4 排查ARP病毒

  1. 找网关正确的IP和MAC(假设IP10.0.0.254 MAC00:xx)
  2. 去网络异常机器上arp -a,看10.0.0.254的MAC是否正确
  3. 如果不一样杀毒重装系统

2. DHCP工作原理(自动分配内网IP)

在这里插入图片描述

3. TCP协议三次握手、四次挥手原理

  • 原理
    在这里插入图片描述
  • ack(acknowledgement):是在网络通信中确认收到数据包的消息
  • seq(sequence number):用于标识排序数据包,确保按照正确顺序进行传输

4. DNS协议工作原理

  • 工作原理图
    请添加图片描述
  • DNS:主要作用是可以将域名解析为IP
  • DNS原理:就不口述了画图了
  • DNS具体能做的事
    名字作用
    A 记录www.oldboy.me—>1.1.1.1
    CNAME常被CDN网站加速服务商应用
    MX解析记录49000448@qq.com 搭建邮件服务
    PTR反向解析1.1.1.1 —>www.oldboy.me 邮件服务
    • CDN(Content Delivery Network)
      • 介绍:内容分发网络,用于王文网站的时候加速访问速度和减轻源服务器的负载
      • 简单工作原理
        • 静态缓存:将静态缓存内容(图片、CSS、JavaScript等)存放在分布世界各地的服务器上,如果需要访问源服务器上的静态内容,就直接访问本地服务器就行。
        • 就近访问:他们通常位于网络骨干节点的大数据中心。
        • 负载均衡、动态内容加速
  • 用Linux追踪DNS解析过程
    • 命令:dig @8.8.8.8 www.baidu.com +trace
      • @8888:常用的DNS解析服务器
      • +trace:命令的选项,从根查看DNS的解析路径
    • 结果
      [root@oldboytraining ~] dig @8.8.8.8 www.baidu.com +trace; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @8.8.8.8 www.baidu.com +trace
      ; (1 server found)
      ;; global options: +cmd
      .                       12529   IN      NS      l.root-servers.net.
      .                       12529   IN      NS      c.root-servers.net.
      .                       12529   IN      NS      k.root-servers.net.
      .                       12529   IN      NS      b.root-servers.net.
      .                       12529   IN      NS      d.root-servers.net.
      .                       12529   IN      NS      h.root-servers.net.
      .                       12529   IN      NS      g.root-servers.net.
      .                       12529   IN      NS      f.root-servers.net.
      .                       12529   IN      NS      a.root-servers.net.
      .                       12529   IN      NS      j.root-servers.net.
      .                       12529   IN      NS      e.root-servers.net.
      .                       12529   IN      NS      i.root-servers.net.
      .                       12529   IN      NS      m.root-servers.net.
      ;; Received 228 bytes from 8.8.8.8#53(8.8.8.8) in 18068 mscom.                    172800  IN      NS      j.gtld-servers.net.
      com.                    172800  IN      NS      i.gtld-servers.net.
      com.                    172800  IN      NS      l.gtld-servers.net.
      com.                    172800  IN      NS      d.gtld-servers.net.
      com.                    172800  IN      NS      k.gtld-servers.net.
      com.                    172800  IN      NS      h.gtld-servers.net.
      com.                    172800  IN      NS      e.gtld-servers.net.
      com.                    172800  IN      NS      m.gtld-servers.net.
      com.                    172800  IN      NS      c.gtld-servers.net.
      com.                    172800  IN      NS      f.gtld-servers.net.
      com.                    172800  IN      NS      g.gtld-servers.net.
      com.                    172800  IN      NS      b.gtld-servers.net.
      com.                    172800  IN      NS      a.gtld-servers.net.
      ;; Received 503 bytes from 192.33.4.12#53(192.33.4.12) in 19425 msbaidu.com.              172800  IN      NS      dns.baidu.com.
      baidu.com.              172800  IN      NS      ns2.baidu.com.
      baidu.com.              172800  IN      NS      ns3.baidu.com.
      baidu.com.              172800  IN      NS      ns4.baidu.com.
      baidu.com.              172800  IN      NS      ns7.baidu.com.
      ;; Received 201 bytes from 192.12.94.30#53(192.12.94.30) in 322 mswww.baidu.com.          1200    IN      CNAME   www.a.shifen.com.
      a.shifen.com.           1200    IN      NS      ns1.a.shifen.com.
      a.shifen.com.           1200    IN      NS      ns3.a.shifen.com.
      a.shifen.com.           1200    IN      NS      ns2.a.shifen.com.
      a.shifen.com.           1200    IN      NS      ns5.a.shifen.com.
      a.shifen.com.           1200    IN      NS      ns4.a.shifen.com.
      ;; Received 228 bytes from 119.75.219.82#53(119.75.219.82) in 16 ms
      

相关文章:

网络安全 Day19-计算机网络基础知识04(网络协议)

计算机网络基础知识04&#xff08;网络协议&#xff09; 1. ARP1.1 ARP通讯原理1.2 arp欺骗1.3 ARP欺骗与预防1.4 排查ARP病毒 2. DHCP工作原理&#xff08;自动分配内网IP&#xff09;3. TCP协议三次握手、四次挥手原理4. DNS协议工作原理 1. ARP Linux查看arp&#xff1a;ar…...

Verilog语法学习——LV5_位拆分与运算

LV5_位拆分与运算 题目来源于牛客网 [牛客网在线编程_Verilog篇_Verilog快速入门 (nowcoder.com)](https://www.nowcoder.com/exam/oj?page1&tabVerilog篇&topicId301) 题目 题目描述&#xff1a; 现在输入了一个压缩的16位数据&#xff0c;其实际上包含了四个数据…...

❤️创意网页:创意动态画布~缤纷移动涂鸦~图片彩色打码

✨博主&#xff1a;命运之光 &#x1f338;专栏&#xff1a;Python星辰秘典 &#x1f433;专栏&#xff1a;web开发&#xff08;简单好用又好看&#xff09; ❤️专栏&#xff1a;Java经典程序设计 ☀️博主的其他文章&#xff1a;点击进入博主的主页 前言&#xff1a;欢迎踏入…...

数值分析第六章节 用Python实现解线性方程组的迭代法

参考书籍&#xff1a;数值分析 第五版 李庆杨 王能超 易大义编 第5章 解线性方程组的迭代法 文章声明&#xff1a;如有发现错误&#xff0c;欢迎批评指正 文章目录 迭代法的基本概念雅可比迭代法与高斯-塞格尔迭代法雅可比迭代法高斯-塞格尔迭代法 迭代法的基本概念 6.1.1引言…...

【低代码专题方案】使用iPaaS平台下发数据,快捷集成MDM类型系统

01 场景背景 伴随着企业信息化建设日趋完善化、体系化&#xff0c;使用的应用系统越来越多&#xff0c;业务发展中沉淀了大量数据。主数据作为数据治理中枢&#xff0c;保存大量标准数据库&#xff0c;如何把庞大的数据下发到各个业务系统成了很棘手的问题。 传统的数据下发方…...

驱动开发 day3 (模块化驱动启动led,蜂鸣器,风扇,震动马达)

模块化驱动启动led,蜂鸣器,风扇,震动马达并加上Makefile 封装模块化驱动&#xff0c;可自由安装卸载驱动&#xff0c;便于驱动更新(附图) 1.安装模块驱动同时初始化各个设备并使能 2.该驱动会自动创建驱动节点. 3.通过c函数程序输入控制各个设备 4.卸载模块驱动 //编译驱动…...

数据结构与算法基础-学习-27-图之最短路径之Dijkstra(迪杰斯特拉)算法

一、最短路径应用案例 例如从北京到上海旅游&#xff0c;有多条路可以到目的地&#xff0c;哪条路线最短&#xff0c;哪条路线最省钱&#xff0c;就是典型的最短路径问题。 二、最短路径问题分类 最短路径问题可以分为两类&#xff0c;第一类为&#xff1a;两点间最短路径。第…...

Windows Server 2012 能使用的playwright版本

由于在harkua_bot里面使用到了playwright&#xff0c;我的服务器又是Windows Server 2012 R2&#xff0c;最新版playwright不支持Windows Server 2012 R2&#xff0c;支持Windows Server 2016以上&#xff0c;所以有了这个需求 https://cdn.npmmirror.com/binaries/playwright…...

css实现溢出变为省略号

单行文本溢出省略 text-overflow&#xff1a;规定当文本溢出时&#xff0c;显示省略符号来代表被修剪的文本 white-space&#xff1a;设置文字在一行显示&#xff0c;不能换行 overflow&#xff1a;文字长度超出限定宽度&#xff0c;则隐藏超出的内容overflow设为hidden&#…...

nginx如何配置两个服务器的连接

nginx 中通过server_name listen的方式配置多个服务器 nginx配置两个站点的windows操作方法&#xff0c;双域名双站点...

Linux环境Arduino IDE中配置ATOM S3

linux选择ubuntu发行版。 硬件设备有多小呢&#xff1a; 功能超级强大。 之前的ROS1和ROS2案例已经全部移植完成并测试结束&#xff08;三轮纯人力校验&#x1f60e;&#xff09;。 官网文档信息非常非常好&#xff1a; https://docs.m5stack.com/zh_CN/quick_start/atoms3…...

【C#】.Net Framework框架下的Authorize权限类

2023年&#xff0c;第31周&#xff0c;第3篇文章。给自己一个目标&#xff0c;然后坚持总会有收货&#xff0c;不信你试试&#xff01; 在C#的.NET Framework中&#xff0c;你可以使用Authorize类来处理权限认证。Authorize类位于System.Web.Mvc命名空间中&#xff0c;它提供了…...

C++ list底层实现原理

文章目录 一、list底层实现二、类构成三、构造函数四、迭代器五、获取第一个元素六、获取最后一个元素七、插入元素 一句话&#xff1a;list底层实现一个双向循环链表 一、list底层实现 一个双向循环链表 二、类构成 class list : protected_List_base_list_base.lsit_impl…...

C#实现数字验证码

开发环境&#xff1a;VS2019&#xff0c;.NET Core 3.1&#xff0c;ASP.NET Core API 1、建立一个验证码控制器 新建两个方法Create和Check&#xff0c;Create用于创建验证码&#xff0c;Check用于验证它是否有效。 声明一个静态类变量存放列表&#xff0c;列表中存放包含令…...

Git的常用命令以及使用场景

文章目录 1.前言2.工作区,暂存区,版本库简介3.Git的常用命令4.版本回退5.撤销修改6.删除文件7.总结 1.前言 在学习Git命令之前,需要先了解工作区,暂存区和版本库这三个概念 2.工作区,暂存区,版本库简介 在使用Git进行版本控制时&#xff0c;有三个重要的概念&#xff1a;工作…...

tcp keepalive

tcp keepalive用于检查两者之间的链路是否正常&#xff0c;或防止链路断开。 一旦建立了TCP连接&#xff0c;该连接被定义为有效&#xff0c;直到一方关闭它。一旦连接进入连接状态&#xff0c;它将无限期地保持连接状态。但实际上&#xff0c;这种联系不会无限期地持续下去。如…...

PP-Matting: AI高精度图像前景Matting,让抠图轻而易举

分割和Matting的一个重要区别是:分割返回的是像素分类标签,其结果是整型数据;而Matting返回的是属于前景或背景的概率P,从而在前景与背景交互区域产生渐变的效果,使得抠图更加自然。Matting分割模型训练完成后,对于原始图像每个位置上的像素,都将生成一个表示其前景透明…...

VUE3-01

1.选项式和组合式 选项式API&#xff1a;按照作用组织代码 组合式API&#xff1a;按照功能组织代码 2.<script setup> <template><div class"about"><h1>{{name}}</h1><button click"sayHello">测试</button>…...

分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离(二)

说明&#xff1a;如果实现了docker部署mysql并完成主从复制的话再继续&#xff0c;本篇文章主要说明springboot配置实现Shardingjdbc进行读写分离操作。 如果没实现docker部署mysql实现主从架构的话点击我 Shardingjdbc配置介绍&#xff08;版本&#xff1a;5.3.2&#xff09;…...

Python 进阶(四):日期和时间(time、datetime、calendar 模块)

❤️ 博客主页&#xff1a;水滴技术 &#x1f338; 订阅专栏&#xff1a;Python 入门核心技术 &#x1f680; 支持水滴&#xff1a;点赞&#x1f44d; 收藏⭐ 留言&#x1f4ac; 文章目录 1. time模块1.1 获取当前时间1.2 时间休眠1.3 格式化时间 2. datetime模块2.1 获取当前…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式&#xff0c;可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力

引言&#xff1a; 在人工智能快速发展的浪潮中&#xff0c;快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型&#xff08;LLM&#xff09;。该模型代表着该领域的重大突破&#xff0c;通过独特方式融合思考与非思考…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序

一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...