tcp/ip --IP:网际协议

1.概述
     IP是TCP/IP协议族中最为核心的协议。所有的TCP,UDP,ICMP,IGMP数据都以IP数据报格式传输。
     IP提供不可靠,无连接的数据报传送服务。
  • 不可靠:它不能保证IP数据报能成功的到达目的地。
  • 无连接:IP并不维护关于后续数据报的状态信息。每个数据报的处理都是相互独立的。
2.IP数据报
     IP数据报的格式如图所示,普通的IP数据报首部为20个字节,除非含有选项字段。
  • 版本号:目前的版本号为4,即IPv4
  • 首部长度:指的是首部占32bit字的数目,包括选项长度
  • 服务类型(TOS):(现在大多数的TCP/IP实现不支持TOS特性)4bit的TOS分别代表:最小延迟,最大吞吐量,最高可靠性和最小费用。4bit只能置其中1bit,如果4bit均为0,则为一般服务。
  • 总长度字段:整个IP数据报的长度,以字节为单位。总长度是IP首部中必要的内容
  • 标识字段:唯一地标识主机发送的每一份数据报。
  • 标志字段:会在IP分片和重组的时候使用到。标志字段的最低位记为MF,中间的一位记为DF。MF=1表示后面还有分片。DF=0时,才能进行分片。
  • TTL(time-to-live):设置了数据可以经过的最多的路由器数,每经过一次路由器,该值-1.
  • 首部检验和:是根据IP首部计算的检验和码。
  • 源地址:
  • 目的地址:
  • 任选项:(一般没有)包括以下内容
    • 安全和处理限制
    • 记录路径(每个路由器都记录它的IP地址)
    • 时间戳
    • 宽松的源站选路
    • 严格的源站选路
3.IP路由选择(见TCP/IP详解学习(6)-- IP选路)
     路由表:
          路由表项:包括5bit标志,目的IP地址(主机,网络,默认),下一站路由的IP地址(间接路由)或者本地接口的我IP地址(直接路由)及指向本接口的指针。
          路由表中的每一项都包含下面这些信息:
    • 目的IP地址。可以是完整的主机地址,也可以是网络地址,由标志字段来指定
    • 下一站(或者下一跳)路由器的IP地址。
    • 标志。其中一个标志指明目的IP地址是网络地址还是主机地址,另一个标志指明下一站路由器是否为真的下一站路由器,还是一个直接相连的接口。
    • 为数据报的传输指定一个网络接口。
     IP路由选择主要完成以下功能:
  • 搜索路由表,寻找能与目的IP地址完全匹配的表目。
  • 搜索路由标,寻找能与网络号相匹配的表目。
  • 搜索路由表,寻找标为默认的表目
4.IP地址
     如今的IP网络使用32位地址,以点分十进制表示,如192.168.0.1。
     地址格式为:IP地址=网络地址+主机地址 或 IP地址=网络地址+子网地址+主机地址。
     根据用途和安全性级别的不同,IP地址还可以大致分为两类:公共地址和私有地址。公用地址在Internet中使用,可以在Internet中随意访问。私有地址只能在内部网络中使用,只有通过代理服务器才能与Internet通信。
 
5.IP地址分类
  • 网络号
          用于识别主机所在的网络;
  • 主机号
          用于识别该网络中的主机。
  • IP地址分为五类,A类保留给政府机构,B类分配给中等规模的公司,C类分配给任何需要的人,D类用于组播,E类用于实验,各类可容纳的地址数目不同。
            A、B、C三类IP地址的特征:当将IP地址写成二进制形式时,A类地址的第一位总是0,B类地址的前两位总是10,C类地址的前三位总是110。
  • A类地址
(1)A类地址第1字节为网络地址,其它3个字节为主机地址。它的第1个字节的第一位固定为0.
(2)A类地址范围:1.0.0.1---126.255.255.254
(3)A类地址中的私有地址和保留地址:
① 10.X.X.X是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址)。
范围(10.0.0.1---10.255.255.254)
② 127.X.X.X是保留地址,用做循环测试用的。
  • B类地址
