美文网首页
网络--TCP/IP(三)IP协议相关技术

网络--TCP/IP(三)IP协议相关技术

作者: doudo | 来源:发表于2017-09-11 13:33 被阅读23次

这篇文章我们简要介绍IP协议相关技术,下篇文章我们就会开始介绍这一系列教程的重点--传输层与TCP协议。
这篇文章我们会了解到DNS、ARP、NAT协议,这些协议虽然与TCP没有直接关联,但理解他们有助于巩固基础知识,更好的理解网络工作的原理.

一、 DNS解析

  1. 域名
    IP地址是用于识别通信双方的地址,但它是一串长数字,不方便记忆,人们希望主机有自己的名字,这个名字是唯一的,并且是容易记住的。于是,诞生了“域名”的概念。域名是一种为了识别主机名称和机构名称的具有分层的名称,比如neu.edu.cn中,neu是主机名,edu是不同层次下的机构名。

  2. DNS解析
    域名和IP地址都可以唯一对应一台主机DNS协议的作用就是将自身具有意义的域名转换为不容易记住的IP地址
    域名是分层的,每一层都有自己的DNS服务器,用于处理DNS解析的请求。这样的好处在于每层的服务器不用关注过多的信息,它只要知道自己这一层下的域名服务器信息即可。以解析www.ietf.org为例:

DNS解析过程

根域名服务器其实并不知道www.ietf.org的IP地址,但是它知道ietf.org的域名服务器的地址,所以它把这条查询请求转发给ietf.org的域名服务器。DNS被逐层下发,直到找到对应的IP地址为止

二、 ARP协议(地址解析协议)

在通过以太网发送IP数据包时,需要先封装第三层IP首部(里边包含目标IP地址)、第二层以太网帧首部(里边包含目标MAC地址),但由于发送时只知道目标IP地址,不知道其MAC地址,又不能跨第二、三层,所以需要使用地址解析协议。ARP协议只使用于局域网中。

  1. ARP(Address Resolution Protocol)用于根据目标IP地址,定位下一个接收数据包的网络设备的MAC地址。结果是如果目标主机处在同一个数据链路上,可以直接得到目标主机的MAC地址,否则会得到下一个路由器的MAC地址
  2. ARP协议的工作原理可以分为两部分ARP请求和ARP响应
    首先源主机会通过广播发送一个ARP请求包,“我要与目标IP地址进行通信,谁知道它的MAC地址”。
    数据链路上的所有主机都会收到这个消息并检查自己的IP地址,如果与ARP请求中的IP地址一致,就会发送ARP响应包,“我就是,我的MAC地址是xxxx...”。
    下图描述了ARP协议的工作机制:
ARP工作机制
  1. 在实际使用过程中,每次向目标主机发送数据都使用ARP是很低效的,通常的做法是把获取到的MAC地址缓存一段时间。一般来说,一旦源主机向目标地址发送一个数据包,接下来多次发送的概率非常大,所以这种缓存命中率很高。
    当下一次发送ARP请求或超过缓存时间以后,缓存都会失效,这保证了即使目标IP地址与MAC地址对应关系即使发生了改变,数据包扔能被正确的发送到目标地址。
  2. IP地址负责标记发送方和接收方,而MAC地址负责传输过程中的分段传送,所以二者缺一不可。

三、NAT和NAPT技术

1. NAT(Network Address Translator)

NAT是一种将局域网中的私有IP地址转换为全局IP地址的技术。
在连接上路由器的时候,如果检查一下设备的IP地址,会发现是类似于192.168.1.1这样的IP地址。那不同网段中,IP地址都是192.168.1.1的主机该如何通信呢?
下图描述了NAT的工作原理:

NAT工作原理
局域网中IP地址为10.0.0.10的主机向全局IP地址为163.221.120.9的主机发送数据。NAT路由器将数据包IP首部中的源地址修改为自己的全局IP地址。同理,接收数据时,把目标地址202.224.174.37翻译为私有IP地址10.0.0.10

2. NAPT

路由器只有一个对外的全局IP地址,如果有多个内网主机都需要和外部通信怎么区分它们呢?这时就要用到NAPT技术了,它和NAT原理上类似,但它可以转换TCP和UDP端口号。
在使用NAPT技术是,不同的内网私有IP被转换为相同的全局IP地址,也就是路由器对外显示的全局IP地址,但是被附加不同的端口号加以区分:

NAPT工作原理

不管是NAT还是NAPT技术,都需要路由器内部维护一张自动生成的地址转换表。以TCP为例,建立TCP连接首次握手的SYN包发出时会生成这个表,关闭连接时会发出FIN包,收到这个包应答时,转换表会被删除。
具体的TCP和三次握手我们会在下一篇文章中具体讲解。

参考:
TCP/IP(三):IP协议相关技术

相关文章

  • http 图解

    web网络基础 tcp/ip协议族是什么? tcp/ip协议族是互联网相关协议集合的总称 tcp/ip分为几个层,...

  • 网络--TCP/IP(三)IP协议相关技术

    这篇文章我们简要介绍IP协议相关技术,下篇文章我们就会开始介绍这一系列教程的重点--传输层与TCP协议。这篇文章我...

  • TCP协议

    TCP/IP协议分层详解TCP/IP协议详解通俗易懂网络协议(TCP/IP概述)什么是TCP/IP协议?

  • TCP/IP网络模型、HTTP/HTTPS协议

    TCP/IP网络模型 TCP/IP 是互联网相关的各类协议族的总称,比如:TCP,UDP,IP,HTTP,FTP,...

  • 《图解 HTTP》 笔记(一)一些网络基本概念

    1. TCP/IP 协议 我们通常使用的网络都是在 TCP/IP 协议的基础上运作的。 TCP/IP 是互联网相关...

  • TCP/IP 网络协议 简记

    参考文档TCP/IP网络协议TCP/IP 协议 **************************** 常见协议...

  • 网络基础 TCP/IP

    TCP/IP 协议族 通常使用的网络是在 TCP/IP 协议族的基础上运行的,TCP/IP 是与互联网相关联的协议...

  • 《图解HTTP》

    网络基础TCP/IPTCP/IP协议族说法一:TCP/IP是指TCP和IP两种协议说法二:TCP/IP是在IP协议...

  • 你需要知道的TCP/IP

    前言 TCP/IP 协议 是网络通信的基石,TCP/IP 协议 不是只有 TCP 和 IP 协议,它是整个网络通信...

  • TCP/UDP、IP 、Socket、HTTP笔记

    1.1 TCP/IP协议组 TCP/IP协议(传输控制协议)由网络层的IP协议和传输层的TCP协议组成 IP层负责...

网友评论

      本文标题:网络--TCP/IP(三)IP协议相关技术

      本文链接:https://www.haomeiwen.com/subject/fkbxsxtx.html