TCP/IP

TCP/IP 协议集或协议簇

概念:

  • 传输控制协议/IRI特网协议(TCP/IP)组是由美国国防比(DoD)所创建的,主要用来确保数据的完整性及毁灭性战争中维持通信
  • 是有一组不同功能的协议组合在一起构成的协议簇
  • 利用一组协议完成OSI所实现的功能

该协议簇对应的模型是DOD模型,和OSI七层模型很类似。

下图为OSIDoD的对比

更详细的了解DoD模型中的涉及到的协议,下图:

应用层的协议:

主机到主机层

主机到主机层:主要用于端到端的链接

TCP的报文结构

UDP的报文结构

TCP 与 UDP 对比:
传输控制协议(TCP)

面向连接
可靠传输
留空
使用TCP的应用:web浏览器;电子邮件;文件传输程序;

用户数据保温协议(UDP)

无连接
不可靠传输
尽力传递
使用UDP的应用:域名系统(DNS);视频流;IP语音(VoIP)

当有两台主机之间需要通信,那么:

  • 源端口随机分配,目标端口使用知名端口;
  • 应用客户端使用的源端口号一般为系统中未使用的且大于1023
  • 目的端口号为服务器端应用的进程,如telnet23

因特网层

OSI七层中的网络层很类似
定义了网际互联协议IP协议
这一层主要特点:

负责将分组报文从源端发送到目的端
网络层作用:

  • 为网络中的设备提供逻辑地址
  • 负责数据包的寻经和转发
    在这一层有:ICMP、IGMP、IP、RARP、ARP 协议在此层工作

IP报文格式

IP头部大小为20字节Bytes

ARP地址解析协议

主要用于将IPv4解析为物理MAC地址。
MAC地址是一个二层的地址,在所有的网络端口如:电脑网口、路由器网口和交换机的网络都会有一个MAC地址。

TCP三次握手

三次握手(three times handshake;three-way handshake)所谓的三次握手即对每次发送的数据量是怎样跟踪进行协商使数据段的发送和接收同步,根据所接收到的数据量而确定的数据确认数及数据发送、接收完毕后何时撤消联系,并建立虚连接。
为了提供可靠的传送,TCP在发送新的数据之前,以特定的顺序将数据包的序号,并需要这些包传送给目标机之后的确认消息。TCP总是用来发送大批量的数据。当应用程序在收到数据后要做出确认时也要用到TCP。

过程

第一次

第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。

第二次

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。

三次握手理解图:

完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念.

模拟两台主机之间的通信:

VLSM 可变长子网掩码

什么是IP地址:

  • 32位,8位一组,一公四组。
  • 点分十进制

如IP地址:192.168.10.1 换算成二进制如下:
192: 11000000
168: 10101000
10: 00001010
1: 00000001

具体的十进制转换二进制这里不多进行介绍,详情请移步百度;

由此可知,全球可用的IP地址个数为:2的32次方;

而为了更好的区分,把这所有的IP分为5类:A、B、C、D、E 类,如下图:

分类

E类地址是保留用于科学使用,D类用户组播使用
而A、B、C三类,就是公网的合法使用的IP。

由次分类,又衍生出一个概念:网络部分、主机部分
如何区分一个IP地址哪一部分是网络部分和主机部分呢?

根据类别来区分网络位和主机位
A类地址:前八位 是网络号,剩下的二十四位是主机号
B类地址:前十六位 是网络号,剩下的十六位是主机号
C类地址:前二十四位 是网络号,剩下的八位是主机号

会发现IP地址分类中,有一些地址没有体现,如:

0.0.0.0、127段
127段: 是用于本地的回环测试使用的

通信类型:

  • 单播
  • 组播
  • 广播

IP类型

  • 网络地址:代指网络的地址。在网络的IPv4地址范围内,最小地址保留为网络地址。次地址的主机部分的每个主机位均为0.
  • 广播地址:用于向网络中的所有主机发送数据的特殊地址。广播地址使用该网络范围内的最大地址。即主机部分的个比特位全部为1的地址。
  • 主机地址:分配给网络中终端设备的地址。

