计算机网络⑧ —— IP地址

IP位于TCP/IP参考模型的第三层,也就是⽹络层
⽹络层的主要作⽤:实现主机与主机之间的通信,也叫点对点通信

问题1:⽹络层(IP)与数据链路层(MAC)有什么关系呢?

  • MAC的作⽤:实现直连的两个设备之间通信。
  • IP的作⽤:负责在没有直连的两个⽹络之间进⾏通信传输
  • 在⽹络数据包传输中,源IP地址和⽬标IP地址在传输过程中是不会变的,只有源MAC地址和⽬标MAC⼀直在变化

1. IP地址的分类

在这里插入图片描述

  • 主机号全为1指定某个网络下的所有主机,用于广播
  • 主机号全为0指定某个网络
  • ⼴播地址⽤于在同⼀个链路中相互连接的主机之间发送数据包。⼴播地址可以分为本地⼴播和直接⼴播两种。
    • 在本⽹络内⼴播的叫做本地⼴播
    • 在不同⽹络之间的⼴播叫做直接⼴播
  • D 类和 E 类地址是没有主机号的,所以不可⽤于主机 IP,D 类常被⽤于多播,E 类是预留的分类,暂时未使⽤
    • 多播地址⽤于将包发送给特定组内的所有主机。由于⼴播⽆法穿透路由,若想给其他⽹段发送同样的包,就可以使⽤可以穿透路由的多播。

2. IP分类的优缺点

  • 优点:可以根据IP地址的前四位来判别IP地址属于哪个类别。简单明了,选路简单。
  • 缺点:地址划分缺少灵活性
    • A、B、C类不能很好的与现实⽹络匹配
    • C 类地址能包含的最⼤主机数量太少了,只有 254 个
    • B 类地址能包含的最⼤主机数量⼜太多了,⼀般的企业基本达不到这个规模

3. CIDR⽆分类地址

  • 32 ⽐特的 IP 地址被划分为两部分,前⾯是⽹络号,后⾯是主机号

  • 表示形式 a.b.c.d/x ,其中 /x 表示前 x 位属于⽹络号, x 的范围是 0 ~ 32 ,这就使得 IP 地址更加具有灵活性

  • 另⼀种划分⽹络号与主机号形式,那就是⼦⽹掩码,掩码的意思就是掩盖掉主机号,剩余的就是⽹络号
    在这里插入图片描述

  • 分离网络号和主机号的作用:

    • 因为两台计算机要通讯,⾸先要判断是否处于同⼀个⼴播域内,即⽹络地址是否相同。
    • 如果⽹络地址相同,表明接受⽅在本⽹络上,那么可以把数据包直接发送到⽬标主机。
    • 路由器寻址⼯作中,也就是通过这样的⽅式来找到对应的⽹络号的,进⽽把数据包转发给对应的⽹络内。
  • 如何进行子网划分:

    • 通过⼦⽹掩码划分出⽹络号和主机号,并且可以划分⼦⽹
    • ⼦⽹划分实际上是将主机地址分为两个部分:⼦⽹⽹络地址和⼦⽹主机地址!
      在这里插入图片描述

4. 公有IP地址与私有IP地址:

  • 私有 IP 地址通常是内部的 IT ⼈员管理,公有 IP 地址是由 ICANN 组织管理,中⽂叫互联⽹名称与数字地址分配机构。

5. IP地址与路由控制:

  • IP地址的⽹络地址这⼀部分是⽤于进⾏路由控制。路由控制表中记录着⽹络地址与下⼀步应该发送⾄路由器的地址。在主机和路由器上都会有各⾃的路由器控制表。
  • 在发送 IP 包时,⾸先要确定 IP 包⾸部中的⽬标地址,再从路由控制表中找到与该地址具有相同⽹络地址的记录,根据该记录将 IP 包转发给相应的下⼀个路由器。
  • 如果路由控制表中存在多条相同⽹络地址的记录,就选择相同位数最多的⽹络地址,也就是最⻓匹配。
  • 注:
    • 环回地址不会流向⽹络,环回地址是在同⼀台计算机上的程序之间进⾏⽹络通信时所使⽤的⼀个默认地址。 计算机使⽤⼀个特殊的 IP 地址 127.0.0.1 作为环回地址
    • 与该地址具有相同意义的是⼀个叫做 localhost 的主机名。使⽤这个 IP 或主机名时,数据包不会流向⽹络

