IP,MAC和端口的概念
MAC地址也叫物理地址、硬件地址,由网络设备厂家直接烧录在网卡上的,理论上Mac地址是唯一-的。 但因为Mac地址可以通过程序修改,所以也有可能会重复。IP地址是互联网上的每台设备都规定了-一个唯一的地址, 这个地址就叫做“IP地址”。由于有了这个唯一的地址,才能保证用户能够高效地找到自己想要进行通信的设备。IP地址与MAC地址在计算机里都是以二进制表示的,IP地址是32位的,而MAC地址则是48位的。IP地址通常用“点分十进制”表示成(a.b.c.d) 的形式,其中,a,b,c, d都是0^ 255之间的十进制整数。例: (100. 41. 53.106)。
MAC地址通常表示为12个16进制数,如: 00-16-EA-AE 3C- 40就是一个MAC地址, 中前3个字节,16进制数00-16 EA代表网络硬件制造商的编号,它由IEEE(电气与电子工程师协会)分配,后3个字节,16进制数AE. 3C 40代表该制造商所制造的某个网络产品(如网卡)的系列号。
举例来说,Mac地址就像身份证号-样,具有唯一性,IP就像是你的电话号码可以有多个,不同场景用不同的电话号码。你工作时有一个工作手机号码,工作之外还有一个私人号码用于亲戚朋友联络用的。由于IP地址是有限的,所以内网通常会共用一个对外的IP地址。就好像你办公桌上有一个内线电话分机,外面打你内线电话需要先拨通总机再转给你,你用分机打外面的号码也要通过总机中转。你们公司的总机就相当于外网IP地址,你的分机就相当于内网IP地址。内网IP有三个保留的IP地址段,分别是10、 172、 192开头的。在茫茫的互联网海洋中,要找到一台计算机非常不容易,有三个要素必须具备,它们分别是IP地址、MAC地址和端口号。有了IP地址和MAC地址,虽然可以找到目标计算机,但仍然不能进行通信。- -台计算机可以同时提供多种网络服务,例如Web服务(网站)、FTP 服务(文件传输服务)、SMTP 服务(邮箱服务)等,仅有IP地址和MAC地址,计算机虽然可以正确接收到数据包,但是却不知道要将数据包交给哪个网络程序来处理,所以通信失败。
为了区分不同的网络程序,计算机会为每个网络程序分配-一个独- -无二的端口号(PortNumber),例如,Web服务的端口号是80,FTP服务的端口号是21, SMTP服务的端口号是25。端口(Port) 是一个虚拟的、逻辑上的概念。可以将端口理解为- -道门,数据通过这道门流入流出,每道门有不同的编号,就是端口号。如下图所示:
IP地址详解:
连接到Internet的每个设备至少有一个IP地址。基于TCP/IP协议的专用网络中使用的设备也需要IP地址。在任何情况下,IP路 由器实现的转发程序使用IP地址来识别流量去向。IP地址也表示流量来源。IP地址在某些方面与电话号码相似,但最终用户通常知道并直接使用电话号码,而IP地址通常被Internet中的DNS协议屏蔽在用户视线之外,DNS让大多数用户使用名字而不是数字地址。当用户需要自已建立网络或DNS由于某种原因失效时,用户需要直接处理IP地址。为了了解Internet如何识别主机和路由器,并在它们之间实现流量的交付,我们必须了解IP地址的作用。因此,我们对它们的管理、结构和用途感兴趣。
当一台设备连接到全球性的Internet时,为它们分配地址就必须经过协调,这样就不会重复使用网络中的其他地址。对于专用网络,使用的IP地址必须经过协调,以避免在专用网络中出现类似的重复。成组的IP地址被分配给用户和组织。这些地址的拥有者再将它们分配给设备,这通常根据某些“编号方案”进行。对于全球性的Internet地址,一个分层结构管理实体帮助用户和服务提供商分配地址。个人用户通常由Intemet服务提供商(ISP)分配地址,通过支付费用来获得地址和执行路由。
大多数Internet用户熟悉IP地址,并且了解最流行的地址类型: IPv4地址。这些地址通常采用所谓的点分四组或点分十进制表示法,例如165.195. 130. 1070点分四组表示法由四个用点分隔的十进制数组成。每个这样的数字是一个非负 整数,范围为[0, 255],代表整个IP地址的四分之- -。点分四组表示法是编写完整的IPv4地址(一个用于Internet系统的32位非负整数)的简单方式,它使用便捷的十进制数。在很多情况下,我们将关注这种地址的二进制结构。下图给出了几个IPv4地址的例子,以及对应的二进制表示,供大家开始学习。
基本的IP地址结构:
IPv4地址空间中有4294 967 296个可能的地址,而IPv6的地址个数为340282 366920938 463 463 374607431 768211 456由于拥有大量地址(特别是IPv6),可以方便地将地址空间划分成块。IP地址可根据类型和大小分组。大多数IPv4地址块最终被细分为一个地址,用于识别连接Intemet或某些专用的内联网的计算机网络接日。这些地址称为单播地址。IPv4地址空间中大部分是单播地址空间。
分类寻址:
当最初定义Intemet地址结构时,每个单播IP地址都有一个网络部分,用于识别接日使用的IP地址在哪个网络中可被发现;以及一个主机地址,用于识别由网络部分给出的网络中的特定主机。因此,地址中的- -些连续位称为网络号, 其余位称为主机号.。现实中的不同网络可能有不同数量的主机,每台主机都需要一个唯- -的IP地址。 一种划分方法是基于当前或预计的主机数量,将不同大小的IP地址空间分配给不同的站点。地址空间的划分涉及五大类。每类都基于网络中可容纳的主机数量,确定在一个32位的IPv4地址中分配给网络号和主机号的位数。如下图所示:
子网掩码:
子网掩码(subnetmask) 又叫网络掩码、地址掩码、子网络遮罩,它是一一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。
子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
子网掩码是一个32位地址, 用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
子网掩码-屏蔽一个IP地址的网络部分的“全1”比特模式。对于A类地址来说,默认的子网掩码是255.0. 0.0;对于B类地址来说默认的子网掩码是255.255.0. 0;对于C类地址来说默认的子网掩码是255.255.255. 0。
通过子网掩码,就可以判断两个IP在不在- -个局域网内 部。
子网掩码可以看出有多少位是网络号,有多少位是主机号。
子网划分:
做子网划分的目的是在-一个网络地址中划分出来多个小的网络,其优点有以下几点
减少网络流量根据前面有效主机数量我们可以看出,有效主机数量最少(也是我们常用)的C类地址中都包含了254个有效的主机,由于主机数量过多,导致整个网络中的流量会非常大,从而可能导致网络延增加,导致网络传输缓慢,而将网络划分成若千个小的网络,就可以减少每个网络中的流量。
优化网络性能由于减少了网络流量,当然网络性能会得到一定的优化。
简化管理相对于在一个大的网络中查找与处理故障,小网络会更加轻松。
子网划分的方式:
在IP地址中增加了一个“子网号字段”,使两级的IP地址变成为三级的IP地址。
从主机号借用若干个位作为子网号subnet-id,而主机号host-id 也就相应减少了若干个位。
通过子网掩码与IP地址相与,可以求得子网号。