【计算机网络】深入掌握计算机网络的核心要点

news2025/1/17 2:56:39

写在前面

  • 前言
  • 四层模型
  • 网络地址管理
  • Linux下设置ip
  • ARP请求包
  • 总结

前言

计算机网络是指将分散的计算机设备通过通信线路连接起来,形成一个统一的网络。为了使得各个计算机之间能够相互通信,需要遵循一定的协议和规范。OSI参考模型和TCP/IP参考模型是计算机网络中常用的两种层次结构模型。其中,TCP/IP参考模型被广泛应用于实际的网络实现中。

网络地址管理是计算机网络中的重要问题。IP地址是计算机在网络中的唯一标识,它包含了网络号和主机号两部分。为了方便管理和使用,IP地址通常会按照一定的规则进行划分和分配。例如,IPv4地址被划分为A、B、C、D、E五类地址,每个地址类别都有其特定的地址段和分配规则。

在Linux操作系统下,可以使用ifconfig命令或ip命令来设置网络接口的IP地址、子网掩码、网关等参数。这些命令可以通过shell脚本等方式自动化执行,以方便网络管理员进行批量配置和管理。

ARP请求包是网络中的一种数据包,用于查询目标主机的MAC地址。ARP请求包通常由ARP协议栈自动生成,并且被发送到局域网上的所有主机。当目标主机收到ARP请求包后,会根据自己的IP地址判断是否匹配,并将自己的MAC地址作为ARP应答包返回给请求主机。这样,请求主机就可以获得目标主机的MAC地址,从而建立通信连接。

四层模型

四层模型是指OSI(开放系统互联)参考模型中的一种,它将计算机网络通信划分为四个层次,每个层次都有其特定的功能和协议。四层模型也被称为TCP/IP参考模型,因为它是TCP/IP协议族的基础。

以下是四层模型中各层的功能和协议:

请添加图片描述

  • 应用层:应用层提供面向用户的服务,例如电子邮件、文件传输、远程登录等。常见的应用层协议有HTTP、FTP、SMTP、POP3等。

  • 传输层:传输层负责将数据从一个应用程序传输到另一个应用程序,同时还提供端到端的错误检测和纠正。常见的传输层协议有TCP和UDP。

  • 网络层:网络层负责将数据从源主机传输到目的主机,并实现路由选择和拥塞控制等功能。常见的网络层协议有IP、ICMP和ARP。

  • 数据链路层:数据链路层负责将数据在物理介质上传输,同时实现数据的可靠传输和错误检测。常见的数据链路层协议有Ethernet和PPP。

四层模型提供了一种标准化的方式来描述计算机网络通信过程中各个层次的功能和协议。它帮助网络工程师和管理员更好地理解网络通信过程,并能够更好地诊断和解决网络故障。

网络地址管理

请添加图片描述

  • 主机ID:
    在IPv4地址中,主机ID指的是在特定网络中标识主机(计算机、路由器等设备)的部分。IPv4地址通常由网络ID和主机ID两部分组成,网络ID用于标识网络,主机ID用于标识特定网络中的主机。IPv4地址的分类(A、B、C等)和子网掩码决定了网络ID和主机ID的划分方式。

  • 子网ID:
    子网ID是在划分子网时所使用的标识符。当一个大的网络需要被划分成多个子网时,就需要使用子网ID来标识不同的子网。子网ID一般是通过子网掩码来确定的,子网掩码中的网络位部分确定了子网ID,而主机位部分则确定了主机ID。

  • 网段地址是指在计算机网络中表示一组IP地址的起始地址和结束地址。它用于定义一个特定的网络范围,其中包含多个主机。网段地址通常由网络ID和子网掩码共同确定。子网掩码指示了网络ID和主机ID之间的边界,它通过将网络位设为1、主机位设为0来进行标识。
    例如,假设有一个IPv4地址为192.168.0.0的网络,并且使用子网掩码255.255.255.0进行划分。这个网段地址可以表示为192.168.0.0/24。其中,192.168.0.0是网段的起始地址,/24表示子网掩码中前24位是网络位,后8位是主机位。网段地址的使用可以帮助进行网络规划和管理,确保网络中的主机和设备能够正确地进行通信。通过合理划分网段,可以有效利用IP地址空间,并提高网络的性能和安全性

  • 广播地址是在计算机网络中用于向同一网络中的所有设备发送数据的特殊IP地址。当数据被发送到广播地址时,所有在该网络上的设备都会接收和处理这个数据包。
    在IPv4网络中,广播地址通常是将网络ID的主机位全部置为1的IP地址。具体而言,对于给定的网络,广播地址可以通过将网络ID与子网掩码进行逻辑“或”操作来计算得出。
    例如,假设有一个IP地址为192.168.0.0的网络,并且使用子网掩码255.255.255.0进行划分。广播地址可以计算为192.168.0.255。当数据被发送到这个地址时,网络上的所有设备都将接收到该数据。需要注意的是,广播地址只能在特定的网络范围内进行广播,不能跨越多个网络进行广播。此外,由于广播消息会被发送到所有设备,因此在某些情况下可能会对网络性能产生负面影响。因此,在设计网络时应谨慎使用广播功能。
    请添加图片描述

