IP知识点

目录

IP基本认识:

IP的作用:

IP和MAX的区别:

IP地址基本知识:

IP地址定义:

IP地址分类:

广播:

 无分类IP地址

 网络号和主机号为什么要分离?

 公有 IP 地址与私有 IP 地址

IP 地址与路由控制

IP 分片与重组

IPv6 基本认识

IPv4 首部与 IPv6 首部区别

IP 协议相关技术

DNS

 域名解析工作流程:

ARP

RARP协议

DHCP协议   

NAT协议

ICMP

 IGMP


IP基本认识:

IP 在 TCP/IP 参考模型中处于第三层,也就是网络层

网络层的主要作用是:实现主机与主机之间的通信,也叫点对点(end to end)通信。

IP的作用:

在复杂网络环境中,将数据包发送给最终目的的主机。

IP和MAC的区别:

IP处于网络层,MAC处于数据链路层。IP的作用是主机之间通信,MAC是实现直连的两个设备之间通信,IP负责在两个没有直连的两个网络之间进行通信。

IP地址基本知识:

IP地址定义:

TCP/IP网络通信时,为了保证正常通信,每个设备都需要配置正确的IP地址。

IP 地址(IPv4 地址)由 32 位正整数来表示,IP 地址在计算机是以二进制的方式处理,采用点分十进制的标记方式。

         最大允许43亿台计算机连接到网络,IP地址根据网卡数据配置的,服务器、路由器是由2个以上的网卡,也就是说会有两个以上的IP地址。

        43亿IP是不够用的,引入NAT技术,使得连接最大数可以超过43亿。

IP地址分类:

 A、B、C类地址主要分为两个部分,分别是网络号和主机号。

 (最大主机数计算方法:2的主机号次方-2:去掉全为0和全为1的两个地址号)

 全为0:指定某一个网络,全为1:指定某个网络下的所有主机,用于广播。

广播:

同一个链路中相互连接的主机之间发送数据包。(主机部分全部改成1)

本地广播(在本网络内广播):广播地址的IP包会被路由器屏蔽。 192.168.0.0/24

直接广播(不同网络之间的广播):192.168.0.0/24  to 192.168.1.255/24 发IP包,192.168.1.0/24会收到转发,然后转发给192.168.1.1-255/24 所有主机。存在一定安全问题。 

D、E类地址:没有主机号,不可用于主机IP,D类用于多播,E类是预留的分类。

多播:多播用于将包发送给特定组内的所有主机。前四位是 1110 就表示是多播地址。可穿透路由器。

地址分类方便分类网络地址、主机地址。

 无分类IP地址

        解决,不能很好的与现实网络匹配(c类地址包含最大主机数量太少254,b类地址太多),缺少选地址灵活性。

        CIDR没有分类地址概念,32biteIP地址被分成两部分,前面是网络号,后面是主机号。

子网掩码:掩盖掉主机号,用于划分网络号和主机号 。

还可以子网划分,将主机地址分为两个部分:子网网络地址和子网主机地址。

 网络号和主机号为什么要分离?

        两个计算机通信,首先判断网络号是否相同,如果相同说明在同一个网络上,可以把数据包直接发送到目标主机。路由器寻址工作,也是通过找到网络号,进而把数据包转发给对应网络。

        路由器只要一看到IP地址的网络号就可以转发。

 公有 IP 地址与私有 IP 地址

        A、B、C分类地址,有公有IP和私有IP地址,私有IP允许组织内部IT人员自己管理,自己分配且可重复,公有 IP 地址是有个组织统一分配的,由ICANN 组织管理,中国是由 CNNIC 的机构进行管理。

IP 地址与路由控制

IP地址的网络地址这一部分是用于进行路由控制。

        路由控制表记录着网络地址与下一步应该发送至路由器的地址。在主机和路由器上都有各自的路由器控制表。

        发送IP包,首先确定IP包首部中的目标地址,再由路由器表中找到与该地址具有相同网络地址的记录,根据该记录将IP包发给相应的下一个路由器。

IP 分片与重组

常见数据链路以太网,其链路最大传输单元MTU是1500字节。

IP数据包大于MTU时,IP数据包就会被分片。路由器不重组,只会在目标主机上重组。

IPv6 基本认识

        IPV4是32位,大概42亿个IP地址;IPV6是128位,地址更多。相比于IPV4有更好的安全性和扩展性,可以带来更好的网络体验。

        IPV4 和 IPV6不能兼容。

