网络工程师学习笔记——网络互连与互联网(二)

embedded/2024/9/23 8:18:37/
IP地址

是电脑在互联网上进行进行通信的“身份证”

网络号+主机号 网络号代表所处的网段,而主机号则代表电脑

ipv4有232个ip地址大约43亿

其中又分为A、B、C、D、E类地址

A:1.0.0.0~127.255.255.255(首位0)

B:128.0.0.0~191.255.255.255(10)

C:192.0.0.0~223.255.255.255(110)

D:224.0.0.0~239.255.255.255(组播地址)

E:240.0.0.0~255.255.255.255(保留地址)

ip地址和子网掩码进行异或运算就可以得到:网络地址

特殊的ipv4:
  • 0.0.0.0 主机端,表示不知道本地ip的情况下,表示本机 或者是路由表默认的路由

  • 255.255.255.255 广播地址

  • 169.254.0.0/16 表示在获取动态ip地址失败时候分配的ip DHCP获取失败

  • 127.0.0.0 本地环回地址,如果能够ping通,证明本地的tcp/ip协议安装没问题

  • RFC1918私有地址

    • 10.0.0.0/18 一个网络

    • 172.16.0.0~172.31.0.0 16个网络

    • 192.168.0.0~192.168.255.255 256个网络

  • 常见组播地址

    • 224.0.0.5 运行OSPF的路由器

    • 224.0.0.6 OR和BDR的组播接收地址

    • 224.0.0.9 RIP v2组播更新地址

IP协议数据单元

其中的字段有如下:

  • 版本号(占4位):如果是ipv4那么版本号就是4(0100),ipv6就是6(0110)

  • IHL(4字节的倍数):最小为5,即20字节

  • 服务类型(8位):区分不同的可靠性,优先级等

  • 总长度(16位):包含IP头部在内的数据单元的总长度

  • 标识符(16位):唯一标识数据报的标识符

  • 标志(3位):包含三种;一个是M标志,用于分段和重装配;另一个用于禁止分段标志;还没有启用

  • 段偏置值(13位):指明该段处于在原来数据报中的位置

  • 生存期(8位):表示经过路由器的跳数,0~255,最多255跳,TTL每进过一个路由器减一

  • 协议(8位):上层协议,其中ICMP协议号:1 TCP:6 UDP:17

  • 头部校验和(16位):其中ipv4才有,ipv6没有

  • 源地址(32位)

  • 目的地址(32位)

  • 选项+填充(0~40位):

  • 用户数据:加上ip头部,最长不超过65535字节

ip分片

原因:ip报文最大的数据为65535字节,但是以太网的最大传输帧为1500字节

MF:要是为1代表后面还有分片,为0则代表没有

偏移量:前一次的数据量/8

注意:如果当数据分片真实的数据不能够被8整除,就要选择该以太网最大的传输单元以下的MTU

ipv6不进行分片,因为发送数据时,直接发送最小的MTU

ip数据报文

ICMP协议(控制报文协议)

和ip协议相同,同属于网络层,但是icmp报文封装在ip数据报中发送

主要作用就是:传递控制,差错,查询

ping发送的就是icmp报文

当ping出现反馈超时或者不可达时,可能的原因是防火墙过滤了

缺路由:主机不可达

icmp的主要应用:ping和tracert

应用(三层节点会出现TTL减一的现象)

tracert 出现* 可能的原因是NAT技术和防防火墙,做了安全隔离的

ARP

(地址解析协议—将ip地址转为MAC地址)

ARP报文封装在以太网里面,ARP是广播的形式发送的

ARP表 arp -a 是查看自己电脑的arp表的信息的

ARP操作:

  • request:广播

  • reply:单播

免费ARP用于检测ip地址是否冲突

以太网中的目的MAC地址全是F:FF-FF-FF-FF-FF-FF

ARP报文中的目的MAC地址全是0:00-00-00-00-00-00

代理ARP:同一网段、不同物理网络上的计算机之间,通过代理ARP实现相互通信

ARP地址解析步骤

(假设主机A、B在同一网段要进行通信A给B发信息):

