转载部分

IP/DHCP/NAT/ICMP

2020-03-04  本文已影响0人  GGBond_8488
IP数据报

IP编址

IP分组:源地址(SA)-从哪儿来,目的地址(DA)-到哪儿去

接口(interface): 主机/路由器与物理链路的连接
1.实现网络层功能
2.路由器通常有多个接口
3.主机通常只有一个或两个接口 (e.g.,有线的以太网接口,无线的802.11接口)

IP地址: 32比特(IPv4)编号标识主机、路由器的接口
IP地址与每个接口关联
如何为接口分配IP接口

IP地址:
网络号(NetID) – 高位比特
主机号(HostID) – 低位比特

IP地址
IP子网

IP子网:
IP地址具有相同网络号的设备接口
不跨越路由器(第三及以上层网络设备)可以彼此物理联通的接口


私有网络IP地址

子网划分

IP地址:
网络号(NetID) – 高位比特
子网号(SubID) – 原网络主机号部分比特
主机号(HostID) – 低位比特


image.png
子网掩码

子网掩码确定是否划分了子网,利用多少位划分子网
形如IP地址: 32位, 点分十进制形式
取值:NetID、SubID位全取1,HostID位全取0
A网的默认子网掩码为:255.0.0.0
B网的默认子网掩码为:255.255.0.0
C网的默认子网掩码为:255.255.255.0
借用3比特划分子网的B网的子网掩码为:255.255.224.0

子网地址+子网掩码→准确确定子网大小

将IP分组的目的IP地址与子网掩码按位与运算,提取子网地址

目的IP地址:172.32.1.112,子网掩码:255.255.254.0



子网地址:172.32.0.0(子网掩码:255.255.254.0)
地址范围:172.32.0.0~172.32.1.255
可分配地址范围:172.32.0.1~172.32.1.254
广播地址:172.32.1.255

CIDR

无类域间路由(CIDR: Classless InterDomain Routing)

DHCP

一个主机如何获得IP地址?

默认网关:当前子网内数据报离开该子网时转发的接口(IP),这个接口所在路由器接入该子网的IP就是默认网关

• IP地址
• 子网掩码
• 默认网关地址
• DNS服务器名称与IP地址



四个255:受限广播地址
yiadrr:与分配给客户端地址为:223.1.2.4
第三次还是广播:可以告诉其他的DHCP服务器,收回他们所预分配的地址

DHCP协议在应用层实现
请求报文封装到UDP数据报中
IP广播
链路层广播(e.g. 以太网广播)

DHCP服务器构造ACK报文包括分配给客户的IP地址、子网掩码、默认网关、DNS服务器地址

NAT(网络地址转换)(工作在网络层涉及到了传输层)

动机:

实现:

NAT主要争议:

NAT穿透问题

客户期望连接内网地址为10.0.0.1的服务器

解决方案1: 静态配置NAT,将特定端口的连接请求转发给服务器
e.g., (138.76.29.7, 2500) 总是转发给(10.0.0.1, 25000)

解决方案2: 利用UPnP(Universal Plug and Play)互联网网关设备协议 (IGDInternet Gateway Device )自动配置:(自动化解决方案1)
学习到NAT公共IP地址(138.76.29.7)
在NAT转换表中,增删端口映射

解决方案3: 中继(如Skype)
NAT内部的客户与中继服务器建立连接
外部客户也与中继服务器建立连接
中继服务器桥接两个连接的分组

ICMP(互联网控制报文协议)

几种不发送 ICMP差错报告报文的特殊情况:

1.对ICMP差错报告报文不再发送 ICMP差错报告报文
2.除第1个IP数据报分片外,对所有后续分片均不发送ICMP差错报告报文
3.对所有多播IP数据报均不发送 ICMP差错报告报文
4.对具有特殊地址(如127.0.0.0 或 0.0.0.0)的IP数据报不发送ICMP 差错报告报文

几种 ICMP 报文已不再使用

1.信息请求与应答报文
2.子网掩码请求和应答报文
3.路由器询问和通告报文

IPV6

最初动机:32位IPV4地址分配殆尽
其他动机:改变首部格式

IPv6数据报格式:


校验和(checksum): 彻底移除,以减少每跳处理时间

选项(options): 允许,但是从基本首部移出,定义多个选项首部,通过“下一个首部”字段指示

ICMPv6: 新版ICMP
附加报文类型,e.g. “Packet Too Big”
多播组管理功能

一般形式: 1080:0:FF:0:8:800:200C:417A
压缩形式: FF01:0:0:0:0:0:0:43 压缩→FF01::43
IPv4-嵌入形式: 0:0:0:0:0:FFFF:13.1.68.3或 ::FFFF:13.1.68.3
地址前缀: 2002:43c:476b::/48(注: IPv6不再使用掩码!)
URLs: http://[3FFE::1:800:200C:417A]:8000

单播地址:一对一通信 1<->1
多播地址:一对多通信 1->n
任意播地址:一对一组之一 1->1/n

不可能在某个时刻所有路由器同时被更新为IPv6
 不会有 “标志性的日期”
 IPv4和IPv6路由器共存的网络如何运行?

隧道(tunneling): IPv6数据报作为IPv4数据报的载荷进行封装,穿越IPv4网络



上一篇 下一篇

猜你喜欢

热点阅读