IPV6优点:

        没有DHCP也可以实现自动分配IP地址,非常便捷,即插即用。

        去掉了包头检验,简化了首部结构,提高了传输新能。

        应对IP伪造网络安全功能以及防止线路窃听,提升了安全性。

IPV6标识方法:

        IPv4 地址长度共 32 位,是以每 8 位作为一组,并用点分十进制的表示方式。

        IPv6 地址长度是 128 位,是以每 16 位作为一组,每组用冒号 「:」 隔开。

IPV6地址的结构:

        通过 IP 地址的前几位标识 IP 地址的种类。单播、组播、任播。

  • 在同一链路单播通信,不经过路由器,可以使用链路本地单播地址,IPv4 没有此类型
  • 在内网里单播通信,可以使用唯一本地地址,相当于 IPv4 的私有 IP
  • 在互联网通信,可以使用全局单播地址,相当于 IPv4 的公有 IP

IPv4 首部与 IPv6 首部区别

       取消了首部校验和字段:因为在数据链路层和传输层都会检验,IPV6直接取消了

       取消了分片/重新组装相关字段: 分片和重组操作由IPv4协议的中间路由器执行,IPV6不允许中间路由器执行分片与重组,这种操作只能在源主机和目标主机下,大大提高了路由器转发速度,但是IPV6的最大传输单元大MTU

        取消选项字段:

IP 协议相关技术

DNS

        域名网址自动转换为具体的 IP 地址,用句点来分隔的,比如 www.server.com,这里的句点代表了不同层次之间的界限,越靠右的位置表示其层级越高

 域名解析工作流程:

  1. 客户端首先查看本地缓存:输入网址www.server.com之后,浏览器首先查看本地缓存是否有该域名对应IP地址,有则直接返回。没有则查询本地DNS服务器。
  2. 客户端查询本地DNS服务器:客户端发送DNS请求给本地DNS服务器(也就是客户端的TCP/IP设置中填写的 DNS服务器地址)。本地DNS服务器收到请求后,查询缓存里是否有 www.server.com,有则直接返回 IP 地址。如果没有,本地 DNS服务器会向根域名服务器发送DNS请求。
  3. 本地DNS服务器发送请求给根DNS服务器:根域DNS服务器是最高层次的,不直接用于域名解析,但可以查询顶级域DNS服务器IP地址。根 DNS 收到来自本地 DNS 的请求后,发现后置是 .com,返回 .com 顶级域名服务器IP地址
  4. 本地DNS服务器发送请求给顶级域DNS服务器:本地 DNS 收到顶级域名服务器的地址后,给顶级域DNS服务器发起请求查询 www.server.com 的 IP 地址,顶级域名服务器返回负责 www.server.com 区域的权威域 DNS 服务器的IP地址。
  5. 本地DNS服务器发送请求给权威域DNS服务器:本地 DNS 发送请求给权威 DNS 服务器,权威域DNS服务器返回www.server.com 的 IP 地址。
  6. 本地 DNS 再将 IP 地址返回客户端,客户端和目标建立连接。

 DNS查询方式:迭代和递归(一般是迭代轻松) 

ARP

        ARP 协议,Address Resolution Protocol,地址解析协议,它是用于实现 IP 地址到 MAC 地址的映射。

        传输一个IP数据报的时候,确定了源IP地址和目标IP后,就会通过主机的路由表确定IP数据包的下一跳,网络层的下一层是数据链路层,还要知道下一跳的MAC地址。

        由于主机路由表中可以找到下一跳的IP地址,ARP是用来找下一跳的MAC地址。

  1. 首先,每台主机都会在自己的 ARP 缓冲区中建立一个 ARP 列表,以表示 IP 地址和 MAC 地址的对应关系。
  2. 当源主机需要将一个数据包要发送到目的主机时,会首先检查自己的 ARP 列表,是否存在该 IP 地址对应的 MAC 地址;如果有﹐就直接将数据包发送到这个 MAC 地址;如果没有,就向本地网段发起一个 ARP 请求的广播包,查询此目的主机对应的 MAC 地址。此 ARP 请求的数据包里,包括源主机的 IP 地址、硬件地址、以及目的主机的 IP 地址。
  3. 网络中所有的主机收到这个 ARP 请求后,会检查数据包中的目的 IP 是否和自己的 IP 地址一致。如果不相同,就会忽略此数据包;如果相同,该主机首先将发送端的 MAC 地址和 IP 地址添加到自己的 ARP 列表中,如果 ARP 表中已经存在该 IP 的信息,则将其覆盖,然后给源主机发送一个 ARP 响应数据包,告诉对方自己是它需要查找的 MAC 地址。
  4. 源主机收到这个 ARP 响应数据包后,将得到的目的主机的 IP 地址和 MAC 地址添加到自己的 ARP 列表中,并利用此信息开始数据的传输。如果源主机一直没有收到 ARP 响应数据包,表示 ARP 查询失败。

