当前位置: 首页 > 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 获取当前…...

KubeSphere 容器平台高可用:环境搭建与可视化操作指南

Linux_k8s篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;KubeSphere 容器平台高可用&#xff1a;环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

【机器视觉】单目测距——运动结构恢复

ps&#xff1a;图是随便找的&#xff0c;为了凑个封面 前言 在前面对光流法进行进一步改进&#xff0c;希望将2D光流推广至3D场景流时&#xff0c;发现2D转3D过程中存在尺度歧义问题&#xff0c;需要补全摄像头拍摄图像中缺失的深度信息&#xff0c;否则解空间不收敛&#xf…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中&#xff0c;其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下&#xff1a; 初始判断与哈希计算&#xff1a; 首先&#xff0c;putVal 方法会检查当前的 table&#xff08;也就…...