- 8位生存时间: 一个数据报到达目的地的最大报文跳数,一般是64;每次经过一个路由,TTL 减 1,若一直减到0还没到达,那么就丢弃了,主要是用来防止出现路由循环。
关于报文分片问题
- 为什么要分片:下层的mtu限制了其所能接受报文的大小;
- 如何识别分片报文:分片报文的13位片偏移不为0,或3位标志中的更多分片位为1;
- 如何确定最后一个分片:该分片报文的片偏移量不为0但更多分片位为0;
- 如何组合分片报文:先根据16位标识聚合所有的分片报文,再按照片偏移大小进行升序排序;
- 如何发现丢包问题:起始片偏移+自身分片的长度为下一个分片的起始片偏移;
- 如何保证收到了所有的分片报文:开头没有丢失,中间没有丢失,收到了结尾报文。
网段划分
- DHCP技术:能够自动的给子网内新增主机节点分配IP地址,避免了手动管理IP的不便,一般的路由器都带有DHCP功能,因此路由器也可以看做一个DHCP服务器;
1)把所有IP地址分为五类
2)CIDR划分方案
- 引入子网掩码来区分网络号和主机号,子网掩码是一个32位的正整数,通常用一串 “0” 来结尾;将IP地址和子网掩码进行 “按位与” 操作, 得到的结果就是网络号;网络号和主机号的划分与这个IP地址是A类、B类还是C类无关;
- CIDR在一定程度上缓解了IP地址不够用的问题:提高了利用率,减少了浪费,但是IP地址的绝对上限并没有增加。
3)特殊的ip地址
- 将IP地址中的主机地址全部设为0-----网络号:代表这个局域网;
- 将IP地址中的主机地址全部设为1-----广播地址:用于给同一个链路中相互连接的所有主机发送数据包;
- 127.*的IP地址用于本机环回测试,通常是127.0.0.1。
4)解决ip不足的方法
- 动态分配IP地址:只给接入网络的设备分配IP地址,因此同一个MAC地址的设备,每次接入互联网中,得到的IP地址不一定是相同的;
- NAT技术:子网内的主机需要和外网进行通信时,路由器将IP首部中的IP地址替换成WAN口IP,这样逐级替换,最终数据包中的IP地址成为一个公网IP;
- IPv6:用16字节128位来表示一个IP地址。
ip数据包的传输过程
当IP数据包,到达路由器时,路由器会先查看目的IP(通过路由表)-----路由器决定这个数据包是能直接发送给目标主机,还是需要发送给下一个路由器-----依次反复,一直到达目标IP地址。
ICMP协议
1)功能
- 确认IP包是否成功到达目标地址;
- 通知在发送过程中IP包被丢弃的原因;
- ICMP基于IP协议工作的,但是它并不是传输层的功能;ICMP只能搭配IPv4使用,如果是IPv6的情况下,需要是用ICMPv6。
2)报文
- ICMP报文分为两类:一类是通知出错原因,一类是用于诊断查询。
NAT技术
1)是什么
- NAT能够将私有IP对外通信时转为全局IP;
- 在一个局域网内,如果有多个主机都访问同一个外网服务器,那么对于服务器返回的数据中,目的IP都是相同的;此时,NAT路由器无法判定将这个数据包转发给哪个局域网的主机,这时候NAPT使用IP+port来建立这个关联关系,这种关联关系也是由NAT路由器自动维护的。
2)缺陷
- 无法从NAT外部向内部服务器建立连接;
- 转换表的生成和销毁都需要额外开销;
- 通信过程中一旦NAT设备异常, 所有的TCP连接也都会断开。
3)NAT和代理服务器的的区别
- 从应用上讲,NAT设备是网络基础设备之一,解决的是IP不足的问题;代理服务器更贴近具体应用 比如通过代理服务器进行翻墙;
- 从底层实现上讲,NAT工作在网络层,直接对IP地址进行替换;代理服务器往往工作在应用层;
- 从使用范围上讲,NAT一般在局域网的出口部署;代理服务器可以在局域网做,也可以在广域网做,也可以跨网;
- 从部署位置上看,NAT一般集成在防火墙、路由器等硬件设备上;代理服务器则是一个软件程序,需要部署在服务器上。
- 广域网中的代理-----翻墙;局域网中的代理-----负载均衡。