Linux下设置ip

请添加图片描述

或者首先查看网络接口:可以使用 ifconfigip addr 命令来查看当前系统中的网络接口和其对应的IP地址、子网掩码等信息。

配置IP地址:使用 ip addr add 命令来配置IP地址和子网掩码。例如,要将eth0接口的IP地址设置为192.168.1.100,子网掩码为255.255.255.0,可以执行以下命令:

sudo ip addr add 192.168.1.100/24 dev eth0

激活网络接口:使用 ip link set 命令来激活网络接口。例如,如果要激活eth0接口,可以执行以下命令:

sudo ip link set eth0 up

配置默认网关:使用 ip route add default via 命令来配置默认网关。例如,要将默认网关设置为192.168.1.1,可以执行以下命令:

sudo ip route add default via 192.168.1.1

具体的命令参数可能会因Linux发行版和版本而有所不同,可以通过 man 命令查看相关命令的手册页来获取更详细的信息。

ARP请求包

ARP(地址解析协议)是在局域网中解析IP地址与MAC地址之间关联的协议。当主机需要发送数据到目标主机时,需要知道目标主机的MAC地址才能进行通信。ARP请求包是用于查询目标主机的MAC地址的网络包。

下面是ARP请求包的详细解释:

  • 帧头部:包含目标MAC地址、源MAC地址和以太网类型(0x0806表示这是一个ARP包)。

  • ARP报文类型:指定这是一个ARP请求包(1表示ARP请求,2表示ARP应答)。

  • 硬件类型:表示使用的网络接口类型,例如以太网(1)或无线局域网(802.11)等。

  • 协议类型:表示上层协议类型,通常是IP协议(0x0800)。

  • 硬件地址长度:指定硬件地址的长度,以字节为单位。对于以太网,长度为6个字节(MAC地址长度)。

  • 协议地址长度:指定协议地址的长度,以字节为单位。对于IPv4地址,长度为4个字节。

  • 操作码:指定ARP请求的操作类型,通常为1(请求)。

  • 发送方MAC地址:发送ARP请求的主机的MAC地址。

  • 发送方IP地址:发送ARP请求的主机的IP地址。

  • 目标MAC地址:通常为全0,因为我们需要查询目标主机的MAC地址。

  • 目标IP地址:要查询MAC地址的目标主机的IP地址。
    请添加图片描述
    ARP请求包的作用是发送给局域网上的所有主机,询问某个IP地址对应的MAC地址。当目标主机收到ARP请求包后,会根据自己的IP地址判断是否匹配,并将自己的MAC地址作为ARP应答包返回给请求主机。这样,请求主机就可以获得目标主机的MAC地址,从而建立通信连接。

总结

计算机网络是将分散的计算机设备通过通信线路连接起来形成一个统一的网络。在网络中,四层模型、网络地址管理、Linux下设置IP和ARP请求包等知识是非常重要的。

