计算机网络原理总结C-网络层

news2024/12/27 12:56:37

网络层

  • 网络层提供的两种服务
  • 网际协议IP
    • 虚拟互连网络
    • IP地址
    • 子网掩码(无分类编址CIDR)
    • IP地址和MAC地址
    • IP数据报格式
    • (路由)转发分组的流程
      • 因特网的路由选择协议(动态路由协议)
  • 网际控制报文协议ICMP
  • IP多播(IGMP协议)
  • 虚拟专用网VPN和网络地址转换NAT

1、网络层提供的两种服务

  1. 争论焦点
  2. 虚电路服务和数据包服务
  3. 两种服务的对比

2、网际协议IP

1. 虚拟互连网络(逻辑互连,通过路由器将网络互连)
  1. 4种网络互连的设备【中间设备又称为中间系统或中继系统】
    • 物理层中继系统:转发器(repeater)
    • 数据链路层中继系统:网桥或桥接器-交换机(bridge)
    • 网络层中继系统:路由器(router)
    • 网络层以上的中继系统:网关(gateway)
  • 【注意】

    • 现在所说的网关是路由器的一个接口:如果没有配置网关,将不能访问其它网段,但可以访问本网段的网络,网关是访问其它网段的路由器的接口。

    • 计算机可以配置多个网关

    • 网关一般使用本网段的第一个地址或最后一个地址

  1. 虚拟互连网络需要解决的问题:虚拟互连网络可以由多种异构网络互连组成

  2. IP协议简介(四个协议)

    • ARP
    • RARP
    • ICMP
    • IGMP
2. IP地址
  1. 分层次:网络号和主机号

  2. 点分十进制记法

  3. IP地址的分类:(通过第一个字节和子网掩码划分)

    1. 十进制和二进制的关系(网络部分)

    十进制和二进制的关系1

    十进制和二进制的关系2

    十进制和二进制的关系3

    1. 常见的三种类别的IP地址
    网络类别最大网络数第一个可用的网络号最后一个可用的网络号每个网络中最大的主机数
    A类126(2^7-2)112616,777,214
    B类16383(2^14-1)128.1191.25565534
    C类2,097,151(2^21-1)192.0.1233.255.255254
    1. 特殊的几个IP地址

      • 网络部分

      (1)本地环回地址

       172.0.0.1
      

      (2)分配异常地址:Windows通过自动分配地址时,如果没有分配到正确的地址,自动分配这个网段的地址;

       169.254.0.0
      

      (3)保留的私网地址:(这些地址互联网上没有使用,提供给学校、企业等机构使用)

       10.0.0.0
       172.16.0.0——172.31.0.0
       192.168.0.0——192.168.255.0
      
      • 本机部分

        (1)主机部分全为0,代表区号

        (2)主机部分全为1,代表广播

3.无分类编址CIDR(子网掩码)
  1. 子网掩码的作用
  • 主机地址IP和子网掩码进行二进制“与”运算得到网段;如果相同则两台主机在同一网段上,就可以直接通信;否则需要通过路由器的网关进行通信。
  1. 子网划分

    1. C类网络的子网划分

    2. 点到点网络的子网掩码最好是252

      • 原因:这样网络里就有两个地址,不浪费
    3. 变长子网的划分【不等分的子网掩码不一样】及练习

    4. 将B类网络划分为两个子网

  2. 构造超网(合并网段:子网掩码向前移动)

