TCP/IP之IP协议相关技术

本篇继续介绍IP协议相关的内容,主要介绍IP的辅助技术,包括DNS、ARP、ICMP、ICMPv6、DHCP、NAT等。

DNS

  • DNS的产生:TCP/IP网络中要求每一个互连的计算机都具有其唯一的IP地址,并基于这个IP地址进行通信,然而,我们平时需要访问网站(比如谷歌)的时候,输入的是类似于www.google.com的网址,而不是直接输入一个IP地址(当然,你如果记得IP的话,也可以直接输入IP)。DNS就是将网址转换成具体的IP地址的。
    互联网最初给每一台计计算机添加一个叫主机识别码的东西,即为每台计算机赋以唯一的主机名,在通信时直接使用主机名称而不需要输入IP。为此,系统必须通过一个hosts的数据库文件,自动将主机名转成具体的IP地址。随着网络规模的不断扩大,接入的计算机个数不断增加,这种处理方式就变得不可行。在此背景下,就产生了一个可以有效管理主机名和IP地址之间对应关系的系统,这就是DNS系统。在这个系统中,主机的管理机构可以对数据进行变更和设定。
主机名与IP地址之间的转换
  • 域名:理解DNS规范,就必须了解什么是域名。域名是指为了识别主机名称和组织机构名称的一种具有分层的名称。例如,kusa.ac,jp,kusa表示某大学的域名,ac表示高等教育的相关机构,最后的jp表示日本,在使用域名的时候,可以在每个主机名后面追加上组织机构的域名。DNS的分层结构如下图所示。
域名的分层
  • 域名服务器:域名服务器是指管理域名的主机和相应的软件,他可以管理所在分层的域的相关信息。各个域的分层上都设有各自的域名服务器。各层域名服务器都了解该层以下分层中所有域名服务器的IP地址,因此,他们从根域名服务器开始呈树状结构相互连接。所有域名服务器都了解根域名服务器的IP地址。所以若从根开始按照顺序追踪,可以访问世界上所有域名服务器的地址。
域名服务器
  • DNS查询:如下图所示,解析器向域名服务器进行查询,接收这个查询请求的域名服务器首先会在自己的数据库进行查询,如果有该域名所对应的IP地址则返回,没有则域名服务器再向上一层根域名服务器进行查询。因此,如图所示,从根开始对这棵树按照顺序进行遍历,直到找到指定的域名服务器,并由这个域名服务器返回想要的数据。解析器和域名服务器会将最新了解到的信息暂时保存在缓存里面。
DNS查询

ARP

在数据链路通信时,有必要了解买个IP地址对应的MAC地址。ARP就是解决地址问题的协议。以目标IP地址为线索,用来定位下一个应该接收数据分包的网络设备对应的MAC地址。如果目标主机不再同一个链路上时,可以通过ARP查找下一跳路由器的MAC地址。ARP只适用于IPv4,IPv6中使用ICMPv6代替ARP发送邻居探索消息。

  • ARP工作机制:ARP是借助ARP请求与ARP响应两种类型的包确定MAC地址的。如下图所示,主机A向主机B发送IP包,主机A为了获得主机B的MAC地址,通过广播发送一个ARP请求包,这个包中包含了想要了解其MAC地址的主机IP地址,ARP请求包会被同一链路上所有的主机或路由器进行解析。如果ARP请求包中的目标IP地址与自己的IP地址一致,那么这个节点就将自己的MAC地址塞入ARP响应包返回给主机A。
ARP工作机制
ARP包格式
  • RARP:是从ARP反过来,从MAC地址定位IP地址的一种协议。例如,将打印机服务器等小型嵌入式设备接入到网络时用到。
RARP

ICMP

  • ICMP主要功能:确认IP包是否成功送达目标地址,通知在发送过程当中IP包被废弃的具体原因,改善网络设置等。在IP通信中,如果某个IP包因为某种原因未能到达目标地址,那么这个具体的原因将由ICMP负责通知。ICMP的消息大致分为两类:一类是通知出错原因的错误消息,一类是用于诊断的查询消息。