为什么要进行划分子网?

打个比喻,我们现在得到一个地址段:10.0.0.0/8,那个这个段内一共有2的24次方减2的主机可用,如此庞大数量,一旦同时发送ARP广播,整个网络就会瘫痪
并且会非常的浪费,而且如大的网络,只有一个网络,如果进行子网划分,那么就可以根据需求进行网络的划分,进行ARP广播隔离。
就相当于把一个大的网络,切分成很多个网络。

到底如何划分子网呢?
这里就需要提到一个概念:掩码
掩码和IP地址一般都是成对出现的,共同作用。

前面说一个IP地址分为:网络号和主机号
默认情况下,根据类别来进行区分网络号和主机号
那么还可以根据掩码来进行区分网络号和主机号,并且掩码是可变长的,当掩码变长后,就可以进行对一个大的网络进行子网划分;

IP案例
一般我们的IP地址如下:

172.16.0.0 255.255.0.0
这里前面是ip地址,后面是掩码
同时也可以写成: 172.16.0.0/16,斜杠后面的16,表示掩码长度,因为把掩码中的前三段255换算成二进制,就有16个1,在这里和写十进制的效益是相同的

如下图:区分网络位和主机位

如下图,网络位向主机位借一位:

借了一位后,掩码向右移了一位,掩码就变成255.255.128.0
分割线的左端是网络位,右边是主机位,这样这个网络就分为了两个子网;
划分之后,两个子网的每个可用IP都是:2的15次方;

如下图是划分子网的思路:

  • 现根据IP区分类别,找到默认的掩码;
  • 变更掩码,找子网
  • 得出子网号
  • 得出主机段
  • 得出广播号

我们知道IP地址是一个4字节(共32bit)的数字,被分为4段,每段8位,段与段之间用句点分隔。为了便于表达和识别,IP地址是以十进制形式表示的如210.52.207.2,每段所能表示的十进制数最大不超过255。IP地址由两部分组成,即网络号(Network ID)和主机号(Host ID)。网络号标识的是Internet上的一个子网,而主机号标识的是子网中的某台主机。网际地址分解成两个域后,带来了一个重要的优点:IP数据包从网际上的一个网络到达另一个网络时,选择路径可以基于网络而不是主机。在大型的网际中,这一点优势特别明显,因为路由表中只存储网络信息而不是主机信息,这样可以大大简化路由表

子网划分基础 :

子网划分(subnetting)的优点:

  • 减少网络流量
  • 提高网络性能
  • 简化管理
  • 易于扩大地理范围

怎么样创建一个子网:

如何划分子网?首先要熟记2 的幂:20 次方到9 次方的值分别为:1,2,4,8,16,32,64,128,256512
还有要明白的是:子网划分是借助于取走主机位,把这个取走的部分作为子网位。因此这个意味划分越多的子网,主机将越少。

子网掩码(Subnet Masks) :

子网掩码用于辨别IP 地址中哪部分为网络地址,哪部分为主机地址,有1 和0 组成,长32 位,全为1 的位代表网络号.不是所有的网络都需要子网,因此就引入1 个概念:默认子网掩码(default subnet mask).A 类IP 地址的默认子网掩码为255.0.0.0;B 类的为255.255.0.0;C 类的为255.255.255.0。

Classless Inter-Domain Routing(CIDR):

CIDR 叫做无类域间路由,ISP 常用这样的方法给客户分配地址,ISP 提供给客户1 个块(block size),类似这样:192.168.10.32/28,这排数字告诉你你的子网掩码是多少,/28 代表多少位为1,最大/32.但是你必须知道的一点是:不管是A类还是B类还是其他类地址,最大可用的只能为/30,即保留2 位给主机位。

CIDR 值:

  • 掩码255.0.0.0:/8(A 类地址默认掩码)
  • 掩码255.255.0.0:/16(B 类地址默认掩码)
  • 掩码255.255.255.0:/24(C 类地址默认掩码)

