网络层IP协议和数据链路层--理解NAT/NAPT路由技术

这篇具有很好参考价值的文章主要介绍了网络层IP协议和数据链路层--理解NAT/NAPT路由技术。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

一.网络层与数据链路层

  • 传输层应用层数据报文提供传输策略,而网络层则为传输层数据报文提供网络传输路径规划(基于路由节点的路径规划),数据链路层则负责将网络层报文传送给局域网内的其他主机
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

二.IP协议报头

网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

报文切片

  • 由于数据链路层存在最大传输单元MTU(数据链路层报文的最大字节数),因此IP协议会将传输层交付下来的数据报文进行分片,IP协议分片描述字段:
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

  • 同一组分片中,任意一个IP报文丢失,则对应的传输层报文整个会被网络层丢弃,因此如果传输层使用的是UDP协议,IP协议的分片操作会很大程度上增加网络报文的丢包概率

  • 如果传输层使用的是TCP协议,IP协议的分片大小则会影响TCP协议对应用层报文的切片大小,称为MSS(Max Segment Size)(MSSTCP协议三次握手时双方协商的重要字段)

IP协议与路由器

  • 报文在跨网络传输过程中必须经过路由器进行跨网络节点路由,IP协议的主要任务就是借助IP地址在路由过程中为报文提供路径规划

网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

  • 路由器的本质也是一台主机,路由器中配置了多张网卡作为多个子网数据报文收发中转站连接多个子网(一张网卡使用一个IP地址,因此一个路由器配置了多个IP地址)

IP地址的结构与子网掩码

  • IP地址分为两个部分, 网络号主机号
    • 网络号: 用于标识不同地区网段(广义上的局域网)的字段
    • 主机号: 用于标识同一网段内的不同主机
      网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议
  • 子网掩码IP地址位数相同,其二进制序列由若干个前缀1和若干个后缀0构成,子网掩码前缀1的个数取决于网络号的位数,子网掩码IP地址按位与就可以得到IP地址对应的网络号,用于快速进行路由决策

数据报文路由的实现机制

  • 每台主机的网络层内部都内置了路由表:
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

  • 路由器根据数据报文的IP地址,借助子网掩码,就可以得到数据报文的传输目的主机的网络号,通过查表就可以确定数据报文的传输目的主机是否位于本路由器所在的子网中,若是则将数据报文传送到相应的局域网中,否则进行路由转发传输给其他网络

  • 除了转发数据报文,路由器另外一个重要作用就是构建局域网,路由器通常为局域网中的1号主机,最先加入到局域网中,并且为后续加入局域网的主机分配私网IP地址,同时完成路由表的增删改操作

  • 普通用户在入网之前,整个网络(区域网段的划分路由器节点网络的铺设)就已经被运营商精心构建好了

三.公网IP和私网IP

  • 32位的IP字段可以表示 2 32 2^{32} 232个不同的IP地址,因此全球公网IP是有限的资源,主机想要使用公网IP入网需要向特定机构申请公网IP,一般来说,只有特定的企业服务器,重要的路由器等设备会申请公网IP,其余大部分用户设备一般直接使用的是私网IP,由路由器动态分配.
  • 主机的私网IP仅在其所在的局域网中具有唯一性,私网IP和设备之间采用临时绑定的机制,设备入网时,其私网IP由局域网中的路由器动态分配,公网IP和私网IP配合构建网络,解决了全球范围内公网IP数量不足的问题
  • 私网IP特定的前缀以便和公网IP作明确区分

公网IP主机与公网IP主机之间的跨网络通信

网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

  • 网络中大部分设备使用的都是私网IP,因此公网IP主机和公网IP主机之间的跨网络通信其实并不常见,绝大部分网络通信本质上是公网IP主机和私网IP主机之间的跨网络通信以及局域网通信
  • 另外,由于私网IP无法在全网中唯一标识一台主机,因此私网IP主机和私网IP主机之间是无法直接通信的,两个私网IP主机的通信必须借助公网服务器进行代理