(1) B类地址第1字节和第2字节为网络地址,其它2个字节为主机地址。它的第1个字节的前两位固定为10.
(2) B类地址范围:128.0.0.1---191.255.255.254。
(3) B类地址的私有地址和保留地址
① 172.16.0.0---172.31.255.254是私有地址
② 169.254.X.X是保留地址。如果你的IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器。就会得到其中一个IP。
191.255.255.255是广播地址,不能分配。
  • C类地址
(1)C类地址第1字节、第2字节和第3个字节为网络地址,第4个字节为主机地址。另外第1个字节的前三位固定为110。
(2)C类地址范围:192.0.0.1---223.255.255.254。
(3) C类地址中的私有地址:
192.168.X.X是私有地址。(192.168.0.1---192.168.255.255)
  • D类地址
(1) D类地址不分网络地址和主机地址,它的第1个字节的前四位固定为1110。
(2) D类地址范围:224.0.0.1---239.255.255.254
  • E类地址
(1) E类地址不分网络地址和主机地址,它的第1个字节的前四位固定为1111。
(2) E类地址范围:240.0.0.1---255.255.255.254
IP地址如果只使用ABCDE类来划分,会造成大量的浪费:一个有500台主机的网络,无法使用C类地址。但如果使用一个B类地址,6万多个主机地址只有500个被使用,造成IP地址的大量浪费。因此,IP地址还支持VLSM技术,可以在ABC类网络的基础上,进一步划分子网。
  • 掩码
     为了标识IP地址的网络部分和主机部分,要和地址掩码(Address Mask)结合,掩码跟IP地址一样也是32 bits,用点分十进制表示。IP地址网络部分对应的掩码部分全为“1”,主机部分对应的掩码全为“0”。
     缺省状态下,如果没有进行子网划分,A类网络的子网掩码为255.0.0.0,B类网络的子网掩码为255.255.0.0,C类网络的子网掩码为255.255.255.0。利用子网,网络地址的使用会更加有效。
     有了子网掩码后,IP地址的标识方法如下:
     例:192.168.1.1 255.255.255.0或者标识成192.168.1.1/24(掩码中“1”的个数)
6.特殊的IP地址
  • 组播地址
     在IP地址空间中,有的IP地址不能为设备分配的,有的IP地址不能用在公网,有的IP地址只能在本机使用,诸如此类的特殊IP地址众多:注意它和广播的区别。从224.0.0.0到239.255.255.255都是这样的地址。224.0.0.1特指所有主机, 224.0.0.2特指所有路由器。
  • 169.254.x.x
     主机使用了DHCP功能自动获得一个IP地址。
  • 受限广播地址
     广播通信是一对所有的通信方式。若一个IP地址的2进制数全为1,也就是255.255.255.255,则这个地址用于定义整个互联网。如果设备想使IP数据报被整个Internet所接收,就发送这个目的地址全为1的广播包,但这样会给整个互联网带来灾难性的负担。因此网络上的所有路由器都阻止具有这种类型的分组被转发出去,使这样的广播仅限于本地网段。
  • 直接广播地址
     一个网络中的最后一个地址为直接广播地址,也就是HostID全为1的地址。主机使用这种地址把一个IP数据报发送到本地网段的所有设备上,路由器会转发这种数据报到特定网络上的所有主机。
  • NetID为0的
     当某个主机向同一网段上的其他主机发送报文时就可以使用这样的地址,分组也不会被路由器转发。
  • 环回地址
      127网段的所有地址都称为环回地址,主要用来测试网络协议是否工作正常的作用。比如使用ping环回地址127.0.0.1就可以测试本地TCP/IP协议是否已正确安装。另外一个用途是当客户进程用环回地址发送报文给位于同一台机器上的服务器进程,来测试服务是否正常启动。
  • 专用地址
      IP地址空间中,有一些IP地址被定义为专用地址,这样的地址不能为Internet网络的设备分配,只能在企业内部使用,因此也称为私有地址。
     这些专有地址是:
10/8 地址范围:10.0.0.0到10.255.255.255 共有2的24次方个地址
172.16/12 地址范围:172.16.0.0至172.31.255.255 共有2的20次方个地址
192.168/16 地址范围:192.168.0.0至192.168.255.255 共有2的16次方个地址
原文地址:https://www.cnblogs.com/saryli/p/5309625.html