在网络层中有两个较为重要的协议:IP协议和ICMP协议,其中IP协议是TCP/IP协议族的核心,也是构成互联网的基础,IP位于TCP/IP的网络层,对上可载送传输层各种协议的信息,(TCP、UDP),对下可将IP信息包放到链路层,通过以太网等技术传送。
在了解IP协议前要先了解IP地址: IP地址(Internet Protocol Address),他是IP协议提供的一种统一的地址格式,IP地址为互联网上的每一个网络和每台主机分配到一个逻辑地址,以此来屏蔽物理地址的差异。由于在单局域网网段中计算机之间可使用网络访问层所提供的MAC地址进行通信,但在路由式网络中,由于MAC地址不能跨路由接口运行,因此MAC地址传输变得非常麻烦,为了统一的数据传输,则与要引进逻辑化、层次化的寻址方式对网络组织,也就是IP地址。在linux下可用
ifconfig
命令查询自己网卡的IP地址。
IP协议
IP地址的格式和分类
每个IP地址包括两个标识码(ID),网络ID和主机ID。网络ID用于辨识主机所在的网络,网络ID的位数直接决定了可分配网络数量;主机ID用于辨识网络中的主机,主机ID的位数决定了网络中最大的主机数量。
为了满足实际不同需求,网络需要使用一种方法判断IP地址中那一部分是网络ID,哪部分是主机ID。IP地址为32位,被分为4个8位段,将IP地址分为三类:
- A类:前8位表示网络ID,后24位表示主机ID,该类地址主要是政府机关单位使用;
- B类:前16位表示网络ID,后16位表示主机ID;该类地址主要给中等规模企业使用;
- C类:前24位表示网络ID,后8位表示主机ID,该地址主要分配给所需的人使用。
此外还包含下两类隐藏地址,D类和E类:
- D类:不分网络ID和主机ID;该地址用于多播;
- E类:不分网络ID和主机ID;该类地址用于实验。
为了更好地区分地址的类型,将每类地址的开头部分设置为固定类型: 如下图所示:
每类地址的区别如下:
- A类:网络 ID 的第一位以 0 开始的地址,其地址范围为:0.0.0.0~127.255.255.255;
- B类:网络 ID 的第一位以 10 开始的地址,其地址范围为: 128.0.0.0~191.255.255.255;
- C类:网络ID的第一位以 110 开始的地址,其地址范围为: 192.0.0.0~223.255.255.255;
- D类:地址以 1110 开始的地址,其地址范围为:224.0.0.0~239.255.255.255;
- E类:地址以 11110 开始的地址,其地址范围为240.0.0.0~255.255.255.254。
数据在网络中进行传输通过识别IP地址中的网络ID,将数据发送到正确的网络中,然后再根据主机ID将数据发送到目标主机上。为了满足实际需求,需要进行子网划分,将网络划分为更小的网络,即将IP地址的主机ID部分划分为子网ID和主机ID,其中子网ID用来寻找网络的子网,主机ID用来寻找子网中的主机。这需要借助子网掩码,起作用就是指明地址中多少位用于子网