| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 网络层协议介绍 -> 正文阅读 |
|
[网络协议]网络层协议介绍 |
本章结构 1、IP数据包格式 2、ICMP协议介绍 3、ARP协议介绍 4、ARP攻击原理 网络层的功能 定义了基于IP协议的逻辑地址 连接不同的媒介类型 选择数据通过网络的最佳路径 1、IP数据包格式 协议字段 (1)IP数据包格式(分为20字节写固定部分,表示每个ip数据包必须包含的部分,和40字节的可变部分) (2)版本号(4bit)指ip协议版本。并且通信双方使用的版本必须一致目前我们使用的IPV4 表示为0100 (3)首部长度(4):IP数据包的包头长度 (4)优先级与服务类型(8):该字段用于表示数据包的优先级和服务类型。通过在数据包中划分一定的优先级,用于实现qos(服务质量)的要求 (5)总长度(16):ip数据包的总长度,最长为65535字节,包括包头和数据 (6)标识符(16):ip数据段用于是ip数据包的表示符。当ip对上层数据进行分片时,他将给所有的分片一组编号,然后将这些编号放入字段中,保证分片不会错误的重组。表示符字段用于标志一个数据包,一遍接收节点可以重组备份片的数据包 (7)标志(3)和标识符一起传递,只是不可以备分片连接起来,按什么顺序连接起来开 (8)TTL生命周期(8):可以防止一个数据包在网络中无限循环的转发下去,经过一个路由? ? ? ? ? ? ? ? ? 器-1,当TTL的值为0时该数据包将被丢弃 (9)?协议号(8)封装的上层那个协议 icmp:1 tcp:6 udp:17 (10)首部校验和(16) 这个字段值检验数据报的首部,不包括数据部分。这是因为数据报没经过一次路由器,都要重新计算一下首部校验和(因为,一些字段如生存时间,标志,片偏移等可能发生变化) (11)源地址(32):源ip地址,表示发送端的ip地址 (12)目标地址(32):目标ip地址 表示接收端的IP地址 (13)可选项:选项字段根据实际情况可变长,可以和IP以其使用的选项有多个例如 可以输入穿件该数据包的时间等。在可选项之后,就是上层数据 注:根据实际情况可变长例如创建时间等 上层数据 2、ICMP协议介绍 ICMP是一个“错误侦测与回馈机制” 通过IP数据包封装的 用来发送错误和控制消息 ?(1)ICMP协议的封装 ICMP协议属于网络层协议 ICMP数据的封装过程 报文有了·两种类型:差错报告和查询报文 ?(2)Ping命令 Ping命令的返回信息出现“无法访问目标主机”,可能是因为没有真确配置网关的等参数 ?Ping命令的返回信息出现“请求超时”指在规定时间内没有收到返回的应答消息 ?Ping值命令的用法:结合具体在什么场景使用什么选项 -t:在Windows操作系统中,默认情况下发送4个Ping包,如果在Ping命令后面加上参数“t”,系统将会一直不停的Ping下去 -a:显示主机名 -l:一般情况下,Ping包的大小为32字节,有时为了检测大数据包的通过情况,可以使用参数改变Ping包大小 -n:指定发送包的个 -S指定源IP去Ping 在linux系统下为-s、-c、-l tracert命令:在命令行中输入“tracert”并在后面加入一个IP地址,可以查询从本机到该IP地址所在的电脑要经过的路由器及其IP地址 Linxu:traceroute? IP/域名 总结:IP数据包的格式 ? ? ? ? ? ?ICMP的作用 ? ? ? ? ? ?Ping命令的使用方法 3、ARP协议介绍 什么是ARP协议? ARP协议如何工作的 为了实现IP地址与Mac地址的查询与转换,ARP协议引入ARP缓存表的概念,每台主机或路由器在维护着一个ARP缓存表(ARP?table),这个表包含IP地址到Mac地址的映射关系,表中记录了<IP地址,Mac> 对,我称之为ARP表项,?他们是主机最近运行时获得关于其他主机的IP地址到Mac地址的映射,当需要发送数据的时候,主机就会根据数据报中的目标IP地址信息,然后在ARP缓存表中进行查找对应的Mac地址,最后通过网卡将数据发送出去。ARP缓存表包含一个寿命指(TTL,也称作生存时间),他将记录每个ARP表项的生存时间,生存时间到了就会从缓存表中删除。从一个表象放置到ARP缓存表开始,一个表项通常的生存时间一般是10分钟吗,当然,这是生存时间是可以任意设置的我们一般使用默认即可。 ?工作原理 ARP工作原理 1、PC1想发送数据给PC2,先检查自己的ARP缓存表。 2、如果发现要查找的Mac地址不在表中,就会发送一个ARP请求广播,用于发现目的地的Mac地址。 3、交换机收到广播后做泛洪处理,除PC1除外所有主机收到ARP请求消息,PC2以单播方式发送ARP应答,并在自己的ARP表中缓存PC1的IP地址和Mac地址的对应关系,而其它主机则丢弃这个ARP请求消息 4、PC1在自己的ARP表中添加PC2的IP地址和Mac地址的对应关系,以单播方式与PC2通信 4、ARP攻击原理 欺骗其他所有计算机 欺骗被攻击计算机 ?ARP攻击与欺骗 ARP攻击发送的ARP应答,但是ARP应答中的Mac地址为虚假地址,所以在其他主机想要通信时,会将目的Mac地址设置成此虚假Mac?地址导致无法正常通信 例如:如果希望被攻击主机无法访问互联网,就需要对网关发送或被攻击主机发送虚假的ARP应答。当网管接受待虚假的ARP应答更新ARP条目后,如果网管在发生数据个PC1时,就会发送到虚假的Mac地址导致通信故障。 此处可以举例说明,例如张三要给李四打电话,他首先要知道李四的电话号码,这时有人告诉他李四的电话号码是1234567(不存在的号码),于是张三就把电话打到12345678,这样就无法找到李四了 ARP欺骗的原理和ARP攻击基本相同,但是效果不一样。ARP攻击最终的结果是导致网络中断,而ARP欺骗的最终结果是是的导致网络中断,而ARP欺骗的最终结果是是的流量通过自身达到监控或控制的目的。 利用ARP欺骗管理网络 通过长角网络监控机软件管理网络 设置监控范围 进行网络管理 验证效果 总结: IP数据包格式重点理解个字段的含义 ICMP用来发送错误和控制消息 ARP协议用于实现IP到MAC地址的解析 ARP协议通过广播查询目标Mac地址 ARP攻击是通过伪造ARP应答进行欺骗攻击 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 7:18:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |