网络层实现数据包的选路和转发。WAN(广域网)通常使用众多分级的路由器来连接分散的主机或LAN(局域网),因此通信的两端通常不是直接相连的,而是通过多个中间节点(路由器)连接的。
    网络层的任务就是选择这些中间节点,以确定两台主机之间的通信路径。同时,网络层对上层协议隐藏了网络连接的细节,使得在传输层和网络应用程序看来,通信的双方是直接相连的。     
下面三个名词的概念需要区分一下:
  • 主机:配有IP地址,但不进行路由控制的设备
  • 路由器:既配有IP地址,又能进行路由控制的设备
  • 节点:主机和路由器的统称
    网络层最核心的协议就是IP协议(Internet Protocol,因特网协议)。IP协议根据数据包的目的IP地址来决定如何投递它。如果数据包不能直接发送给目标主机,那么IP协议就为它寻找一个合适的下一跳(next hop)路由器,并将数据包交付给路由器来转发。多次重复这个一跳一跳的过程,最终将数据包交送给目标主机,或者由于发送失败而被丢弃。
    网络层另一个重要的协议是ICMP协议(Internet Control Message Protocol,因特网控制报文协议),它是IP协议的重要补充,主要用于检测网络连接。

本文先来了解一下网络层的IP地址是怎么来划分的。

IP地址分为网络号和主机号
  • 网络号:保证相互连接的两个网段具有不同的标识
  • 主机号:同一网段内,主机之间具有相同的网络号,但是必须有不同的主机号
  • 不同的子网其实就是把网络号相同的主机放到一起
  • 如果在子网中新增一台主机,则这台主机的网络号和这个子网的网络号一致,但是主机号必须不能和子网中其他的主机重复
DHCP(自动分配IP):能够自动地给子网内新增主机节点分配IP地址的一门技术,一般的路由器都有DHCP功能,因此路由器也可以看做是一个DHCP服务器。
路由器的插口的名称
WAN口:插宽带的口    LAN口:插网线的口
下图是之前提出的一种划分网络号和主机号的方式,现在已经不用了,ABCDE类的前几位都是有规律的
为什么现在不用,是因为大多组织申请B类网络地址,导致B类很快就分配完,A类却浪费了大量地址
针对以前的这种分配地址的方式,现在用的是CIDR的划分方案
  • 引入了一个额外的子网掩码(subnet mask)来区分网络号和主机号
  • 子网掩码是一个32位的正整数,通常用一串“0”来结尾
  • 将IP地址与子网掩码进行按位与操作,得到的结果就是网络号
  • 网络号和主机号的划分与这个IP地址是A类、B类还是C类无关
划分子网的例子1
IP地址
140.252.20.68
8C FC 14 44
子网掩码
255.255.255.0
FF  FF FF 00
网络号
140.252.20.0
8C FC 14 00
子网地址范围
140.252.20.0-140.252.20.255
划分子网的例子2
IP地址
140.252.20.68
8C FC 14 44
子网掩码
255.255.255.240
FF FF FF F0
网络号
140.252.20.64
8C FC 14 40
子网地址范围
140.252.20.64-140.252.20.79
特殊的IP地址

  • 将IP地址中的主机地址全部设为0,就是网络号,表示这个局域网
  • 将IP地址中的主机地址全部设为1,就称为了广播地址,用于给同一链路中相互连接的所有主机发送数据包(ARP协议中就用到了)
  • 127.*的IP地址通常用于本机环回(loop back)测试,通常是127.0.0.1
增加IP地址数量的方法
  • 动态分配IP地址:只给接入网络的设备分配IP地址。因此同一个MAC地址的设备,每次接入互联网中,得到的IP地址不一定是相同的。
  • NAT技术(重要),这在之后的文章中会有讲到
  • IPv6:与IPv4是两个互不相干的协议,它用16字节的128位来表示一个地址
私有IP地址和公网IP地址
  • 10.*:前8位是网络号,后24位用来表示主机号,一共是2^24=16777216个地址
  • 172.16--172.31.:前12位是网络号,一共是2^20=1048579个地址
  • 192.168.*:前16位是网络号,共65536个地址
  • 包含在这个范围中的,都称为私有IP,其余的全是公网IP

  • 一个路口器可以配置两个IP地址,一个是WAN口IP,一个是LAN口IP(子网IP)
  • 路由器LAN口连接的主机,都从属于当前这个路由器子网中
  • 不同的路由器,子网IP其实都是一样的(通常都是192.168.1.1),子网内的主机IP地址不能重复,但是不同子网之间的IP的地址就可以重复了(如上图)
  • 最外层的运营商路由器,WAN口IP就是一个公网IP了
  • 子网内的主机需要和外网进行通信时,路由器将IP首部中的IP地址进行转换(替换成WAN口IP),这样逐级替换,最终数据包中的IP地址称为一个公网IP。这种技术称为NAT(网络地址转换)
  • 如果希望自己的服务器,能够在公网上被访问到,就需要把程序部署在一台具有外网IP的服务器上