通过了解四层模型,我们可以理解不同层次的功能和任务,从物理层到应用层,协同工作以实现可靠的数据传输和通信。

网络地址管理涉及IP地址的划分、分配和管理。了解IPv4地址的分类、划分规则以及地址资源的合理利用,有助于确保网络正常运行和提高地址资源的利用效率。

在Linux操作系统下,掌握设置IP地址、子网掩码、网关等参数的方法,以及使用ifconfig命令或ip命令进行网络接口配置和管理,对于网络管理员来说至关重要。

最后,了解ARP请求包的作用和原理,可以帮助我们更好地理解局域网中IP地址与MAC地址之间的关系,从而建立有效的通信连接。

深入学习计算机网络的知识,能够为我们设计和管理网络提供基础和指导,同时也有助于我们更好地理解和解决网络故障。

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

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

相关文章

专业133总分400+上海交通大学819考研经验分享上交819电子信息与通信工程

今年专业819信号系统与信号处理133,总分400,如愿考上梦中上海交通大学,通过自己将近一年的复习,实现了人生中目前为止最大的逆袭(自己本科学校很普通),总结自己的复习经历,希望可以给…

解决 Git:ssh: connect to host github.com port 22: Connection timed out 问题的三种方案

1、问题描述: 其一、整体提示为: ssh: connect to host github.com port 22: Connection timed out fatal: Could not read from remote repository. 中文为: ssh:连接到主机 github.com 端口 22:连接超时 fatal&a…

【C++】对外接口封装以及导出动态链接库DLL

VS 使用C编写对外接口并封装成DLL 一、接口的封装二、VS设置三、查看生成的DLL接口 一、接口的封装 首先创建头文件,包含我们所依赖的库的头文件名称,并且申明我们要对外封装的接口名称,示例: 头文件: #pragma once …

VMware 虚拟机环境下的ubuntu 上安装mysql,并能远程访问数据库

需求:为了实现在linux上模拟服务器跑代码,并存储在mysql上,通过远程可视化mysql数据库软件查看linux上mysql数据库数据的实时动态。 1. 虚拟机和ubuntu的安装 这里我选择的是VMware workstation-v14, ubuntu-18.04.1。至于体流程网上很多&a…

常量和C预处理器

本文参考C Primer Plus第四章 文章目录 符号常量printf()函数和scanf()函数 printf()函数使用printf()printf()的转换说明修饰符 1.符号常量 C头文件limits.h和float.h分别提供了与整数类型和浮点类型大小限制相关的详细信息。头文件都定义了一系列供实现使用的符号常量。例如&…

可解释性人工智能(XAI)概述

文章目录 每日一句正能量前言可解释性人工智能(XAI)定义研究的作用应用领域XAI的目标后记 每日一句正能量 一个人若想拥有聪明才智,便需要不断地学习积累。 前言 人工智能(AI)的发展速度迅猛,并在许多领域…

C++:类 的简单介绍(一)

目录 类的引用: 类的定义: 类的两种定义方式: 成员变量命名规则的建议: 类的访问限定符及封装: 访问限定符 【访问限定符说明】 封装 class与struct的区别: 类的作用域: 类的实例化…

Scikit-learn (sklearn)速通 -【莫凡Python学习笔记】

视频教程链接:【莫烦Python】Scikit-learn (sklearn) 优雅地学会机器学习 视频教程代码 scikit-learn官网 莫烦官网学习链接 本人matplotlib、numpy、pandas笔记 1 为什么学习 Scikit learn 也简称 sklearn, 是机器学习领域当中最知名的 python 模块之一. Sk…

解决Android Studio gradle下载超时和缓慢问题(win10)

解决超时问题 一般配置阿里云代理就可以解决。 具体配置方法,参考:https://blog.csdn.net/zhangjin1120/article/details/121739782 解决下载缓慢问题 直接去腾讯云镜像下载: https://mirrors.cloud.tencent.com/gradle/ 下载好了之后&…

