HCIA 网络基础(2)
主类编址的缺点:
不灵活,浪费严重,不精确
解决:引入掩码
子网掩码:它是一个32位地址,是与IP地址结合使用的一种技术。它的主要作用有两个,一是用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。二是用于将一个大的IP网络划分为若干小的子网络。斜杠(/)后面的表示网络位。计算将网络位全置1,主机位置0.
例:192.168.1.0/25 255.255.255.128
192.168.1.0/28 255.255.255.240
192.168.0.0/21 255.255.248.0
VLSM
VLSM(Variable Length Subnetwork Mask,可变长子网掩码) 是为了有效的使用CIDR(无类别域间路由)和路由汇总来控制路由表的大小,并可以对子网进行层次化编址,以便最有效的利用现有的地址空间。
VLSM的优点:
1.IP地址的使用更加有效
2.应用路由汇总时,有更好的性能
3.与其他路由器的拓扑变化隔离
子网划分:
例:网段:192.168.1.0/24 划分为4个子网
2^2=4 借位 192.168.1.00000000 192.168.1.0/26
192.168.1.01000000 192.168.1.64/26
192.168.1.10000000 192.168.1.128/26
192.168.1.11000000 192.168.1.192/26
CIDR(Classless Inter-Domain Routing,无类域间路由选择)它消除了传统的A类、B类和C类地址以及划分子网的概念,因而可以更加有效地分配IPv4的地址空间。它可以将好几个IP网络结合在一起,使用一种无类别的域际路由选择算法,使它们合并成一条路由从而较少路由表中的路由条目减轻Internet路由器的负担。
核心思想:去不同,取相同
例:
10.1.1.0/28
10.1.1.16/28
10.1.1.32/28
10.1.1.48/28
10.1.1.00 000000
10.1.1.00 010000
10.1.1.00 100000
10.1.1.00 110000
相同的为00,所以最终为 10.1.1.0/26
IP的头部
IP的头每行有32位,分为版本,头长度,区分服务等十多项内容。
版本号,记录IP头为IPv4的头还是IPv6的头。如果是IPv4的头往往为4,如果是IPv6的头则是6.
首部长度也就是IP的首部长,以字节计数。
服务指的是对于不同的类型的数据包,采用不同的服务方式。对于不同的数据包,在区分服务这里会有标识,表明不同种类的包,给予的服务是不同的。
总长度是头长度加上报文信息长度的总和,最大不能超过65536字节。
标识(identification)的用途是让目标主机确定一个新到达的分段是哪一个数据流的。同一个数据流所有包都是一个相同的标识。
标志位 DF/MF以及片偏移往往在一起使用。当数据包太大了不能通过网络的MTU,这个时候就需要分段处理。如果DF=0,那么标识不允许分段;DF=1则是表示这个数据包允许分段。MF=0表示分完段之后这个数据段是整个包的最后那段,MF=1则是不是最后段的标志。
生存期是为了避免循环路由的作用。设置生存期,每经过一个路由器生存期都减一,到0就会抛弃,避免网络中报文数量不断增加。
协议则是IP用于指明这个包属于哪个进程(比如说是TCP还是UDP),这为之后上交给网络层提出了参考。
头校验和是为了防止头出错的,通过校验和来判断是否传输有误。
源地址和目的地址就是指传送方和接收方的IP地址是多少。
协议 : 通过标准化的运行规则,实现某些特定的功能。
网络协议都是标准化组织(公有协议)或者厂商指定的(私有协议)
常见的组织
ISO(国际标准组织) 各行业的标准
IETF(互联网工程任务小组) TCP/IP
IEEE(国际电气电信工程委员会) 以太网
ICMP协议
Internet control message protocol 主要用于500网络间传递各种差错和控制信息,并收集各种网络信息、诊断和排除网络故障。是一种工作在三层的协议。
Ping 应用—探测网络层连通性如果成功并返回响应时间进而探测网络层的延迟值。
Type 8 echo request
Type 0 echo reply
Type 3 不可达
Code 0 网络不可达
1 主机不可达
2 协议不可达
3 端口不可达
Type 5 重定向:
Tracert|traceroute:
原理:是一种UDP应用 封装格式 IP|ICMP|UDP|ICMP|DATA
实现原理是:分别发出跳数为1的ICMP包,如果没有到达,在发出跳数为2的ICMP包,判断有没有到达,以此类推,直到到达则停止发送ICMP包。
ARP协议
ARP协议是地址解析协议是通过解析IP地址得到MAC地址的,是一个在网络协议包中极其重要的网络传输协议,它与网卡有着极其密切的关系,在TCP/IP分层结构中,把ARP划分为网络层,为什么呢,因为在网络层看来,源主机与目标主机是通过IP地址进行识别的,而所有的数据传输又依赖网卡底层硬件,即链路层,那么就需要将这些IP地址转换为链路层可以识别的东西,在所有的链路中都有着自己的一套寻址机制,如在以太网中使用MAC地址进行寻址,以标识不同的主机,那么就需要有一个协议将IP地址转换为MAC地址,由此就出现了ARP协议,所有ARP协议在网络层被应用,它是网络层与链路层连接的重要枢纽,每当有一个数据要发送的时候都需要在通过ARP协议将IP地址转换成MAC地址,
目的:知道一个IP地址获取其MAC地址
主要工作就是建立、查询、更新、删除ARP表项。
ARP缓存表:每台主机或路由器在维护着一个ARP缓存表(ARP table),这个表包含IP地址到MAC地址的映射关系,表中记录了<IP地址,MAC地址>对。当需要发送数据的时候,主机就会根据数据报中的目标IP地址信息,然后在ARP缓存表中进行查找对应的MAC地址,最后通过网卡将数据发送出去。
生存时间:ARP缓存表包含一个寿命值(TTL,也称作生存时间),它将记录每个ARP表项的生存时间,生存时间到了就会从缓存表中删除。一个表项通常的生存时间一般是10分钟,可以设置。
ARP协议封装在以太网帧中,格式如下:
ARP类型
正向ARP:当一台设备知道对方的IP地址,不知道对方的MAC 地址时,启动ARP,发送ARP Request请求广播包到其他主机,收到广播包的主机查看,只有该请求的设备才会单播回答ARP Reply响应包。
ARP工作流程:三层往二层封装时,先要查询本机的ARP 表,如果有则封装二层,如果没有则启动ARP 来查找关于目标的 MAC,查找完成后记录在ARP 表中。
1)每个主机都会在自己的ARP缓存区中建立一个ARP列表,用来表示IP地址和MAC地址的对应关系。
2)当原主机要发送数据时,首先检查ARP表中是否有对应的IP地址的目的主机的MAC地址,如果有,则直接转发数据,如果没有,就想本网段的所有主机发送ARP请求数据包(洪泛),该数据包内容包括:源主机IP地址、源主机MAC地址,目标主机的MAC地址。
3)当本网络的所有主机收到了该ARP洪泛数据包时,首先检查数据包中的IP是否是自己,若不是,则忽略,若是,则把数据包的源主机的IP地址和MAC地址写入自己的ARP列表中,若存在则覆盖,后将自己的MAC地址写入ARP的响应包中,告诉源主机自己是他要找的MAC地址。
代理ARP:如果两台设备跨网段通信,连接这两个网络的路由器可以回答该请求,称Proxy ARP,最终告诉查询者所查询的MAC地址。
免费ARP:配置好IP的PC主动发送ARP,防止地址冲突。
反向ARP:当一台设备知道对方的MAC地址,不知道对方的IP 地址时,启动ARP,发送ARP Request请求广播包到其他主机,收到广播包的主机查看,只有该请求的设备才会单播回答ARP Reply响应包。