你的位置:首页 > 操作系统

[操作系统]图解 TCP/IP  笔记2


图解 TCP/IP  笔记2 

4.4.1 IP 地址与路由控制

 

4.4.2 路由控制表的聚合

 

4.5 IP分割处理与再构成处理

 

4.5.1 数据链路不同,MTU则相异

 

4.5.2 IP报文的分片与重组

经过分片之后的IP数据报在被重组的时候,只能由目标主机进行。路由器虽然做分片但不会进行重组。

4.5.3 路径MTU发现

 

第五章 IP 协议相关技术

5.1 仅凭IP无法完成通信

 

5.2 DNS 

domain name system

DNS 可以将那串字符串自动转换成为具体的IP地址。

5.2.1 IP地址不便记忆

系统必须自动将主机名转换为具体的IP地址。主机往往会利用一个叫做hosts的数据库文件。

 

5.2.2 DNS的产生

那就是DNS系统。在这个系统中主机的管理机构可以对数据进行变更和设定。它可以维护一个用来表示组织内部主机名和IP地址之间对应关系的数据库。

5.2.3 域名的构成

域名是指为了识别主机名称和组织机构名称的一种具有分层的名称

域名服务器

域名服务器是指管理域名的主机和相应的软件,它可以管理所在分层的域的相关信息。其所管理的分层叫做ZONE。

解析器 resolver 

进行DNS查询的主机和软件叫做DNS解析器。用户所使用的工作站或个人电脑都属于解析器。一个解析器至少要注册一个以上域名服务器的IP地址。

5.2.4 DNS查询

 

5.2.5 DNS如同互联网中的分布式数据库

DNS是一种通过主机名检索IP地址的系统。然而,它所管理的信息不仅仅是这些主机名跟IP地址之间的映射关系。它还要管理众多其他信息。

 

5.3 ARP

在底层数据链路层,进行实际通信时却有必要了解每个IP地址所对应的MAC地址。

5.3.1 ARP概要

以目标IP地址为线索,用来定位下一个应该接受数据分包的网络设备对应的MAC地址。如果目标主机不在同一个链路上时,可以通过ARP查找下一跳路由器的MAC地址。

5.3.2 APR工作机制

ARP是借助ARP请求与APR响应两种类型的包确定MAC地址的。

从一个IP地址发送ARP请i以了解其MAC地址,目标地址将自己的MAC填入其中的APR响应包返回到IP地址。

根据ARP 可以动态的进行地址解析,因此,在TCP/IP 的网络构造和网络同喜那种无需事先知道MAC地址究竟是什么,只要有IP地址即可。

 

5.3.3 IP地址和MAC地址缺一不可?

 

5.3.4 RARP

reverse address resolution protocol 是将ARP反过来,从MAC地址定位IP地址的一种协议。

平常我们可以通过个人电脑设置ip 地址,也可以通过DHCP dynamic host configuration protocol 自动分配获取IIP地址。然而对于使用嵌入式设备,会遇到没有任何输入接口或无法通过DHCP动态获取IP地址的情况。

在类似情况下,就可以使用RAPR。为此,需要架设一台RAPR服务器,从而在这个服务器上注册设备的MAC地址以及IP地址。然后再将这个设备接入到网络,插电启动设备。该设备会发送一条"我的MAC地址是。。。请告诉我的IP地址是什么"的请求信息。RAPR 服务器接受到这个消息后返回类似于 "mac 地址为***的设备,IP 地址为。。。"的信息给这个设备。而设备就根据从RARP 服务器所收到的应答信息设置自己的IP地址。

 

5.3.5 代理ARP

通常ARP包会被路由器隔离,但是采用代理ARP proxy ARP 的路由器可以将ARP 请求转发给邻近的网段。由此,两个以上网段的节点之间可以像在同一个网端上进行通信。

 

5.4 ICMP

5.4.1 辅助IP的ICMP

架设IP网络时需要特别注意两点: 确认网络是否正常工作,以及遇到异常时进行问题诊断。

如果通信中如果某个IP包因为某种原因未能达到目标地址,那么这个具体的原因将由ICMP负责通知。

 

5.4.2 主要的ICMP消息

1。ICMP目标不可达

destination unreachable message的ICMP

 

2.ICMP重定向消息

如果路由器发现发送端主机使用了次优的路径发送数据,那么它会返回一个ICMP重定向ICMP 的消息给这个主机。这个消息中包含了最合适的路由信息和源数据。

不过,多数情况下,由于这种重定向消息成为引发问题的原因,所以往往不进行这种设置。

ICMP 超时消息

ICMP超时消息

IP包种有一个字段叫做TTL time to live ,它的值随着每讲过一次路由器就会减1,知道见到0时该IP包会被丢弃。此时,IP路由器将会发送一个ICMP超时的消息。

方便易用的traceroute 

它可以显示出由执行程序的主机到达特定主机之前历经多少路由器。它的原理就是利用IP包的生存期限从1开始按照顺序递增的同时发送UDP包,强制接受ICMP超时消息的一种方法。

traceroute 的具体用法是 

traceoute 目标主机地址

3. ICMP回送消息 

用于进行通信的主机或路由器之间,判断所发送的数据包是否已经成功到达对端的一种信息。可以向对端主机发送回送请求的消息 ICMP echo request message ,也可以接受对端主机发送回来的会送应答消息 ICMP Echo Reply Message 。

5.4.3 其他ICMP消息

5.4.4 ICMPv6

5.5 DHCP

5.5.1 DHCP实现即插即用

 

5.5.2 DHCP工作机制

使用DHCP之前,首先要架设一台DHCP服务器。然后将DHCP 所要分配的IP地址设置到服务器上。此外,还需要将相应的子网掩码、路由控制信息以及DNS服务器的地址等设置到服务器上。

为了检查所要分配的IP地址以及已经分配了的IP地址是否可用,DHCP服务器或DHCP客户端必须具备以下功能 :

DHCP 服务器 

在分配IP地址前发送ICMP回送请求包,确认没有返回应答。

DHCP 客户端

针对从DHCP 哪里获得IP地址发送ARP请求包,确认没有返回应答。

5.5.3 DHCP中继代理

家庭网络中只有一个以太网的网段。因此,只要有一台DHCP服务器就足以应对IP地址分配的需求,而大多数情况下都由宽带路由器充当这个DHCP的角色。

 

5.6 NAT

5.6.1 NAT定义

network address translator 是用于在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址的技术。除转换IP地址外,还出现了可以转换TCP、UDP端口号的NAPT network address ports translator 技术,由此可以实现用一个全局IP地址与多个主机的通信。

5.6.2 NAT的工作机制

在NAT路由器的内部,有一张自动生成的用来转换地址的表。

 

其实不知道

5.6.3 NAT-PT(NAPT-PT)

5.6.4 NAT的潜在问题

5.6.5 解决NAT的潜在问题与NAT穿越

5.7 IP隧道