IP协议(1)--IP地址

IP 地址分类

这里的IP地址均指ipv4的地址
IP地址采用点分十进制的表示方法有32位,如一个常见的IP地址192.168.1.1,其分为两部分 网络号 和主机号,当地址通过子网划分后主机号被分为子网号和主机号。
在网络中的每一个网络接口需要在网络中通信就需要一个IP地址,在这里要想到每一个网络接口还有一个物理地址, 如在以太网下有MAC地址这也是唯一的地址,为什么需要一个IP地址,在这里有一个很恰当的例子,唐僧去西天取经,唐僧每到一个地方都会说我从东土大唐而来,要到西天取经,这里的东土大唐和西天就像IP地址指的是发送数据的源地址和目的地址,在这个过程中MAC地址是不断发生变换的而IP地址一直是不变的,而中间从一站到另一站的过程中,就需要知道下一站的地址,此时就需要MAC地址,在以太网协议中源地址为当前站MAC地址,目的地址为下一站的目的地址,这个过程是一直在发生变化的。
IP地址总共分为五类
IP协议(1)--IP地址_第1张图片

另外IP地址分为私有IP地址和公网IP,如果你需要组建一个局域网,IP地址只用于局域网内的通信,而不直接连到Internet上,理论上 使用任意的IP地址都可以,因为和外网不会冲突,但是RFC 1918规定了用于组建局域网的私有IP地址
10. 前8位是网络号,共16,777,216个地址
172.16.到172.31. 前12位是网络号,共1,048,576个地址
192.168. 前16位是网络号,共65,536个地址 包含在这个范围中的, 都成为私有IP, 其余的则称为全局IP(或公网IP);
私网IP是不能用于访问外网的,如果需要访问外网,需要进行NAT端口映射。 子网内的主机需要和外网进行通信时, 路由器将IP首部中的IP地址进行替换(替换成WAN口IP), 这样逐级替换, 最终数据包中的IP地址成为一个公网IP. 这种技术称为NAT(Network Address Translation,网络地址转换).

子网划分

现在所有的主机都被要求支持子网编址,其IP地址由网络号、子网号、主机号组成,其主要原因是因为在网络中如拿到一个B类地址用不到这么多主机号,此时就可以通过子网划分将网络划分为更小的网络并且可以隔离广播域。另外子网对外部路由器来说隐藏了内部网络组织(一个校园或公司内部)的细节。子网划分是通过添加子网掩码实现的
如一个B类网络号为140.252.0.0/16进行子网划分需要划分为200个每个子网可容纳200个主机,其前16位为网络号,2^7 -2 < 200 < 2^8 - 2子网占8位可以划分满足200主机的子网,并且每个子网可容纳254个主机满足要求, 那么其子网掩码可以设置为255.255.255.0,子网掩码和ip地址按位与得到的即为其子网的网络号(网络号和子网号),如IP地140.252.20.68 和子网掩码 255.255.255.0进行相与,其网络号为140.252.20.0 其主机号地址范围为 140.252.20.1 ~ 140.252.20.254此时就可以判断,和另一个IP是否在同一网段中,如果在同一网段中(没有设置VLAN),此时这两个主机就可以直接通信,子网划分需要考率的因素很多这里只是举一个简单的例子。

特殊IP地址

IP地址中主机号全为0的地址为就成为网路号,代表整个局域网
IP地址中的主机号全为1时,其表示广播地址,当前作为目的IP地址时,子网中的主机均会收到广播的消息,另外需要注意几个,首先是255.255.255.255这个IP是受限的广播地址, 该地址用于主机配置过程中IP数据报的目的地址,在任何情况下,路由器都不转发目的地址为受限的广播地址的数据报,这样的数据报仅出现在本地网络。还有当子网号为全1时,其向所有子网进行广播,
最后还有一个IP 127.0.0.1为环回地址,用于本机环回测试,允许TCP/IP在本机进行通信,
IP协议(1)--IP地址_第2张图片
这个图来自TCP/IP 协议详解,我感觉解释的很清晰,当需要发送的目的地址为环回地址时,此时直接将数据报放入IP输入,其略过了链路层的处理而将环回接口当作链路层简化了设计,另外传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上。这是因为广播传送和多播传送的定义包含主机本身。

参考:《TCP/IP详解卷1:协议》 LawrenceBerkeley

你可能感兴趣的:(Linux网络编程)