四.数据链路层与局域网通信

数据链路层以太网协议

网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

  • 数据链路层以太网协议报文分为两种类型,负责实现局域网内的主机通信:
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

  • 在局域网通信中,报文发送方先会在局域网中进行ARP请求广播,报文接收方通过核对ARP请求中的目的IP地址字段,确认自己就是报文的接收方后,再通过RARP应答报文将自己的MAC地址广播到局域网中,报文发送方就可以获取到报文接收方MAC地址,报文接收方报文发送方会互相将彼此的私网IP:MAC地址缓存起来,双方就可以正常进行数据收发了
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

五.NAT技术实现私网IP主机与公网IP主机之间的跨网络通信

NAT技术的诞生背景

  • 私网IP主机只要能够获得公网IP主机的公网IP,就可以将数据报文发送给公网主机,然而由于私网IP在全网中不能唯一地标识一台主机,因此公网IP主机想要将回应报文发送给某台私网IP主机就需要借助其他技术

从私网主机到公网主机的NAT路由

网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议
网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议文章来源地址https://www.toymoban.com/news/detail-850423.html

从公网主机到私网主机的NAT路由

  • 私网主机向某台公网主机首次发送数据或发起TCP链接时,路由器就会建立一张映射表来存储局域网内主机的私网IP+原端口号 : 路由器出口IP+原端口号映射关系键值对
  • 当局域网内多个主机都访问同一个公网服务器时,路由器则通过局域网内主机的私网IP+原端口号 : 路由器出口IP+自定义的替换端口号键值对来区分局域网内的主机(不同主机通过端口号来区分)
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议
  • 公网服务器私网主机发送数据报文时,封装的IP地址为某台路由器的公网IP地址,数据报文经过若干次查表路由后,到达特定局域网的路由器中,再经过最后一次查表就可以将数据报文交给局域网内特定的私网主机
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议
  • 总言之,数据报文从私网主机公网主机的NAT路由过程中,源私网IP经过不断地转换后变为公网IP;数据报文从公网主机私网主机的NAT路由过程中,目的公网IP经过不断地查表转换后变为特定局域网的私网IP

NAT技术的缺陷

  • 公网主机无法主动向私网主机发起连接;
  • 映射表的生成和销毁都需要额外开销;
  • 通信过程中一旦NAT路由设备异常, 所有相关的TCP连接也都会断开;
    网络层IP协议和数据链路层--理解NAT/NAPT路由技术,青菜的Linux专栏,计算机网络,tcp/ip,网络,网络协议

