你应该知道的ip地址相关知识
IP地址是一个网卡在网络世界里的通讯地址,相当于我们家里的门牌号码。这样类比的话,很显然ip地址是唯一的。在windows系统中,我们可以使用 ipconfig 命令查看本机的ip地址相关信息:

图中 10.17.191.222就是本机ip地址,地址的大小为32bit,这个地址被分为四个部分,也就是每个部分8个bit。按照这种方式给网卡分配地址的话,那很快地址就不够用了,细分的话这个地址其实是IPv4地址。因此就出现了IPv6地址,这个有128位,由16进制表示。
32位的IP地址在使用的时候被分为5类,A、B、C类是我们经常用到的。

其中网络号的含义可以这样类比,我是A小区的六栋1001号,你是B小区六栋1001号,A、B小区就代表不同的网络号。A、B、C三类地址所包含的主机数是有限的,C类主机数量非常少,使用的话确实挺尴尬的。上面的ip是A类的私有IP地址,其实数据中心、办公室、家里、学校的ip地址,一般都是私有ip地址段。因为这些地址允许组织内部的IT人员自己管理、自己分配,而且是可以重复的,也就是说不同的学校IP地址段可以相同。

这就像不同小区,你的楼栋叫6号 我的也可以叫6栋,不会出现问题。如果我们走出了小区,就要使用公有IP地址,就像崇文路2号这是政府命名的,不能相同。公有ip地址有组织统一分配,需要花钱买。比如开发一个网站给全世界人访问,就需要公有ip地址。192.168.0.*是最常用的私有ip地址,比如家里的wifi 对应会有一个IP地址。192.168.0就是网络号,后面是主机号,一般我们的主机数量不会超过2^8也就是256个。当我们的手机连上wifi,wifi的路由器的地址就是192.168.0.1,192.168.0.255就是广播地址。一旦发送的目的ip地址是这个,那么192.168.0网络里面所有的机器都能收到。
我们之前学习网络的时候,应该都做过这样一道题目:对于 16.158.165.91/22 这个 CIDR,求一下这个网络的第一个地址、子网掩码和广播地址。CIDR(无类别域间路由选择)将是一个ip地址分为网络号和主机号,22的意思是网络号占22位。22不是8的倍数,将165转换成二进制为10100101。这里二进制的前6位网络号,后面都是主机号了。 所以第一个ip地址为16.158.<101001><00>.1, 即 16.158.164.1。子网掩码将ip地址划分为网络地址和主机地址,网络地址用1表示,主机地址用0表示。所以上面的ip地址的子网掩码为255.255.<11111100>.0即255.255.252.0。广播地址的主机号都用1填充,所以广播地址为16.158.<101001><11>.255即16.158.167.255。
对于网络部分的知识我们应该结合实际的使用来理解,基础的概念很多,不然很容易记了就忘。
参考资料:《趣谈网络协议》刘松
《计算机网络:自顶向下方法》原书第六版 陈鸣译
你应该知道的ip地址相关知识的更多相关文章
- IP地址相关知识
IP地址基本概念 ...
- IP地址基础知识
IP地址基础知识 网络号:用于识别主机所在的网络:主机号:用于识别该网络中的主机. 一 OSI/RM模型 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 二 TCP/IP模型 数据链路层( ...
- IP 地址基本知识
ip地址被分成了5类:A类,B类,C类,D类,E类 私有地址 只能在局域网内使用,不能在internet上使用的ip地址称为私有ip地址,私有ip地址有: 10.0.0.0-10.255.255.25 ...
- IP地址相关运算(如VLSM,超网汇总)
1.根据IP地址+子网掩码算出IP地址所在的网段(网络号) 例子: IP地址192.168.10.33,子网掩码为:255.255.255.240 (/28) ,写出所在的网络号 1.得出子网的块大小 ...
- 已知局域网IP地址,如何查看mac
arp -a 加对方IP是查对方的MAC地址 转自: http://zhidao.baidu.com/link?url=8sRdpGcjfGQ-C1F9zNub49Mxe3DAR-RCAHDkHvKC ...
- 笔记:修改centos的IP地址相关配置
最近碰到不少认识的人问相关问题 索性做个笔记 图个方便 修改eth0的网卡配置vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPR ...
- 学习React之前你需要知道的的JavaScript基础知识
在我的研讨会期间,更多的材料是关于JavaScript而不是React.其中大部分归结为JavaScript ES6以及功能和语法,但也包括三元运算符,语言中的简写版本,此对象,JavaScript内 ...
- c++ ip地址相关
#include <stdio.h> #include <string.h> #include <arpa/inet.h> #include <sys/typ ...
- BFS:UVa1590-IP Networks (子网掩码相关知识)
IP Networks Alex is administrator of IP networks. His clients have a bunch of individual IP addresse ...
随机推荐
- LR字符串处理函数-lr_eval_string
char *lr_eval_string( const char *instring ); 主要返回参数的实际内容 Action() { web_save_timestamp_param(" ...
- java并发编程系列原理篇--JDK中的通信工具类Semaphore
前言 java多线程之间进行通信时,JDK主要提供了以下几种通信工具类.主要有Semaphore.CountDownLatch.CyclicBarrier.exchanger.Phaser这几个通讯类 ...
- 测试必备工具之最强抓包神器 Charles,你会了么?
前言 作为软件测试工程师,大家在工作中肯定经常会用到各种抓包工具来辅助测试,比如浏览器自带的抓包工具-F12,方便又快捷:比如时下特别流行的Fiddler工具,使用各种web和APP测试的各种场景 ...
- Cookie 和 Session 关系详解
什么是 Cookie 和 Session ? 什么是 Cookie HTTP Cookie(也叫 Web Cookie或浏览器 Cookie)是服务器发送到用户浏览器并保存在本地的一小块数据,它会在 ...
- php读取富文本处理html标签问题
thinkphp的一项配置会将富文本编辑器的内容中的html标签进行转义处理 'DEFAULT_FILTER' => 'htmlspecialchars', // 默认参数过滤方法使用htmls ...
- 9.实战交付一套dubbo微服务到k8s集群(2)之Jenkins部署
1.下载Jenkins镜像打包上传harbor上 [root@hdss7- ~]# docker pull jenkins/jenkins:2.190. [root@hdss7- ~]# docker ...
- 为什么启动线程是start方法?
为什么启动线程是start方法 十年可见春去秋来,百年可证生老病死,千年可叹王朝更替,万年可见斗转星移. 凡人如果用一天的视野,去窥探百万年的天地,是否就如同井底之蛙? 背景:启动线程是start ...
- 面试必问系列之JDK动态代理
.katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...
- docker安装mysql,设置mysql初始密码
docker安装mysql,只需要2分钟就可以完成 docker search mysql 拉取mysql镜像(https://hub.docker.com/_/mysql) docker pull ...
- java基础 内部类详解
什么是内部类? 1.内部类也是一个类: 2.内部类位于其他类声明内部. 内部类的常见类型 1.成员内部类 2.局部内部类 3.匿名内部类 4.静态内部类 简单示例 /** * 外部类 * */ pub ...