IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。这里介绍一下目前广泛使用的IPv4版本。

IP地址使用一种统一的格式,为互联网上的每一个网络、每一台设备分配一个逻辑上的地址。IP地址是一个32位的二进制数,为了方便查看,通常把他分为4组,每组的8位用一个十进制数来表达,形成一个形如192.168.0.10的地址。

IP地址由两部分组成,一个网络ID和一个主机ID,两个部分使用子网掩码来区分。也因此,一个完整的IP地址,必须包括主机地址和子网掩码两个部分才有意义,它可以用以下两种形式来表达:

  1. 192.168.0.10主机地址 和 255.255.255.0子网掩码:Windows中配置网络地址时,会要求您同时输入这两个值;
  2. 192.168.0.10/24:24表示子网掩码的二进制位数。对应的10进制分组表示为255.255.255.0。这里显示了3个十进制的255,简单换算关系为24(二进制位数) / 8( 每组8位)= 3(分组数)。

将主机地址和子网掩码进行二进制与运算,可以得到网络ID。如果您不熟悉二进制运算,可以简单地将IP地址中,对应掩码部分为0的屏蔽。比如:C类192.168.1.10的IP地址,使用子网掩码255.255.255.0屏蔽了第4个分组,得到主机所在的网络ID为192.168.1.0。

这里需要注意的是,子网掩码每个分组的值,并不必须都正好是255或0,255.255.12.0也是一个合法的子网掩码。

人们定义了A、B、C三类的地址,子网掩码分别如下。

  • A类:255.0.0.0
  • B类:255.255.0.0
  • C类:255.255.255.0

也定义了私有IP地址范围,专门为组织机构内部使用。

  • A类:10.0.0.0~10.255.255.255 即10.0.0.0/8
  • B类:172.16.0.0~172.31.255.255即172.16.0.0/12
  • C类:192.168.0.0~192.168.255.255 即192.168.0.0/16

这些也是您在公司中看到最多的地址。不同组织内部可以使用相同的私有地址,这是因为企业内部网络同Internet是隔离的,之间通过路由器进行转发,私有地址并没有直接暴露在公共网络中。

测试开发之网络篇-IP地址的更多相关文章

  1. (转)【ASP.NET开发】获取客户端IP地址 via C#

    [ASP.NET开发]获取客户端IP地址 via C# 说明:本文中的内容是我综合博客园上的博文和MSDN讨论区的资料,再通过自己的实际测试而得来,属于自己原创的内容说实话很少,写这一篇是为了记录自己 ...

  2. 查找“CDN、负载均衡、反向代理”等大型网络真实IP地址的方法

    首先,CDN.负载均衡.反向代理还分为很多层,有时查出来的是最外层的 CDN 服务器群,真实的机器是不对外开放的,类似这样的: 用户 → CDN 网络 → 一台或多台真实机器 ↗ CDN Server ...

  3. 嵌入式开发之函数解析---ip地址2进制转字符inet_ntoa 调用中只生效一次

    inet_addr()   简述:将一个点间隔地址转换成一个in_addr. #include <winsock.h> unsigned long PASCAL FAR inet_addr ...

  4. 网络之Ip地址

    0.0.0.0---255.255.255.255 Ip地址分类(D.E)不对外开放 网络类别 最大网络数 IP地址范围(,唯一的,花钱的) 最大主机数 私有IP地址范围 (做内网ip,不可直接访问公 ...

  5. 【网络】IP地址,子网掩码,网段表示法,默认网关,DNS服务器详解

    楔子: 以Windows系统中IP地址设置界面为参考(如图1), IP地址, 子网掩码, 默认网关 和 DNS服务器, 这些都是什么意思呢? 学习IP地址的相关知识时还会遇到网络地址,广播地址,子网等 ...

  6. 网络通信-基本概念:网络、IP地址、端口、socket

    目录 网络通信 1 网络 1.1 网络定义 1.2 使用网络的目的 1.3 总结 2 IP地址 2.1 ip地址的作用 2.2 ip地址的分类 3 端口 3.1 什么是端口 3.2 端口号 3.3 端 ...

  7. 三分钟网络基础-IP地址分类

    IP 地址的编址方法共经过了三个历史阶段: 分类的 IP 地址 子网的划分 超网 这篇文章首先介绍,最初始的 IP 地址分类方法. 分类的 IP 将 IP 地址划分为若干个固定类,每一类地址都由两个固 ...

  8. iOS开发:获取设备IP地址

    一.导入头文件 //首先导入头文件信息 #include <ifaddrs.h> #include <arpa/inet.h> #include <net/if.h> ...

  9. Java网络编程:IP地址和端口号

    1)IP地址 用来标志网络中的一个通信实体的地址.通信实体可以是计算机,路由器等. 2)IP地址分类 IPV4:32位地址,以点分十进制表示,如192.168.0.1 IPV6:128位(16个字节) ...

随机推荐

  1. Iterable 和 Iterator

    可以被for循环输出的为iterable (可迭代对象) 可以被next()调用并不断返回下一个数据的对象为iterator迭代器(python一切皆对象) 数据流,无法知晓其终点,只能推过next不 ...

  2. golang:并发编程总结

    并行和并发 并发编程是指在一台处理器上"同时"处理多个任务. 宏观并发:在一段时间内,有多个程序在同时运行. 微观并发:在同一时刻只能有一条指令执行,但多个程序指令被快速的轮换执行 ...

  3. Linux_交换分区SWAP

    一.交换分区SWAP 1️⃣:交换分区SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用. 2️⃣:交换分区一般指定虚拟内存的大小 ...

  4. 利用IOzone进行存储性能测试

    利用IOzone进行存储性能测试   命令:1.iozone -s 10G -r 4k -i 0(0代表顺序写) -w(代表文件不删除) -+n(不测重读重写) -Rb(以某种格式生成测试文件) /t ...

  5. testlink安装(mac os)

    安装依赖:xampp.mysql.testlink 一.xampp安装(参考:https://blog.csdn.net/it_cgq/article/details/79430511) 1.下载xa ...

  6. SystemVerilog 编写FSM

    SystemVerilog 编写FSM 题目 SystemVerilog实现 仿真 SystemVerilog 编写FSM 好书: https://github.com/yllinux/blogPic ...

  7. /etc/ssh/sshd_config ssh自动断 cent7

    vim /etc/ssh/sshd_config ClientAliveInterval 60ClientAliveCountMax 8630000 ClientAliveInterval 30Cli ...

  8. kubectl cmd

    集群资源查看 kubectl get nodes #查看节点状态 kubectl get cs #kubectl检查组件健康状态 kubectl get pods kubectl get all ku ...

  9. Django部署uwsgi 与 nginx配置

    1.nginx文件的配置 路径:/etc/nginx/conf.d/ example.conf 启动:service nginx [start]/[restart]/[stop] upstream d ...

  10. 3D网页小实验-基于Babylon.js与recast.js实现RTS式单位控制

    一.运行效果 1.建立一幅具有地形起伏和不同地貌纹理的地图: 地图中间为凹陷的河道,两角为突出的高地,高地和低地之间以斜坡通道相连. 水下为沙土材质,沙土材质网格贴合地形,河流材质网格则保持水平. 2 ...