码迷,mamicode.com
首页 > 其他好文 > 详细

IP地址分类和路由表

时间:2020-07-18 22:40:41      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:大整数   因特网   令行   alt   匹配   出现   自动   组合   ctr   

IP地址

ip地址是ip协议提供的一种统一的地址格式,它为互联网上的网络设备分配一个用来通信的地址。目前有ipv4和ipv6两种。

ipv4

ipv4 是一个32位数二进制数,占4个字节大小,由于用一个大整数不方便记忆和使用,于是采用了点分10进制表示方法,及将其拆分为4个字节,每个字节为一个0-255的10进制数字,并用.分隔。

ip地址又分为公网地址和私网地址,公网地址需要向因特网信息中心请求,可以直接在互联网上使用。私网地址只能在组织内部的局域网中使用。不能超过该范围。

子网掩码(mask)

子网掩码的作用主要用来划分一个ip地址的网络号和主机号,划分的方式是将子网掩码进行位与运算,得到的结果就是网络号。一般的子网掩码为255.255.255.0,或者255.255.0.0形式,也有其他的子网掩码。假如ip地址为120.78.239.100的ip地址的子网掩码为255.0.0.0,则相与计算之后的结果为120.0.0.0,这个结果便是网络号。主机号则为后面三位0的位置。

网关(GATEWAY)

网关又称为网间连接器,协议转化器,在网络层上是实现网络互联。网关实质上是一个网络通向其他网络的IP地址。两个处于不同网络段的主机是无法进行通信的,通信需要经过网关和硬件层面上的路由器实现。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关通过具有路由功能的设备(路由器,具有路由协议的设备,代理服务器)转发给网络B的网关,网络B的网关再转发给网络B中的对应主机。

ipv6

IPv4地址使用四字节描述,所能组合的个数也是有限的,所以ipv4地址在现代互联网的试用下几乎消耗殆尽,开始无法满足人们对ip地址的需求,于是出现了ipv6地址协议,ipv6使用了128位二进制数表示,基本解决了IP地址短缺的情况,但是目前还存在诸多的协议问题。

ipv6使用冒号表示法:将4个16进制数分为一组,一共8组,并采用冒号分割的表示的方式。形如fd23:34ab:babe:cd89:4c2b:0:0:23de的表示形式,地址中连续的0也可以省略,但仅可省略一处,省略处使用两个::分割即可,即fd23:34ab:babe:cd89:4c2b::23de0.0.0.0.0.0.0.1
也等价于::1

ip地址的分类

ip地址根据不同的段划分为ABCDE5类,

A类

第一字节为网络位,子网掩码为255.0.0.0,且IP地址第一个字节第一位必须为0,即

  二进制表示 十进制表示
起始 00000001 00000000 00000000 00000000 0.0.0.0
结束 01111111 11111111 11111111 11111111 127.255.255.255

 

第一字节为网络位,除去127本地回环地址,网络ID共有126个,每个网络号有 256^3 - 2 = 1677714个主机号(减去一位主机号和广播号)

B类

前两个字节为网络号,即子网掩码255.255.0.0,且前两位必须为10打头,即

  二进制表示 十进制表示
起始 10000000 00000000 00000000 00000000 128.0.0.0
结束 10111111 11111111 11111111 11111111 191.255.255.255

 

前两位为网络号,所以网络ID有214=16384个网络,每一网络中的主机个数为:2562 -2 = 65534

C类

前三个字节为网络位,子网掩码为255.255.255.0,前三位为110

  二进制表示 十进制表示
起始 11000000 00000000 00000000 00000000 192.0.0.0
结束 11011111 11111111 11111111 11111111 223.255.255.255

 

前三位为网络号,所以网络号共有2^21 = 2097152个,每个网络号中有256-2=254个主机号

D类

多播地址,最高位前4位为1110,那么地址范围为

  二进制表示 十进制表示
起始 11100000 00000000 00000000 00000000 224.0.0.0
结束 11101111 11111111 11111111 11111111 239.255.255.255

E类

实验用地址

主要关注A、B、C三类地址,在这些地址中,还包括了一些私有地址范围

类别 最大网络数 IP地址范围 单网段最大主机数 私有地址范围
A类 126 0.0.0.0-127.255.255.255 167777214 10.0.0.0-10.255.255.255
B类 16384 128.0.0.0-191.255.255.255 65534 172.16.0.0-172.31.255.255
C类 2097152 192.0.0.0-223.255.255.255 254 192.168.0.0-192.168.255.255

 

除了以上部分私有地址,还包括部分特殊的地址。

  • 255.255.255.255为限制广播地址,该地址只能在本网络内部。
  • 127.x.x.x的地址为我们电脑的本地回环,这个地址只能在本地主机上使用。
  • 169.254.x.x 是在window中使用DHCP动态获取IP失败后,将会被随机分配一个这样的临时地址。

路由Routing简介

两个网络之间的通信就需要路由,也就是需要路由器,通过路由器去转发这些需要跨网络的数据包,在路由器上维护着路由表,他知道根据什么的路径可以将数据包发往目的地址。

在本机上可以常看这个路由表的信息,cmd命令行中使用route print,Linux中使用route -n查看。

技术图片

 

 每一行消息就是一条路由表信息,都与该主机上网卡中的配置关联,网卡配置文件的路径为 /etc/sysconfig/network-scripts ,以上两条路由信息,从最后字段iface可以看出由配置文件中的ifcfg-ens33路由产生。Destination表示目标网段,Geteway表示去往目的地应该使用经过的网关,网关只有在Flag字段中带有G标记才有意义,否则就是0.0.0.0,因为第二条记录是一个本地网络,所以可以直接直接到达。

 技术图片

 

 文件中包括以下几行内容,IP地址,掩码和网关配置,与路由表中的信息匹配。

技术图片

路由表如何工作的

假如我们需要在本机上需要连接百度服务器和或本地网络中的一个192.168.236.200的主机,通过ping命令可以看到百度的IP地址为:39.156.69.79。

技术图片

 

 如果想要到达百度服务器,如何知道如何进行路由。查看路由表,将目的的ip地址与Genmask做按位与操作,首先会匹配掩码更长的,也就是上面的255.255.255.0, 如果长度相同,根据Metric值匹配的顺序,按位与后将结果与Destination字段值比较,如果相同,则使用该条路由。访问百度服务器时候,优先匹配第二条信息,位于过后显然结果不同,所以比较第一条,结果刚好相同,而该条记录的网关为192.168.236.2,则该消息将会到该网关的路由表中继续查询匹配,由此经过若干节点到达百度的服务器。

而当我们使用ping访问本地网络中的一个主机时,第二条路由信息将会被匹配,表示在同一网段的,直接转发即可。

路由器

路由器的所有端口都可以绑定一个ip地址,每一个ip地址位于不同的网络中,由此路由器可以将两个网络进行连接。连入的一个网络的设备可以动态和静态分配ip地址。动态分配一般有DHCP动态路由协议完成,会自动分配一个ip地址给该设备,或者通过路由协议动态计算,并不断更新路由表完成。也可以由用户手动指定一个ip地址。

IP地址分类和路由表

标签:大整数   因特网   令行   alt   匹配   出现   自动   组合   ctr   

原文地址:https://www.cnblogs.com/k5210202/p/13336754.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!