IPv4基础知识

IPv4基础知识

IPv4地址

IPv4地址长度32位,四字节。IPv4地址包含网络号和主机号。

  • 网络号:唯一的标识了一条物理链路或逻辑链路,对于该链路相连的所有设备来说网络号部分是共同的。
  • 主机号:唯一标识了该链路上连接的具体设备。

1.按照主机数量分类

大型网络 A类网络 包含大量主机的网络。大型网络数量少
中型网络 B类网络 包含中等主机的网络。中型网络数量中等
小型网络 C类网络 包含少量主机的网络。小型网络数量多

A类地址—-首个八位组第一位总是被设置为0。0被作为缺省地址部分,127被保留为内部回送地址。—十进制范围1~126.

B类地址—-总是把左边前两位设置为01。—十进制范围128~191

C类地址-总是把左边前三位设置为110。—十进制范围192~223

保留地址包括:

10.0.0.0-10.255.255.255

172.16.0.0-172.31.255.255

192.168.0.0-192.168.255.255

在这里插入图片描述

2.地址掩码

地址掩码:表示整个数据链路的地址(其实就是网络号)

在这里插入图片描述

对于每一位IPv4地址位,设备都拿它与地址掩码的对应位进行布尔(AND 与)运算。通过向接口分配地址172.16.1.1 和掩码255.255.0.0.设备将会知道接口属于172.16.0.0.

3.子网和子网掩码

每个数据链路都必须有一个唯一的地址。所以用尽所有的IPv4地址,也只能给少于1700万个数据链路分配地址。

假如分配给网络的地址为B类地址172.21.0.0。五个数据链路将主机和路由器互联起来。将地址掩码设置为24位,被扩展了8位。

现在IPv4地址包括:网络部分,子网部分,主机部分。地址掩码变为子网掩码。

不是所有路由选择协议都支持子网地址。一些协议不能区别全0子网和主网络号,例如子网0 172.21.0.0 和主网IP地址 172.21.0.0

有类别路由选择协议也不能区分全1子网的广播地址和一个所有子网的广播地址。例如:全1子网172.21.255.0其广播地址172.21.255.255,;但是这也是主网172.21.0.0的所有子网上所有主机的广播地址。

子网划分正确表述“一个使用8位进行子网划分的B类地址”or“带有24位掩码的B类地址”

4.打破八位组界线

每次可以借任意位成为子网

在这里插入图片描述

5.IPv4报文

在这里插入图片描述

  • version—–指明IP版本号为4.这个字段长度为4位
  • Internet Header Length—指明在IPv4包头中以4字节为单位的块的数量。这个字段的长度是4位。因为一个IPv4报头的最小长度是20字节,所以IHL字段对的最小值为5.IPv4选项可以通过增加4字节来扩展最小的IPv4报头的长度。如果一个IPv4选项没有用完IPv4选项字段中所有的4个字节,剩下的字节将填充为0,以使得整个IPv4报头保持32位(4字节)的整数倍。当这个字段为最大值0xF时,IPv4报头包括了选项的最大长度是60(15×4)。
  • Type of service——指明了这个包在IPv4网络上通过路由器传输时,希望得到的服务类型。这个字段的长度为8位,它包含了优先、延迟、吞吐量和可靠性特征。
  • Total Length—–指明了IPv4包的全部长度(IPv4报头和IPv4有效载荷)并且不包括链路层的帧。这个字段的长度是16位,它标明了IPv4包的最大长度是65535字节。
  • Identification—–识别特殊的IPv4包。这个字段的长度是16位。识别字段在IPv4包的远端是可以选择的。如果IPv4包是分割开的,那么所有分片中将保留识别字段以便目的节点能够重新组装这些分片。
  • Flags—–标志用在分割处理时。这个字段的长度是3位,然而只有其中两位为当前使用所定义。有两个标志—–一个指明了IPv4包是否被分割,另一个指明了是否还有更多的分片在当前帧之后。
  • fragment offset——指明了分片相对于最初的IPv4有效载荷中偏移的位置。这个字段的长度是13位。
  • Time to Live—–指明了IPv4包在被丢弃之前能够通过的最大连接数。这个字段的长度是8位。生存期字段被用来作为时间计数器,根据消耗的TTL一个IPv4路由器确定了IPv4包向前传送要求的必要时间(秒)。q当TTL等于0时一个ICMP超时( Time Expired)报文将被传送到源IPv4地址,并且这个包会被丢弃。
  • Protocol——指明了高层协议。这个字段是8位。例如TCp使用的协议为6,UDP使用的协议为17,ICMP使用的协议时1.Protocol字段是用来把一个IPv4包进行多路分解到高层协议。
  • Header checksum——提供了只是对于IPv4头部的校验。这个字段的长度为16位。IPv4的有效载荷不包括这个校验计算作为有效载荷,他通常是包含自己的校验。每个IPv4节点接受到IPv4就检查其IPv4头部校验,如果校验检查失败就把这个IPv4包丢弃。当路由器向前传送一个IPv4包就一定会消耗TTL。因此在源站和目的站之间的每一跳,他头部校验都会被重新计算一次。
  • Source Address——-保存源主机的IPv4地址。32位
  • Destination Address—–保存目的端主机的IPv4地址。32位
    dress——-保存源主机的IPv4地址。32位
  • Destination Address—–保存目的端主机的IPv4地址。32位
  • Options——保存一个或者更多的IPv4选项。这个字段的长度是32位的倍数。如果IPv4的选项没有用到32位,必须将其填充到32位,以保持IPv4头是4字节块的整数倍,以便Internet Header Length字段对其进行说明。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100128.html原文链接:https://javaforall.net