6. IP分片与重组

  • 每种数据链路的最⼤传输单元 MTU 都是不相同的,因为每个不同类型的数据链路的使⽤⽬的不同。
    • 最常⻅数据链路是以太⽹,它的 MTU 是 1500 字节
  • 当 IP 数据包⼤⼩⼤于 MTU 时, IP 数据包就会被分⽚。 经过分⽚之后的 IP 数据报在被重组的时候,只能由⽬标主机进⾏,路由器是不会进⾏重组的。
  • 在分⽚传输中,⼀旦某个分⽚丢失,则会造成整个 IP 数据报作废,所以 TCP 引⼊了 MSS 也就是在 TCP 层进⾏分⽚不由 IP 层分⽚,对于 UDP 我们尽量不要发送⼀个⼤于 MTU 的数据报⽂

7. IPv6

  • 更多的地址,更好的安全性和扩展性,但IPV4和IPV6不能兼容

  • 特点:

    • 可分配地址变多
    • IPv6 可⾃动配置,即使没有 DHCP 服务器也可以实现⾃动分配IP地址
    • 简化了⾸部结构,减轻了路由器负荷,提⾼了传输的性能
    • IPv6 有应对伪造 IP 地址的⽹络安全功能以及防⽌线路窃听的功能,⼤⼤提升了安全性
  • 标识方法:![[1709170422983.png]]

  • 结构:![[1709170908211.png]]

  • IPV6单播地址类型:

    • 对于⼀对⼀通信的 IPv6 地址,主要划分了三类单播地址,每类地址的有效范围都不同。
    • 在同⼀链路单播通信,不经过路由器,可以使⽤链路本地单播地址,IPv4 没有此类型
    • 在内⽹⾥单播通信,可以使⽤唯⼀本地地址,相当于 IPv4 的私有 IP
    • 在互联⽹通信,可以使⽤全局单播地址,相当于 IPv4 的公有 IP
  • IPV4⾸部与IPV6⾸部:在这里插入图片描述在这里插入图片描述

    • 取消了⾸部校验和字段:因为在数据链路层和传输层都会校验,因此 IPv6 直接取消了 IP 的校验
    • 取消了分⽚/重新组装相关字段:分⽚与重组是耗时的过程,IPv6 不允许在中间路由器进⾏分⽚与重组,这种操作只能在源与⽬标主机,这将⼤⼤提⾼了路由器转发的速度
    • 取消选项字段:选项字段不再是标准 IP ⾸部的⼀部分了,但它并没有消失,⽽是可能出现在 IPv6 ⾸部中的下⼀个⾸部指出的位置上。删除该选项字段使的 IPv6 的⾸部成为固定⻓度的 40 字节。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/768345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle参数文件详解

1、参数文件的作用 参数文件用于存放实例所需要的初始化参数,因为多数初始化参数都具有默认值,所以参数文件实际存放了非默认的初始化参数。 2、参数文件类型 1)服务端参数文件,又称为 spfile 二进制的文件,命名规则…

Django 三板斧、静态文件、request方法

【一】三板斧 【1】HttpResponse (1)介绍 HttpResponse是Django中的一个类,用于构建HTTP响应对象。它允许创建并返回包含特定内容的HTTP响应。 (2)使用 导入HttpResponse类 from django.http import HttpResponse创…

八股文(1)