划分A类B类C类地址子网:

划分子网的几个捷径:

  • 你所选择的子网掩码将会产生多少个子网?:2 的x 次方-2(x 代表子网位,即2 进制为1 的部分) PS:这里的x是指除去默认掩码后的子网位,例如网络地址192.168.1.1,掩码255.255.255.192,因为是C类地址,掩码为 255.255.255.0。那么255.255.255.192(x.x.x.11000000)使用了两个1来作为子网位。
  • 每个子网能有多少主机?: 2 的y 次方-2(y 代表主机位,即2 进制为0 的部分)
  • 有效子网是?:有效子网号=256-10 进制的子网掩码(结果叫做block size 或base number)
  • 每个子网的广播地址是?:广播地址=下个子网号-1
  • 每个子网的有效主机分别是?:忽略子网内全为0 和全为1 的地址剩下的就是有效主机地址.

最后有效1 个主机地址=下个子网号-2(即广播地址-1)

根据上述捷径划分子网的具体实例:

C 类地址例子1:网络地址192.168.10.0;子网掩码255.255.255.192(/26)

  • 子网数=2*2-2=2
  • 主机数=2 的6 次方-2=62
  • 有效子网?:block size=256-192=64; 所以第一个子网为192.168.10.64, 第二个为192.168.10.128
  • 广播地址:下个子网-1.所以2 个子网的广播地址分别是192.168.10.127 和192.168.10.191
  • 有效主机范围是:第一个子网的主机地址是192.168.10.65 到192.168.10.126;第二个是192.168.10.129 到192.168.10.190

C 类地址例子2:网络地址192.168.10.0;子网掩码255.255.255.128(/26)

我知道我举的这个例子只有一个子网位,这通常是不合法的(由RFC文档所规定)。但是!世事无绝对,不是吗?这个子网掩码能在你需要两个子网每个子网 126 台主机时给你帮助,不过这是在特殊情况下实现的。在思科路由器的全局配置模式下输入ip subnet -zero命令来告诉你的路由器打破规则并使用一个1位的子网掩码(这个命令通常在运行CISCO IOS 12.x的所有路由器上默认存在)

  • 子网数=2
  • 主机数=2 的7 次方-2=126
  • 有效子网?:block size=256-128=128; 所以第一个子网为192.168.10.0, 第二个为192.168.10.128
  • 广播地址:下个子网-1.所以2 个子网的广播地址分别是192.168.10.127 和192.168.10.255
  • 有效主机范围是:第一个子网的主机地址是192.168.10.1 到192.168.10.126;第二个是192.168.10.129 到192.168.10.254

B 类地址例子1:网络地址:172.16.0.0;子网掩码255.255.255.128(/25)

注意!这个不是C类地址的子网掩码,然而这个子网划分是有一定难度的,但是!这个掩码却是十分有用的因为它创建了510个子网每个子网有126个主机,一个很好的组合。

  • 子网数=2的9次方-2=510
  • 主机数=2的7次方-2=126
  • 有效子网?:block size=256-255=1,2,3,......这是第三个八位元组的数值,但是你不能忘记还有一位子网位在第四个八位元组。所以第四个八位元组分为两个子网。例如第三个八位元组表示子网3,那第四个八位元组的两个子网为172.16.3.0和172.16.3.128
  • 广播地址:下个子网-1.所以第一个子网和最后1 个子网的广播地址分别是
    172.16.0.255 和 172.16.255.127
  • 有效主机范围是:第一个子网的主机地址是172.16.0.129 到172.16.0.254;最后1 个是172.16.255.0 到172.16.255.126

    (补充一下:可能有人问第一个子网为什么不是172.16.0.0---172.16.0.128呢?不要忘记!子网位和主机位不能为全0或者全1, 172.16.0.0代表了整个172.16.x.x网络,同理,最后一个子网也就不可能是172.16.255.128--- 172.16.255.255了。)