RARP协议

MAC地址转IP地址,打印机等小型嵌入式设备接入到网络。

        通常这需要架设一台 RARP 服务器,在这个服务器上注册设备的 MAC 地址及其 IP 地址。然后再将这个设备接入到网络,接着:        

  • 该设备会发送一条「我的 MAC 地址是XXXX,请告诉我,我的IP地址应该是什么」的请求信息。
  • RARP 服务器接到这个消息后返回「MAC地址为 XXXX 的设备,IP地址为 XXXX」的信息给这个设备。

DHCP协议   

电脑通常都是通过 DHCP 动态获取 IP 地址,大大省去了配 IP 信息繁琐的过程。

DHCP 客户端进程监听的是 68 端口号,DHCP 服务端进程监听的是 67 端口号。

DHCP工作的四个步骤:

        1. 客户端首先发起DHCP发现报文的IP数据报,客户端没有IP地址,所以使用的是UDP的广播通信,广播目的地址是255.255.255.255(端口67)并且使用0.0.0.0(端口68)作为源IP地址。DHCP 客户端将该 IP 数据报传递给链路层,链路层然后将帧广播到所有的网络中设备。

        2. DHCP服务器收到DHCP发现报文时,用DHCP提供报文向客户端做出响应。该报文任然使用IP广播地址255.255.255.255,该报文信息携带服务器提供可租约的IP地址、子网掩码、默认网关、DNS服务器以及IP地址租用期。

        3. 客户端收到一个或多个服务器的DHCP提供报文后,从中选择一个服务器,并向选中的服务器发送DHCP请求报文进行响应,回显配置信息的参数。

        4. 服务端用DHCP ACK报文对DHCP请求报文进行响应,应答所要求的参数。

        一旦客户端收到 DHCP ACK 后,交互便完成了,并且客户端能够在租用期内使用 DHCP 服务器分配的 IP 地址。

NAT协议

        (网络地址转换Network Address Translation)将本地地址转换成全球IP地址,缓解IPV4地址耗尽的问题。

        NAT就是同个公司、家庭、教室内的主机对外部通信时,把私有IP地址转换成公有IP地址。可以把IP地址+端口号一起进行转换。这样,就用一个全球IP地址就可以了,这种转换技术叫网络地址与端口转换NAPT。

  例子:两个客户端 192.168.1.10 和 192.168.1.11 同时与服务器 183.232.231.172 进行通信,并且这两个客户端的本地端口都是 1025。此时,两个私有 IP 地址都转换 IP 地址为公有地址 120.229.175.121,但是以不同的端口号作为区分。生成一个 NAPT 路由器的转换表,就可以正确地转换地址跟端口的组合,令客户端 A、B 能同时与服务器之间进行通信。

        转换表会在NAT路由器上自动生成,在TCP的情况下,建立TCP连接首次握手时的SYN包一经发出,就会生成这个表。而后又随着收到关闭连接时发车FIN包的确认应答从表中被删除。

NAT缺点:

  • 外部无法主动与 NAT 内部服务器建立连接,因为 NAPT 转换表没有转换记录。
  • 转换表的生成与转换操作都会产生性能开销。
  • 通信过程中,如果 NAT 路由器重启了,所有的 TCP 连接都将被重置。

解决:

第一种就是改用 IPv6

第二种 NAT 穿透技术

ICMP

        (Internet Control Message Protocol) ,网际控制报文协议,介于IP层和TCP层之间的协议,一般认为属于IP层协议。

ICMP 主要的功能包括:确认 IP 包是否成功送达目标地址、报告发送过程中 IP 包被废弃的原因和改善网络设置等。

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

ICMP分类:

1. 用于诊断的查询消息,也就是查询报文类型;

2. 通知出错原阴的错误消息,差错报文类型。

 IGMP

IGMP 是因特网组管理协议,工作在主机(组播成员)和最后一跳路由之间

        IGMP报文向路由器申请加入和退出组播组,默认情况下由路由器是不回转发组播包到连接中的主机,除非通过IGMP加入到组播组,主机申请加入到组播组时,路由器就会记录IGMP路由器表,路由器表后续会转发组播到对应主机。

  • IGMP 报文采用 IP 封装,IP 头部的协议号为 2,而且 TTL 字段值通常为 1,因为 IGMP 是工作在主机与连接的路由器之间。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值