docker 部署及命令

一、容器概述 1、为什么要用到容器? ①容器可以屏蔽底层操作系统的差异性,让业务应用不管在哪里都是使用容器的环境运行,从而保证开发测试环境与生产环境的一致性 ②容器部署起来非常便捷和迅速,缩短开发测试部署的周期时间 2…

MySQL8 窗口函数 →_→ 专治GROUP BY后组内元素

前言 假设你有一张表,里面记录了各个城市的销售数据,包括城市、销售日期和销售额。你可能会使用GROUP BY来按城市对数据进行分组,这样就可以知道每个城市的总销售额了。但是,有时候你可能还会希望对每个城市的销售数据进行更细致…

不可错过的欧几里得几何:探索数学世界的奇迹应用

不可错过的欧几里得几何:探索数学世界的奇迹应用 一、引言二、欧几里得几何的起源与发展三、欧几里得几何的基本概念3.1、点、直线、平面的定义3.2、全等3.3、平行与垂直3.4、角度、三角形、四边形等基本图形的性质 四、欧几里得几何的公理五、欧几里得几何的应用总…

国考省考行测:分析推理,形式逻辑,集合推理,真假推理

国考省考行测:分析推理,形式逻辑 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能,附带行测和申论,而常规国考省考最重要的还是申论和行测,所以大家认真准备吧,我讲一起屡屡申论和…

Kano模型

目录 1.介绍:2.Kano模型的作用:3.KANO模型使用场景:4.使用步骤:4.1设计问卷:4.2 数据分析4.2.1 KANO属性4.2.2 Better系数、Worse系数4.2.3 举例: 小结: 1.介绍: Kano模型是一种质量…

《合成孔径雷达成像算法与实现》Figure5.18

clc clear close all距离向参数 R_eta_c 20e3; % 景中心斜距 Tr 25e-6; % 发射脉冲时宽 Kr 0.25e12; % 距离向调频率 Fr 7.5e6; % 距离向采样率 Nrg 256; % 距离线采样点数 Bw abs(Kr*Tr); …

【微服务】springboot集成ELK使用详解

目录 一、前言 二、为什么需要ELK 三、ELK介绍 3.1 什么是elk 3.2 elk工作原理 四、ELK环境搭建 4.1 搭建es环境 4.1.1 获取es镜像 4.1.2 启动es容器 2.1.3 配置es参数 2.1.4 重启es容器并访问 4.2 搭建kibana 4.2.1 拉取kibana镜像 4.2.2 启动kibana容器 4.2.3 …

Linux系统明明还有足够的物理内存,调用fork却返回ENOMEM

使用systemtab hook fork,定位到报错调用路径SYSCALL_DEFINE0(fork)-》kernel_clone-》copy_process-》copy_mm-》dup_mm-》dup_mmap-》security_vm_enough_memory_mm-》__vm_enough_memory __vm_enough_memory返回了 -ENOMEM。其源码如下: 从代码可知f…

1 月 27日算法练习-贪心

文章目录 扫地机器人分糖果最小战斗力差距谈判纪念品分组 扫地机器人 思路: 最优机器人清理方法:机器人清理方法先扫左边,有时间再扫右边。最短时间:通过枚举,从 1 开始,清理面积会越大直到全部面积的清理…

测试C#调用OpenCvSharp和IronOcr从摄像头中识别文字

学习了基于OpenCvSharp获取摄像头数据,同时学习了基于IronOcr的文字识别用法,将这两者结合即是从摄像头中识别文字。本文测试C#调用OpenCvSharp和IronOcr从摄像头中识别文字的基本用法、。   新版Winform项目,在Nuget包管理器中添加以下程序…

macOS系统鼠标变彩虹的解决办法(详细)

目录 第一步 打开活动监视器 第二步 找出【简体中文输入方式】这个进程 第三步 点击最上方的"X"按钮,选择"退出" 按钮 第一步 打开活动监视器 如果下方的任务栏没有显示,可以在左下角【启动台】-其他里打开 -- 第二步 找出【…