B 类地址例子2:网络地址:172.16.0.0;子网掩码255.255.192.0(/18)

  • 子网数=2*2-2=2
  • 主机数=2 的14 次方-2=16382
  • 有效子网?:block size=256-192=64;所以第一个子网为172.16.64.0,最后1 个为172.16.128.0
  • 广播地址:下个子网-1.所以2 个子网的广播地址分别是172.16.127.255 和172.16.191.255
  • 有效主机范围是:第一个子网的主机地址是172.16.64.1 到172.16.127.254;第二个是172.16.128.1 到172.16.191.254

B 类地址例子3:网络地址:172.16.0.0;子网掩码255.255.255.224(/27)

  • 子网数=2 的11 次方-2=2046(因为B 类地址默认掩码是255.255.0.0,所以网络位为8+3=11)
  • 主机数=2 的5 次方-2=30
  • 有效子网?:block size=256-224=32; 所以第一个子网为172.16.0.32, 最后1 个为172.16.255.192
  • 广播地址:下个子网-1.所以第一个子网和最后1 个子网的广播地址分别是172.16.0.63 和172.16.255.223
  • 有效主机范围是:第一个子网的主机地址是172.16.0.33 到172.16.0.62;最后1 个是172.16.255.193 到172.16.255.223

A类地址子网划分跟B类和C类并没有什么区别,只是掩码位由16位和8位变成了24位而已。

简单地举个例子吧:

网络地址:10.0.0.0;子网掩码255.255.0.0(/16)

  • 子网数=2 的8次方-2=254
  • 主机数=2 的16次方-2=65534
  • 有效子网?:block size=256-255=1,2,3,......; 所以第一个子网为10.1.0.0, 最后1 个为10.254.0.0
  • 广播地址:下个子网-1.所以第一个子网和最后1 个子网的广播地址分别是10.1.255.255 和 10.254.255.255
  • 有效主机范围是:第一个子网的主机地址是10.1.0.1 到10.1.255.254;最后1 个是10.254.0.1 到10.254.255.254

私网地址

IP地址分为:

  • 公有地址
  • 私有地址

前面说的都是公有地址

而私有地址有三个段,在A、B、c三类中,分别都有一个段

  • 10.0.0.0 255.0.0.0 (10.0.0.0/8)
  • 172.16.0.0 255.255.0.0 (172.16.0.0/16)
  • 192.168.0.0 255.255.255.0 (192.168.0.0/24)

私有地址,主要用于内网,私有地址在公网是不被转发和认可的。
这样就可以节省大量的公有地址,这样可以通过路由的转发功能,去公网。

转载于:https://www.cnblogs.com/winstom/p/9170299.html