ICMP无法到达的消息
  • 主要的ICMP消息:
    • ICMP目标不可达消息:IP路由器无法将IP数据包发送给目标地址时,会给发送端主机返回一个目标不可达的ICMP消息,并在这个消息中显示不可达的具体原因,包括主机不可达,MTU探索等。
  • ICMP重定向消息:如果路由器发现发送端主机使用了次优的路径发送数据,那么它会返回一个ICMP重定向的消息给主机,这个消息中包含了最合适的路由信息和源数据。
  • ICMP超时消息:IP包中有一个TTL(生命周期),他的值随着每经过一次路由器就会减一,直到减到0时该IP包就会被丢弃,此时,IP路由器将会发生一个ICMP超时的消息给发送端主机,并通知该包已被丢弃。
  • ICMP回送消息:用于通信主机和路由器之间,判断所发送的数据包是否已经成功到达对端的一种消息,可以向对端主机发送回送请求的消息,也可以接收对端主机发送回来的回送应答信息。网络上的ping命令就是利用这个消息使实现的。
ICMP消息类型

-ICMPv6:在IPv6中,从IP地址定位MAC的协议从ARP换成ICMP的邻居探索消息。

DHCP

DHCP是为了实现自动设置IP地址、统一管理ID地址分配的功能的。DHCP的工作机制如下图所示。为了检查所要分配的IP地址是否可用,DCHP服务器和DHCP客户端必须具有以下功能:

  • DCHP服务器:在分配IP地址之前发送ICMP回送请求包,确认没有返回应答;
  • DHCP客户端:针对从DHCP那里获得的IP地址发送ARP请求包,确认没有返回应答。
DHCP工作机制

NAT

NAT是用于在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址的技术。除了转换IP地址外,还出现了可以转换TCP、UDP端口号的NAPT技术,由此可以实现用一个全局IP地址与多个主机的通信。NAT实际上是为正在面临地址枯竭的IPv4而开发的技术。

NAT技术

IP隧道

一般情况下,紧接着IP首部的是TCP或者UDP的首部,然而,现在应用当中,会出现IP首部的后面还是IP首部或者IP首部的后面是IPv6的首部的情况,这种在网络层的首部后面追加网络层首部的通信方法就叫做IP隧道。比如:A网络时IPv6,B网络时IPV6,位于AB中间的C网络是IPv4,此时,A与B无法进行直接通信,就必须采用IP隧道这种技术。

IP隧道

IP任播

想象以下,报警电话110与消防电话119等系统,当人们拨打110或者119时,其接收电话并不只有一个,而是可以拨打到一个区域管辖范围内的所有公安或者消防部门。这种机制的实现,在互联网上就是IP任播。
IP任播是指为那些提供同一种服务的服务器配置同一个IP地址,并与最近的服务器进行通信的一种方法。

IP任播
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,271评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,725评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,252评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,634评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,549评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,985评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,471评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,128评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,257评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,233评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,235评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,940评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,528评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,623评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,858评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,245评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,790评论 2 339

推荐阅读更多精彩内容

  • 前言 写这篇文章的缘由是客户提出的一个问题:客户使用公司的Wi-Fi产品的App,有两个设备出现了问题,点击App...
    Noskthing阅读 2,926评论 2 23
  • 1.这篇文章不是本人原创的,只是个人为了对这部分知识做一个整理和系统的输出而编辑成的,在此郑重地向本文所引用文章的...
    SOMCENT阅读 13,030评论 6 174
  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 5,042评论 0 8
  • IP旨在让最终目标主机收到数据包,但是在这一过程中仅仅有IP时无法实现通信的。必须还要又能够解析主机名称和MACd...
    洛洛爱吃肉阅读 496评论 1 2
  • 协议基础 协议就是计算机之间通过网络实现通信时实现所达成的一种“约定”,这种约定使得那些由不同厂商的设备,不同的C...
    d9fc24a0c9a9阅读 2,336评论 0 6