<1>首先A主机先查看自己的ARP表,如果ARP表中有对应主机B的ARP信息,主机A直接利用表中的MAC地址,对ip数据包进行帧封装,并将数据包发送给B

<2>如果找不到对应的B的ARP表相关信息,将缓存该数据报文,然后以广播的形式发送一个ARP请求报文,报文中封装了源ip地址(主机A),源MAC地址(A),和目的ip地址(B)和全为0的目的MAC地址,该网段上的所有主机都可以接受到该请求,但是只有能够对应上目的ip地址的主机才能够被请求

<3>主机B比较自己的ip地址和目的ip地址,相同进行如下处理:将源ip地址和源MAC地址存入自己的ARP表中,然后在以单播得到形式发送ARP报文给主机A,其中包含了自己的MAC地址

<4>主机A收到单播后,将主机B的MAC地址存入自己的ARP表中,用于后续报文的转发,同时将ip数据报进行封装发送出去


http://www.ppmy.cn/embedded/115493.html

相关文章

招联金融2025秋招--大量招后台、算法

【投递方式】 直接扫下方二维码&#xff0c;或点击内推官网https://wecruit.hotjob.cn/SU61025e262f9d247b98e0a2c2/mc/position/campus&#xff0c;使用内推码 igcefb 投递 【招聘岗位】 后台开发 前端开发 数据开发 数据运营 算法开发 技术运维 软件测试 产品策划 产品运营…

6.7泊松噪声

基础概念 在OpenCV联合C中给一张图片添加泊松噪声&#xff08;Poisson Noise&#xff09;可以通过生成随机数并在图像的每个像素上加上这些随机数来实现。泊松噪声是一种统计分布服从泊松分布的噪声&#xff0c;通常用于模拟光子计数等场景。 使用泊松噪声的场景 泊松噪声通…

「C++系列」动态内存

【人工智能教程】&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。 点击跳转到网站&#xff1a;【人工智能教程】 文章目录 一、动态内存1. 使用new和delete①分配单个对象②分配对象数组 2. …

Android 车载应用开发指南 - CarService 详解(下)

车载应用正在改变人们的出行体验。从导航到娱乐、从安全到信息服务&#xff0c;车载应用的开发已成为汽车智能化发展的重要组成部分。而对于开发者来说&#xff0c;如何将自己的应用程序无缝集成到车载系统中&#xff0c;利用汽车的硬件和服务能力&#xff0c;是一个极具挑战性…

Rocky Linux 9 中添加或删除某个网卡的静态路由的方法

使用ip命令配置临时路由 添加静态路由 ip route add <目的网络> via <下一跳IP> dev <网卡接口名称>例: 给eth0网卡添加一个到达 192.168.2.0/24 网络&#xff0c;下一跳为 192.168.1.254 的路由 ip route add 192.168.2.0/24 via 192.168.1.254 dev eth0…

STM32 单片机最小系统全解析

STM32 单片机最小系统全解析 本文详细介绍了 STM32 单片机最小系统&#xff0c;包括其各个组成部分及设计要点与注意事项。STM32 最小系统在嵌入式开发中至关重要&#xff0c;由电源、时钟、复位、调试接口和启动电路等组成。 在电源电路方面&#xff0c;采用 3.3V 直流电源供…

医院信息化运维监控:确保医疗系统的稳定与安全

在当今数字化时代&#xff0c;医院的信息化水平直接关系到医疗服务的效率和质量。随着医疗信息化的不断推进&#xff0c;医院对信息化运维监控的需求也日益增强。特别是IT软硬件资源监控和机房动环监控&#xff0c;它们在保障医院信息系统稳定运行中发挥着至关重要的作用。 首先…

基于微信小程序的家教信息管理系统的设计与实现(论文+源码)_kaic

摘 要 随着互联网时代的来临&#xff0c;使得传统的家教模式已不复存在&#xff0c;亟需一种方便、快捷的在线教学平台。因此&#xff0c;利用Java语言作为支撑和MySQL数据库存储数据&#xff0c;结合微信小程序的便利性&#xff0c;为用户开发出了一个更加人性化、方便的家庭…