CCNA 之 三 TCP/IP 及 子网划分相关推荐

  1. CCNA考试认证教材【 ip地址 子网划分 】视频教程【高清】

    ccna 考试认证 教材 [ ip地址 子网划分 ] 视频教程[高清]: http://v.youku.com/v_show/id_XODY2ODM0ODg=.html 转载于:https://blo ...

  2. 网络号、主机号、子网掩码、IP、子网划分、主机号划分

    |## 标题| |网络号.主机号.子网掩码.IP.子网划分.主机号划分 | | |ip=网络号+主机号 子网掩码=网络号(不过此时的网络号全用1来表示)+主机号(此时主机号全用0来表示): 为什有子网 ...

  3. 计算机三级考点10:IP地址子网划分。

    IP地址子网划分. 1.子网划分 1.判断客户需求的网络数与主机数. 2.配置满足需求的基本网络地址结构. 3.配置地址掩码. 4.配置网络地址. 5.配置网络广播地址. 6.配置网络的主机地址. ( ...

  4. 网络基础 IP协议 子网划分 子网汇总 超网 无类间路由超详细介绍

    1.10数据封装/解封装过程 1.10.1封装 特点 从四层网上层封装 2.过程 1)在数据后面加FCS校验.data->FCS校验 2)对数据在四层进行封装,通过TCP/UDP.TCP/UDP ...

  5. 网络基本功:IP与子网划分

    一.认识网络设备 常见的网络设备集线器(HUB) 共享带宽的设备,采用广播的形式来传输信息,可以实现多台电脑同时使用一个进线接口来上网或组成局 域网. HUB不管有多少端口,所有端口都共享一条带宽,同 ...

  6. IP网络地址子网划分

    参考文章 IP地址_百度百科 IP地址和子网掩码划分_大 叔.的博客-CSDN博客_ip地址分类和子网掩码 IP地址和子网划分学习笔记之<子网掩码详解>_JavaAlliance-CSDN ...

  7. CCNA基础 IP地址子网划分

    例:1.2.3.4/28 解析0:https://ws2.sinaimg.cn/large/006aKfj6jw1fa09e02m53j30u01hc7av.jpg 解析1:子网数量:2^n-x    ...

  8. ip地址子网划分工具_大型视频监控网络系统如何规划ip地址?

    前言: 对于监控项目来说,很多故障的原因都是跟ip地址设置不当有关,如ip冲突,或者有几路监控图像没有显示等,都是跟ip有一定关联,合理的分配ip地址十分重要. 一.为什么要合理分配IP对于小型监控项 ...

  9. IP地址子网划分方法思路详解(附例题)

    如图中题目为例划分网段: R1~R4每个路由器上有2个环回,可将这2个环回看为1个即为4个 一根线上只需要2个地址,为了不浪费地址可将所有的骨干链路先看为1个 也就是说将192.168.1.0/24划 ...

最新文章

  1. Openstack组件部署 — keystone(domain, projects, users, and roles)
  2. 工作5年左右的程序员如何在职业瓶颈期内快速提升自己的身价?提升后如何有效变现自己的高质量技能?...
  3. MySQL 慢查询日志工具之pt-query-digest
  4. OpenCV3特征提取与目标检测之HOG(二)——使用官方的行人分类器实现行人检测
  5. VMware下安装CentOS7 无法通过桥接模式进行联网
  6. 基于国家标准的 EndNote 输出样式模板
  7. 【BZOJ-2937】建造酿酒厂 前缀和 + 展环为链 + 乱搞
  8. 一、AJAX学习笔记——原生AJAX (ajax简介、XML简介、ajax优缺点、ajax的使用)
  9. ie8支持jq的html,jquery 什么版本不能用 ie8
  10. HttpClient 解释
  11. [Fedora 20] 设置Terminal快捷键 + 设置桌面快捷方式 + Terminal透明解决方案
  12. shell死循环(whilefor)
  13. pymongo访问数据前数据库名和集合名(表名)校验
  14. Springboot+JasperReport报表打印
  15. 安卓频谱仪audiotool中文_频谱分析仪 TEK2712
  16. 【教程】如何批量制作线刷包和卡刷包
  17. ESXI安装部署主机
  18. win10 虚拟机如何连网
  19. access 命令不符 等级考试_全国计算机等级考试二级笔试样卷Access数据库程序设计...
  20. 如何打造高质量的网页内容呢?

热门文章

  1. Android文本框EditText显示为多行
  2. 迫于项目压力研究果园
  3. 测试环境搭建流程_案例解析:一个完整的项目测试方案流程,应该是怎么的?...
  4. abstract类中不可以有private的成员_我要告诉你:java接口中可以定义private私有方法...
  5. java linkedlist排序_用Java对用户定义对象的LinkedList进行排序
  6. 截取年月日在hana中怎么写_写完作业就不学了怎么办?焦虑中的家长不妨先低头看看...
  7. java hdfs 新建目录_如何用java在hdfs中创建一个新目录?
  8. java web里实现 mvc_MVC模式在Java Web应用程序中的实现
  9. fileoutputstream 转 byte数组_Java:如何实现文件与数组的相互转换?
  10. Beta 冲刺(4/7)