(0)
上一篇 2021年4月14日 上午8:00
下一篇 2021年4月14日 下午12:00


相关推荐

  • pycharm2021.12.4最近激活码【中文破解版】

    (pycharm2021.12.4最近激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html41MD9IQHZL-eyJsaWNlbnNlSW…

    2022年3月30日
    46
  • PyCharm激活码永久有效PyCharm2021.3.2激活码教程-持续更新,一步到位

    PyCharm激活码永久有效PyCharm2021.3.2激活码教程-持续更新,一步到位PyCharm激活码永久有效2021.3.2激活码教程-Windows版永久激活-持续更新,Idea激活码2021.3.2成功激活

    2022年6月19日
    112
  • pytest的使用_java中方法的调用

    pytest的使用_java中方法的调用Pytest执行用例规则Pytest在命令行中支持多种方式来运行和选择测试用例1.对某个目录下所有的用例pytest2.对模块中进行测试pytesttest_mod.py3.对文件夹进行

    2022年7月30日
    9
  • quartz定时任务cron表达式详解

    quartz定时任务cron表达式详解cron 表达式用于配置 cronTrigger 的实例 cron 表达式实际上是由七个子表达式组成 这些表达式之间用空格分隔 1 Seconds 秒 2 Minutes 分 3 Hours 小时 4 Day of Month nbsp 天 5 Month 月 6 Day of Week 周 7 Year 年 例 0012 WED 意思是 每个星期三的中午 12 点执行

    2026年3月17日
    2
  • CentOS7安装Oracle11G完整版图文教程

    CentOS7安装Oracle11G完整版图文教程系统环境:CentOSLinuxrelease7.4.1708(Core)Oracle版本:OracleDatabase11gR2注意事项:安装的过程可能遇到假死现象,直接回车即可如果遇到中文乱码:新建一个目录,上传字体包zysong.ttf到新建的目录,命令如下:#mkdir–p/usr/share/fonts/zh_CN/TrueType#cd/usr…

    2022年5月29日
    80
  • pip常用命令以及升级方法

    pip常用命令以及升级方法pip常用命令以及升级方法使用python时经常使用到pip命令,可以方便安装python的各种第三方库1:查看pip打开cmd窗口,输入pip命令,会显示pip所有的参数使用方法如果输入pip提示Didnotprovideacommand,可能是没有配置环境变量导致的,也可能系统安装有多个pip2:查看pip的安装路径wherepip3:查看pip版本pip-V(注意V要大写)4:pip升级方法安装python第三方包时,会有pip版本的提示方法一:输入pipin

    2022年6月4日
    60

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号