TCP/IP协议族的网络层基础(1)——网段划分相关推荐

  1. Network 之五 TCP/IP 协议族、工作流程、常用协议格式

      最近工作需要搞网络相关的内容,由于之前对网络了解比较少,因此开始重点学习一下网络相关的各种知识.博文中的有些内容来自于在学习过程中对于一些互联网上我认为的重点知识的记录,如果侵权请联系删除!    ...

  2. TCP/IP 协议族 简介(应用层,传输层,网络层,链路层)

    互联网协议(Internet Protocol Suite [swi:t])是一个 网络通信模型,以及一整个网络传输协议家族,为互联网的基础通信架构.它常被通称为TCP/IP 协议族(TCP/IP P ...

  3. TCP/IP 协议族 And HTTP 协议 基基基础知识

    文章目录 TCP/IP协议群 HTTP 协议 1.HTTP 消息结构 2.HTTP 请求方法 3.HTTP 响应信息 4.HTTP 状态码 5.HTTP content-type 6.请求类型Get与 ...

  4. TCP/IP协议族(一) HTTP简介、请求方法与响应状态码

    接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的.接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单 ...

  5. 第一章 TCP/IP协议族

    一.协议族体系结构 TCP/IP协议族分为四层协议系统,自底向下分别为数据链路层.网络层.传输层.应用层. 数据链路层常用ARP(地址解析协议)和RARP(逆地址解析协议).在网络层使用IP寻址,而在 ...

  6. 网络传输之TCP/IP协议族

    我们现实网络无处不在,我们被庞大的虚拟网络包围,但我们却对它是怎样把我们的信息传递并实现通信的,我们并没有了解过,那么当我们在浏览器中出入一段地址,按下回车这背后都会发生什么? 比如说一般场景下,客户 ...

  7. TCP/IP协议族 详解(TCP/IP四层模型、OSI七层模型)

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. TCP/IP协议族(TCP/IP Protocol Suite,或TCP/IP Protocols) ...

  8. tcp ip协议_网络通信-TCP/IP协议族简述

    导读:计算机与网络设备要相互通信需要遵守同样的规则.例如,如何找到通信目标.该使用哪种语言通信.怎么结束通信等规则.不同的硬件.操作系统之间的通信都需要遵循同一种规则,这种规则也称为是协议.下面本文主 ...

  9. 程序员必知必会网络传输之TCP/IP协议族,共864页的详解文档让你原地起飞!

    我们现实网络无处不在,我们被庞大的虚拟网络包围,但我们却对它是怎样把我们的信息传递并实现通信的,我们并没有了解过,那么当我们在浏览器中出入一段地址,按下回车这背后都会发生什么? 比如说一般场景下,客户 ...

最新文章

  1. vc+如何添加右键弹出菜单
  2. springboot模板引擎_Spring Boot实战:如何搞定前端模板引擎?
  3. java程序设计B_Java程序设计11——GUI设计与事件处理B
  4. 数据即代码:元驱动编程
  5. 高端服务器CPU详细图解
  6. 关于Spring Cloud微服务框架的一些概念
  7. 2018 ACM/ICPC 南京站小结
  8. 入职五年回顾(十五) 2013年10月
  9. 华为数通NA-NP学习笔记(个人精简)
  10. OBS教程:3分钟学会直播推流与视频录制
  11. java面向对象简介
  12. 多个PDF合并后页面大小不一
  13. 打印机打印时显示选择传真调解器或服务器,惠普打印机选择打印时为什么显示发送传真...
  14. 计算机科学与技术有几大类,计算机科学与技术类包括哪些专业
  15. Vscode 如何配置debug
  16. 第12周 上机报告 1之练习3 回文日
  17. 蛋白质二级、三级结构预测
  18. 怎么压缩word文档,word压缩方法介绍
  19. python合成图片_python图片合成的示例
  20. 如何使用智能问答机器人服务

热门文章

  1. ASPICE总结——1
  2. 云主机安全-私有密钥安全认证
  3. jQuery卷轴效果
  4. 5年以上的java薪资_2020年5大城市Java平均月薪,最高21280,你达标了吗?
  5. 英国设计工作室Build平面设计作品欣赏
  6. 外科医生最喜欢给什么人做手术
  7. idea安装后的配置、最详细的配置、必要的配置
  8. ios apple企业账号申请流程
  9. 你的孤独是既希望有人关心又不希望有人打扰
  10. R语言中使用boxplot函数绘制箱线图