管道 匿名管道和命名管道 命名管道的使用是什么?在linux系统如何实现 命名管道(Named Pipe),也称为FIFO(First In First Out),是一种在UNIX和Linux系统中用于进程间通信(IPC&…

sqllabs1-7sql注入

先在?id参数后面判断是否存在sql注入 id1 返回正常 id1 返回报错(说明可能存在sql注入) id1 and 11 返回正常 id1 and 12 返回正常 id1 and 11 报错 id1 and 12 报错 说明$id后面可能还存在sql语句(源码源码:$sql"S…

HTML:常用标签

1. 标签概念 <!-- 五要素&#xff1a; 文档声明<!DOCTYPE html> 根标签<html></html> 头部元素<head></head> 主体元素<body></body> 注释标签 1.html文件的根标签&#xff0c; <html></html>所有其他标签都要放…

yarn、npm设置淘宝国内镜像

NPM 1. 查询当前镜像 npm get registry 2. 设置为淘宝镜像 npm config set registry https://registry.npm.taobao.org/ (旧地址&#xff0c;不再维护&#xff0c;可以使用) npm config set registry https://registry.npmmirror.com/ (最新地址)3. 设置为官…

第三十一章 配置 Web Gateway 的默认参数 - 事件记录参数

文章目录 第三十一章 配置 Web Gateway 的默认参数 - 事件记录参数 第三十一章 配置 Web Gateway 的默认参数 - 事件记录参数 事件日志级别字段指定 Web Gateway 写入 Web Gateway 事件日志的信息。日志记录选项定义为一串字符&#xff0c;每个字符代表一个日志记录命令。此处…

springboot实现简单的excel导入

前文其实已经实现了较为复杂的excel导入了&#xff0c;这篇博客就给大家介绍简单的excel表格导入方法 以下是我的excel表格&#xff1a; 以下是我的实体类&#xff1a; package com.datapojo.bean;import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.m…

直接插入排序 希尔排序 选择排序 堆排序

目录 一. 排序的概念及应用 1.1 排序的概念 1.2 常见的排序算法 二. 常见排序算法的实现(从小到大排序) 2.1 插入排序 2.1.1基本思想&#xff1a; 2.1.2 直接插入排序 2.1.3 希尔排序( 缩小增量排序) 2.2 选择排序 2.2.1基本思想&#xff1a; 2.2.2 直接选择排序: 2…

【Node.js】mysql 操作 MySQL 数据库

实际案例 db/index.js const mysql require(mysql)// 创建数据库的连接 const db mysql.createPool({host: localhost,user: root,password: hxg20021126,database: management-pro })module.exports dbLoginController.js const db require(../db/index) const bcrypt …

动态规划——线性dp

数字三角形 // 从上到下 #include <iostream> #include <algorithm> using namespace std; const int N 510, INF 1e9; int n; int a[N][N]; int f[N][N];int main() {scanf("%d", &n);for (int i 1; i < n; i )for (int j 1; j < i; j …

宝塔面板安装sqlite

宝塔面板是一个非常流行的服务器管理面板&#xff0c;它提供了许多方便的功能来管理服务器和网站。但是&#xff0c;默认情况下&#xff0c;宝塔面板不支持SQLite数据库的安装和管理。SQLite是一个轻量级的嵌入式数据库&#xff0c;它在很多应用程序中被广泛使用。如果你需要在…

计算机组成原理 CPU组成与机器指令执行实验

一、实验目的 (1)将微程序控制器同执行部件( 整个数据通路)联机&#xff0c;组成一台模型计算机; (2)用微程序控制器控制模型机数据通路; (3)通过CPU运行九条机器指令(排除中断指令)组成的简单程序&#xff0c;掌握机器指令与微指令的关系&#xff0c;牢固建立计算机的整机概…

深度学习pytorch——2D函数优化实例(持续更新)

课程&#xff1a;课时46 优化问题实战_哔哩哔哩_bilibili 这就是我们今天要求的2D函数&#xff1a; 下图是使用python绘制出来的图像&#xff1a; 但是可以看出有4个最小值&#xff0c;但是还是不够直观&#xff0c;还是看课程里面给的比较好&#xff0c;蓝色是最低点位置&am…

Python 全栈系列236 rabbit_agent搭建

说明 通过rabbit_agent, 以接口方式实现对队列的标准操作&#xff0c;将pika包在微服务内&#xff0c;而不必在太多地方重复的去写。至少在服务端发布消息时&#xff0c;不必再去考虑这些问题。 在分布式任务的情况下&#xff0c;客户端本身会启动一个持续监听队列的客户端服…

动态规划16 | ● 583. 两个字符串的删除操作 ● *72. 编辑距离

583. 两个字符串的删除操作 https://programmercarl.com/0583.%E4%B8%A4%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E5%88%A0%E9%99%A4%E6%93%8D%E4%BD%9C.html 考点 子序列问题 我的思路 dp[i][j]的含义是&#xff0c;当两个字符串分别取前i和j个元素时&#xff0c;对应…

路由相关基本概念(IP入门)

IP协议--网络层--路由器、三层交换机&#xff08;冗余备份&#xff09; 路由器的功能&#xff1a; 1、构建和维护路由表 2、根据路由表进行转发 3、路由器接口划分广播域 路由--实现路由的设备&#xff08;路由器、多层交换机&#xff09; 协议&#xff1a;定义一种语言 路…

Django(一)- 环境搭建和快速入门

一、搭建环境 1、创建Python虚拟环境 (base) C:\Users\35351>conda create -n django_study python3.9 2、安装Django (django_study) C:\Users\35351>pip install Django >> 查看安装版本 (django_study) C:\Users\35351>python -m django --version 3、安…

数据分析与挖掘

数据起源&#xff1a; 规模庞大&#xff0c;结构复杂&#xff0c;难以通过现有商业工具和技术在可容忍的时间内获取、管理和处理的数据集。具有5V特性&#xff1a;数量&#xff08;Volume&#xff09;&#xff1a;数据量大、多样性&#xff08;Variety&#xff09;&#xff1a…

CSS(二)

一、CSS 的复合选择器 1.1 什么是复合选择器 在 CSS 中&#xff0c;可以根据选择器的类型把选择器分为基础选择器和复合选择器&#xff0c;复合选择器是建立在基础选择器之上&#xff0c;对基本选择器进行组合形成的。 复合选择器可以更准确、更高效的选择目标元素&#xff…