4. IP地址和MAC地址
  1. 数据包和数据帧

    数据段+源IP+目标IP=数据包		//IP地址决定最终到哪一台机器
    数据包+源MAC+目标MAC=数据帧	//MAC地址决定下一跳给谁
    
  2. 基于MAC地址控制的代理服务器只能控制本网段计算机是否能上网:CCProxcy软件(代理软件)+Proxifier

  3. ARP协议相关(不安全)

    1. 工作机制:通过广播,将IP地址解析为MAC地址

    2. ARP欺骗(可截获数据包)

      1. P2P终结者:利用ARP欺骗将你们通信的目标Mac地址设置为自己的电脑,自己接受到数据包再发出去,可利用这个来控制带宽。

      2. 网络执法官:利用ARP欺骗拦截并返回一个根本不存在的Mac地址,这样可以控制计算机间的通信。

        • 【思考】如果想禁止本网段的网络访问互联网,如何操作?

        • 使用网络执法官将本网段的网络解析错误的网关的mac地址,这样就禁止本网段的网络访问互联网

      3. ARP防火墙:配置静态MAC地址,可以防止ARP欺骗;

        • 如果想自动配置,将命令arp -s写在.bat文件中,并设置为开机自启(在Windows中输入gpedit.msc,设置启动脚本
        arp -a //查看MAC地址
        arp -s 10.7.90.1 00-0f-e2-8f-f8-8c	//配置静态MAC地址(造成ARP欺骗,导致不能上网-不能ping网关)
        
        • 应用软件:金山贝壳ARP防火墙
    3. 【案例】如何判断ARP欺骗

      如何判断ARP欺骗

AB可以正常上网,C可以与AB正常通信,说明AB没问题并且C的物理层也没问题,可以考虑C解析不到网关的Mac地址,在可以正常通信的A使用arp -a查看正确的网关Mac地址,看C解析的Mac地址是否正确即可

  • 如果C缓存了一个错误的Mac地址使用 arp -d可以清空缓存即可

  • windows对网卡进行【网络诊断】,会把所有的MAC地址都清除掉

5.IP数据包格式
ping -i 1	//路由器网关(IP地址)回复:TTL传输中过期
【实验】通过抓包工具分析数据包首部
6.(路由)转发分组的流程
  1. 概念:路由器在不同网段转发数据包

  2. 路由表的作用

    • 沿途的路由器必须知道到目标网络下一跳给哪个接口
    • 沿途的路由器必须知道到网络下一跳给哪个接口
  3. 网络畅通的条件:能去能回

  4. 静态路由

【实验】添加静态路由
```
show interfaces fastEthernet 0/0	//查看路由器的接口地址

show ip route	//查看路由表

ip route (下一个网段的,路由器不关心具体地址)192.168.0.0 255.255.255.0 (下一跳接口IP)172.16.0.1	//添加静态路由

no ip route 192.168.0.0 255.255.255.0 	//删除静态路由
```
  1. 默认路由

    1. Windows网关就是默认路由,网关不设置,就没有默认路由

    2. 【实验】添加默认路由

    route print	//打印路由表
    
    route add (代表下一个网段)0.0.0.0 (子网掩码)mask 0.0.0.0 (下一跳,即网关)10.7.86.1	//添加默认路由
    
    1. 设置计算机路由的作用

    【问题】当计算机有两个网卡(即两个网关)时,可连通两个网络,相当于有两个路由,这样可能会出现计算机在返回数据时,一条发到网络A,一条发到网络B

    【解决方案】只在一个网卡上加默认路由,另一个给下一跳路由

  2. 动态路由协议

    1. RIP协议(内部网关协议,自治系统内)

      1. 特点:最早、周期性广播(30秒)、根据跳数计算最佳路径(最大跳数16跳)

      2. 【实验】配置路由器的动态路由RIP协议

      route rip	//进入RIP全局配置模式
      
      network 172.16.0.0	//这里默认B类网络,所以不需要加子网掩码255.255.0.0
      
      show ip route	//查看路由器的路由表
      
    2. OSPF协议(内部网关协议,自治系统内;开放式,在电商、互联网等地方应用的协议)

      1. 特点:

        • 度量值:带宽
        • 支持多区域:即使用OSPF协议划分区域
        • 触发式更新:自动计算最佳路径
        • 有三个表:邻居表(邻居之间会发hello包)、链路状态表(交换邻居表,构成网络拓扑图)、计算路由表(最短路径优先算法,不会出现环路)
      2. 【实验】配置OSPF协议(单区域)

      route OSPF 1(进程号---可随意写,无特殊意义)	//进入OSPF全局配置模式
      
      network 172.16.0.0 (反码掩码)0.0.255.255 (告诉它这个路由器属于哪一个区域)area 0
      
      show ip route //查看路由器的路由表
      
      tracert 172.17.0.2 //跟踪路由路径
      
    3. 路由优先级:静态路由(1)> OSPF协议分配的路由(110)> RIP协议动态分配的路由(120)

    4. BGP协议(外部网关协议,自治系统间)

3、ICMP协议(网际控制报文协议)

  1. 类型:
ICMP报文种类类型的值ICMP报文的类型
差错报告报文3终点不可达
源点抑制报文
11时间超过
12参数问题
5改变路由
询问报文8或0回送(Echo)请求或回送回答
13或14时间戳(Timestamp)请求或时间戳应答
  1. 格式及内容

  2. 【应用】诊断网络故障—ping tracert pathping三大命令

    1. ping命令:判断网络拥塞、粗略估算带宽
    2. tracert/traceroute命令:跟踪一个分组从源点到终点的路径
    3. pathping命令:跟踪数据包路径;能计算丢包率(路由器转发丢包率、链路丢包率);判断拥塞时,哪一段网络丢包比较严重
【实验】抓包分析ICMP协议

4、虚拟专用网VPN

  1. 用途:通过外网访问内网

  2. 原理:将局域网通信数据等使用互联网再包一层进行传输

  3. 【应用】(案例3个)创建VPN拨号连接

(1)设置连接或网络-----(2)连接到工作区-----(3)VPN连接------(4)输入IP地址-----(5)输入用户名、密码(出现网卡)-----(6)修改属性(网络:去掉“在远程网络上使用默认网关”/这样访问互联网时不会进入内网)

  1. 站点间VPN:将两个局域网的使用VPN服务器连通,这样两个局域网内的终端可以互连

5、网络地址转换NAT

  1. 用途

    • 内网访问外网
    • 节省公网IP
  2. 原理:公网地址切换

    • NAT(只替换地址)
    • PAT(替换端口和地址)
    netstat -n	//查看目标和源端口
    
  3. 应用

    1. 配置虚拟机的NAT
    2. 虚拟机配置NAT的端口映射( 在路由器上也可以配置端口映射)

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

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

相关文章

认识CSS语法

CSS(网页美容) 重点:选择器、盒子模型、浮动、定位、动画,伸缩布局 Css的作用: 美化网页:CSS控制标签的样式 网页布局:CSS控制标签的位置 概念:层叠样式表(级联样式表…

UE5 第一人称示例代码阅读0 UEnhancedInputComponent

UEnhancedInputComponent使用流程 我的总结示例分析firstthenand thenfinally&代码关于键盘输入XYZ 我的总结 这个东西是一个对输入进行控制的系统,看了一下第一人称例子里,算是看明白了,但是感觉这东西使用起来有点绕,特此梳…

布隆过滤器:极简存储,高效检索

引言 在海量数据的存储与检索中,如何在保持快速检索的同时,降低内存占用是个巨大的挑战。有没有一种既能快速检索又能节省内存的方案?布隆过滤器(Bloom Filter)就是这样一种数据结构。 布隆过滤器的基本原理 如果我…

数据库、数据仓库、数据湖和数据中台有什么区别

很多企业在面对数据存储和管理时不知道如何选择合适的方式,数据库、数据仓库、数据湖和数据中台,这些方式都是什么?有什么样的区别?企业根据其业务类型该选择哪一种?本文就针对这些问题,来探讨下这些方式都…

【目标检测01】真实框、预测框、锚框和交并比IoU

文章目录 1. 任务定义2. 基本概念2.1 边界框(bounding box)2.2 真实框、预测框和锚框2.3 交并比 (IoU)2.4 代码实现 1. 任务定义 目标检测的主要目的是让计算机可以自动识别图片或者视频帧中所有目标的类别,并在该目标周围绘制边界框&#x…

【linux网络编程】| 网络基础 | 解析IP与Mac地址的区别

前言:本节内容讲解一些网络基础相关的知识点, 不涉及网络代码!同样的本节内容是作为前一篇的补充知识点, 前一篇文章地址:【linux网络编程】 | 网络基础Ⅰ| 认识网络-CSDN博客,本篇文章内容较少&#xff0c…

命名空间std, using namespace std

命名空间std&#xff0c;using namespace std 在标准C以前&#xff0c;都是用#include<iostream.h>这样的写法的&#xff0c;因为要包含进来的头文件名就是iostream.h。标准C引入了名字空间的概念&#xff0c;并把iostream等标准库中的东东封装到了std名字空间中&#x…

UE5 源码学习 初始化

跟着 https://www.cnblogs.com/timlly/p/13877623.html 学习 入口函数 UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp WinMain 入口 int32 WINAPI WinMain(_In_ HINSTANCE hInInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ char* p…

unity开发之可视化制作动画

录制动画 1&#xff09;打开录制动画页面&#xff08;或者按快捷键ctrl6&#xff09; 2&#xff09;选中需要录制动画的对象 3&#xff09;创建动画列表&#xff0c;注意现在还没有录制动画&#xff0c;我这里创建了开门和关门动画列表 4&#xff09;选择需要录制动画的对象的相…

【计网】UDP Echo Server与Client实战:从零开始构建简单通信回显程序

目录 前言&#xff1a; 1.实现udpserver类 1.1.创建udp socket 套接字 --- 必须要做的 socket&#xff08;&#xff09;讲解 代码实现&#xff1a;​编辑 代码讲解&#xff1a; 1.2.填充sockaddr_in结构 代码实现&#xff1a; 代码解析&#xff1a; 1.3.bind sockfd和…

关于在vue2中接受后端返回的二进制流并进行本地下载

后端接口返回&#xff1a; 前端需要在两个地方写代码&#xff1a; 1.封装接口处&#xff0c;responseType: blob 2.接收相应处 download() {if (this.selectionList.length 0) {this.$message.error("请选择要导出的数据&#xff01;");} else {examineruleExport…

【Git】将本地代码提交到github仓库

一、创建仓库 复制这里的HTTP连接码 二、仓库初始化 进入你要提交的代码文件夹 右键选择 Git Bach Here 输入命令 git clone [HTTP连接码] 此时文件夹里会出现一个新的文件夹&#xff0c;将原来的文件当今这个新的文件夹 三、上传代码 执行命令 cd [新文件夹] 将所有文件放…

ArcGIS必会的选择要素方法(AND、OR、R、IN等)位置选择等

今天来看看ArcGIS中的几个选择的重要使用方法 1、常规选择、 2、模糊查询、 3、组合复合条件查询&#xff08;AND、OR、IN&#xff09;&#xff0c; 4、空值NULL查询 5、位置选择 推荐学习&#xff1a; 以梦为马&#xff0c;超过万名学员学习ArcGIS入门到实战的应用课程…

Pandas模块之垂直或水平交错条形图

目录 df.plot() 函数Pandas模块之垂直条形图Pandas模块之水平交错条形图 df.plot() 函数 df.plot() 是 Pandas 中的一个函数&#xff0c;用于绘制数据框中的数据。它是基于 Matplotlib 库构建的&#xff0c;可以轻松地创建各种类型的图表&#xff0c;包括折线图、柱状图、散点…

权重衰减学习

1.权重衰减是最广泛使用的正则化技术之一 %matplotlib inline import torch from torch import nn from d2l import torch as d2l 2.生成数据 n_train, n_test, num_inputs, batch_size 20, 100, 200, 5 true_w, true_b torch.ones((num_inputs, 1)) * 0.01, 0.05 train_dat…

论文笔记:LaDe: The First Comprehensive Last-mile Delivery Dataset from Industry

2023 KDD 1 intro 1.1 背景 随着城市化进程的加快和电子商务的发展&#xff0c;最后一公里配送已成为一个关键的研究领域 最后一公里配送&#xff0c;如图1所示&#xff0c;是指连接配送中心和客户的包裹运输过程&#xff0c;包括包裹的取件和配送除了对客户满意度至关重要外…

《等保测评新视角:安全与发展的双赢之道》

在数字化转型的浪潮中&#xff0c;企业面临的不仅是技术革新的挑战&#xff0c;更有信息安全的严峻考验。等保测评&#xff0c;作为国家网络安全等级保护的一项重要措施&#xff0c;不仅为企业的安全护航&#xff0c;更成为推动企业高质量发展的新引擎。本文将从全新的视角&…

如何用 Spring AI + Ollama 构建生成式 AI 应用

为了构建生成式AI应用&#xff0c;需要完成两个部分&#xff1a; • AI大模型服务&#xff1a;有两种方式实现&#xff0c;可以使用大厂的API&#xff0c;也可以自己部署&#xff0c;本文将采用ollama来构建• 应用构建&#xff1a;调用AI大模型的能力实现业务逻辑&#xff0c;…

mfc之tab标签控件的使用--附TabSheet源码

TabSheet源码 TabSheet.h #if !defined(AFX_TABSHEET_H__42EE262D_D15F_46D5_8F26_28FD049E99F4__INCLUDED_) #define AFX_TABSHEET_H__42EE262D_D15F_46D5_8F26_28FD049E99F4__INCLUDED_#if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // TabSheet.h : …

es实现桶聚合

目录 聚合 聚合的分类 DSL实现桶聚合 dsl语句 结果 聚合结果排序 限定聚合范围 总结 聚合必须的三要素&#xff1a; 聚合可配置的属性 DSL实现metric聚合 例如&#xff1a;我们需要获取每个品牌的用户评分的min,max,avg等值 只求socre的max 利用RestHighLevelClien…