到了这里,关于网络层IP协议和数据链路层--理解NAT/NAPT路由技术的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络层&&IP协议的基本原理 数据链路层&&ARP协议 域名解析以及一些重要技术

    网络层作用:在复杂的网络环境中确定一个合适的路径。 tcp/ip协议,tcp解决可靠性与效率,ip提供在网络中传输的能力。 传输层决定了单次向下交付数据包的大小。 IP(Internet Protocol)协议是一种网络层协议,用于在互联网上进行数据传输。它定义了数据如何在网络中进行分

    2024年02月15日
    浏览(32)
  • Linux【网络基础】数据链路层&IP协议技术补充&DNS&DHCP

    数据链路层的主要功能就是负责相邻设备之间的数据传输 。 在网络层是点对点之间的通信。主要通过IP协议描述起点到终点。而链路层则是对网络层的补充,负责在起点到终点的路径中,每一个相邻节点的数据传输。 网络层主要关心的是从起点到终点 链路层则关心的是其中

    2024年02月14日
    浏览(41)
  • IP协议-NAT机制(理解网络结构的关键要点)

            我们现在使用得最多的IP协议版本是IPv4,IPv4是4个字节,32位,也就是说我们的IP地址最多就只有2^32(42亿)个,在日常生活中,我们需要联网的设备都需要有IP地址才能进行通讯,很明显现在42亿个IP地址已经完全不足以满足我们现在的需求了(就目前世界上需要

    2024年02月09日
    浏览(26)
  • 【网络原理进阶篇】ip协议,ip地址组成,ip地址分类网关,路由选择,数据链路层,应用层,ip与mac地址等

    前言: 大家好,我是 良辰丫 ,我们已经学习了网络原理基础版,初步认识了网络,还学习了网络编程,了解了网络通信的各种程序,接下来我们更深入的了解网络是如何工作的.这篇文章我们主要介绍协议,UDP和TCP的一些原理.💞💞 🧑个人主页:良辰针不戳 📖所属专栏:javaEE初阶 🍎

    2024年02月06日
    浏览(32)
  • 计算机网络基础(静态路由,动态路由,公网IP,私网IP,NAT技术)

    文章目录 一:静态路由和动态路由 二:静态路由的配置路由信息的方式演示 三:默认路由 四:公网IP和私网IP和NAT技术的基本理解 在说静态路由和动态路由前,我们需要来了解一下,如下网络, 如何让各个计算机之间能够进行通信!! 首先观察计算机0和计算机1的通信情况

    2024年02月14日
    浏览(32)
  • NAPT之NAT地址池、NAPT之easy-ip、NAT-Server

    NAPT之NAT地址池 拓扑    需求     实现企业内网主机(PC1-PC4)访问公网网站服务器(Server1) 配置步骤 第一步:给PC1-PC4/Server1配置接口IP地址,掩码,网关  第二步:R1配置默认路由 -边界路由器R1,配置接口IP地址 -边界路由器R1,配置默认路由  第三步:配置NAPT之地址池NAT  

    2024年02月13日
    浏览(22)
  • 华为ensp中nat地址转换(静态nat 动态nat NAPT 和Easy IP)配置命令

    作者主页: 点击! ENSP专栏: 点击! 创作时间:2024年4月15日12点03分 实验拓扑 接下来我会分几个方面初步将静态nat和napt easy ip 首先基本的环境配置 AR1的基本配置 //基本的IP配置和默认路由指向外网 AR2的基本配置 PC1的IP(内网pc) PC3的IP(外网pc) 静态NAT(Static NAT)是一种网络地

    2024年04月16日
    浏览(26)
  • 【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)

    3.7.1 MAC地址 MAC地址(Media Access Control address)是网络设备(如网卡、无线网卡)在数据链路层上的唯一标识符。以下是有关MAC地址的一些要点: 描述:MAC地址是一个由48个二进制位(通常以十六进制表示)组成的全球唯一标识符,用于识别计算机网络中每个网络接口(NIC)的

    2024年02月13日
    浏览(35)
  • NAT、NAPT之NAT地址池、NAT之easy-ip、NAT-Server的基本概念与配置

    目录 NAT概述 为什么会有NAT NAT是什么 NAT的作用 NAT核心工作表:NAT转换表 NAT分类 静态NAT: 动态NAT: NAPT:网络地址端口转换( Network Address Port Translation ) NAT Server: NAT实验 静态NAT 拓扑 需求 配置步骤 配置命令 总结 动态NAT 拓扑 需求 配置步骤 配置命令 总结 NAPT之NAT地址池 拓扑

    2024年03月17日
    浏览(28)
  • NAT/NAPT地址转换(内外网通信)技术详解【华为eNSP】

    下文下载或文章顶部资源绑定处下载。 https://download.csdn.net/download/weixin_52908342/88526847 我们之前已经解决了,DHCP,VRRP,MSTP,OSPF的需求了,我们来解决一下内外网通信的需求: 11.思考当内网用户需要访问互联网时如何实现 先看一下我们现在的拓扑图: 现在的需求就是我们内

    2024年02月09日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包