小白学TCP/IP(五)IP协议相关技术

2024-04-25 23:48

本文主要是介绍小白学TCP/IP(五)IP协议相关技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

IP协议相关技术

IP旨在让最终目标主机收到数据包,但是这一过程仅仅依靠IP是无法实现的,必须要有实现解析主机名称和MAC地址的功能,以及数据包在发送过程中异常情况处理的功能,此外还会涉及IP必不可少的其他功能.


DNS(Domain Name System)

DNS系统与IP协议的关系:
DNS系统中维护一个用来表示组织内部主机名(域名)和IP地址之间对应关系的数据库.
DNS工作原理:

  1. 用户输入主机名(域名)
  2. DNS自动检索那个注册了的主机名和IP地址的数据库,迅速定位对应的IP地址
  3. 返回给用户主机该IP地址

DNS查询:


ARP(Address Resolution Protocol)

只要确定了IP地址即可向该目标地址发送IP数据报,然而在底层数据链路层,进行实际通信时,需要知道每个IP所对应的MAC地址

ARP协议与IP协议的关系
ARP是一种解决地址问题的协议,以目标IP地址为线索,用来定位下一个接受数据分包的网络设备对应的MAC地址,如果目标主机与用户主机不在同一个数据链路上,使用ARP查找下一跳路由器的MAC地址.

ARP协议是如何知道MAC地址的呢?

核心是借助用户主机发送ARP请求包和目标主机发送ARP响应包确定MAC地址

假定主机A要往主机B发送IP数据包

  1. 主机A只知道主机B的IP地址,为了获得主机B的MAC地址,主机A通过广播向同一数据链路的所有主机或路由器发送一个ARP请求包(包含了主机A的IP地址,MAC地址,目标主机的IP地址)
  2. 该请求包会被该链路上的所有主机或路由器解析
  3. 主机B解析到该请求包后得到主机A请求的IP地址与自己的IP地址相同,便将自己的MAC地址塞入ARP响应包并通过单播返回给主机A,同时将主机A的IP地址和MAC地址存入主机B自身的ARP缓存表.
  4. 主机A接收到主机B发送回来的ARP响应包,得到了主机B的MAC地址,同时将主机B的IP地址与MAC地址存入主机A自身的缓存表中.(注意:缓存数据也是有期限的)

RARP协议

RARP是将ARP反过来,从MAC地址获取IP地址的一种协议,将打印机服务器等小型嵌入式设备接入到网络中经常用到,假如将一台打印机接入到网络中,插电启动设备时,打印机就会发送一条"我的MAC地址是****,请告诉我我的IP地址是什么?"的请求信息,RARP服务器收到这条消息便会返回"MAC地址为****的设备,你的IP地址是啥啥啥"的响应信息给这个设备.


ICMP(Internet Control Message Protocol)

ICMP协议与IP协议的关系
ICMP协议确认IP包是否成功被发送出去,通知在发送过程当中IP包被废弃的原因,改善网络设置等.
ICMP的消息大致分为两类:

  • 通知出错原因的错误消息
  • 用于诊断的查询消息

ICMP的通知消息以明文的形式像TCP/UDP一样通过IP进行传输,但是ICMP所承担的功能并非传输层的补充,应该把它考虑为IP的一部分,收到该ICMP包的主机分解ICMP的首部和数据域可以得知具体发生问题的原因.


DHCP(Dynamic Host Configuration Protocol)

DHCP协议与IP协议的关系
DHCP协议实现了自动分配IP地址,统一管理IP地址分配,让即插即用变得可能.

DHCP协议工作原理

  1. DHCP客户端广播发送DHCP发现包,为自己请求一个新IP地址
  2. DHCP服务器收到该DHCP发现包后,给DHCP客户端发送了一个DHCP提供包,提供包中包含了一个可用的新IP地址
  3. DHCP客户端收到该DHCP提供包后,决定使用这个新IP地址作为自己的IP地址,于是再次广播发送DHCP请求包,向DHCP服务器请求使用该IP地址
  4. DHCP服务器收到该DHCP请求包后,再次向该DHCP客户端发送了一个DHCP提供包,允许DHCP客户端使用该IP地址.

NAT(Network Address Translator)

NAT协议与IP协议的关系
NAT协议是用于本地网络中使用私有地址,在连接互联网时转而使用全局IP地址的技术,也就是实现私有地址到全局IP地址的转换.

NAPT(Network Address Ports Translator)技术
实现了用一个全局IP地址与多个主机的通信(比NAT技术更常用,所以说NAT技术一般指的是NAPT技术)

NAPT原理

主机A的本地IP地址为192.168.1.2,主机B的本地IP地址为192.168.1.3,这两个主机要连接互联网时,需通过NAT服务器,将IP地址转换为NAT服务器的全局IP地址中的一个端口地址,接收数据也是一样的,先使用NAT服务器的全局IP地址端口进行接受,然后再转换为本地IP地址.


IP隧道

IP隧道与IP协议的关系
假如网络A和网络C采用IPv6,而夹在中间的网络B使用IPv4的话,网络A与C就无法直接进行通信,需要使用IP隧道将网络A发过来的IPv6包统合为一个包,然后再追加一个IPv4的首部后转发给网络B.

IP隧道是什么
IP隧道就是在网络层的首部后面继续追加网络首部的通信方法

这篇关于小白学TCP/IP(五)IP协议相关技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/936136

相关文章

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

【Linux】应用层http协议

一、HTTP协议 1.1 简要介绍一下HTTP        我们在网络的应用层中可以自己定义协议,但是,已经有大佬定义了一些现成的,非常好用的应用层协议,供我们直接使用,HTTP(超文本传输协议)就是其中之一。        在互联网世界中,HTTP(超文本传输协议)是一个至关重要的协议,他定义了客户端(如浏览器)与服务器之间如何进行通信,以交换或者传输超文本(比如HTML文档)。

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

系统架构设计师: 信息安全技术

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师: 信息安全技术前言信息安全的基本要素:信息安全的范围:安全措施的目标:访问控制技术要素:访问控制包括:等保

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

log4j2相关配置说明以及${sys:catalina.home}应用

${sys:catalina.home} 等价于 System.getProperty("catalina.home") 就是Tomcat的根目录:  C:\apache-tomcat-7.0.77 <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /> 2017-08-10

Node Linux相关安装

下载经编译好的文件cd /optwget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.gztar -xvf node-v10.15.3-linux-x64.tar.gzln -s /opt/node-v10.15.3-linux-x64/bin/npm /usr/local/bin/ln -s /opt/nod

git ssh key相关

step1、进入.ssh文件夹   (windows下 下载git客户端)   cd ~/.ssh(windows mkdir ~/.ssh) step2、配置name和email git config --global user.name "你的名称"git config --global user.email "你的邮箱" step3、生成key ssh-keygen