IP地址的认识(一)
1.定义
IP地址就是给互联网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的32位标识符(介绍的是IPV4)。
2.最基本的编址方法
最基本的编址方法是“分类的IP地址”。
所谓“分类的IP地址”就是将IP地址分为若干个固定类,每一类都由两个固定长度的字段组成。
第一个字段是网络号,它标志主机(或路由器)所连接到的网络。
第二个字段是主机号,它标志该主机(或路由器)。
一个IP地址在整个互联网范围内是唯一的。
上面的两级IP地址可以记为
IP地址::={<网络号><主机号>}
“::=”表示“定义为”。
A类,B类和C类地址都是单播地址(一对一通信)。
D类地址用于多播(一对多通信)。
E类地址保存为以后用。
A类,B类和C类地址的网络号字段(灰色部分)分别是1个,2个和3个字节长,网络号最前面有1~3位的类别位,分别是0,10和110.
同理A类,B类和C类地址的主机号分别为3个,2个和1个字节长。
为了方便表示IP地址,引入点分十进制记法。
3.点分十进制记法
我们常常把32位的IP地址中的每8位插入一个空格,并且用十进制数来表示每个8位的二进制数,这就是点分十进制记法。
下面是常用的三类地址
因为三类地址有许多的共性,所以就以A类地址为例。
A类地址的网络号字段占1个字节,但只有7位可供使用,因为第一位已经固定,但最大可指派的网络数并不是128个,而是126个,即2^7-2个,这是因为网络号字段为全0的IP地址是保留地址,意思是“本网络”,第二,网络号为01111111的保留为本地软件环回测试 本主机的进程之间的通信之用。
同时,A类地址主机号表示的最大主机数也要减二,即减去全0和全1的地址。
B类和C类与A类地址唯一不同的是,B类和C类地址的类别位存在1,所以网络号不可能为全0,所以最大可指派的网络数只需要减1.
注意上面题中说的是包含的IP地址的数量,意思是所有IP地址,包括全0和全1的情况。
IP地址的认识(一)相关推荐
- Go 学习笔记(79)— Go 标准库 net(获取本机IP地址)
1. 获取本机 IP 地址 package mainimport ("fmt""net" )// 获取本机网卡IP func getLocalIP() (ipv ...
- Docker 入门系列(5)- Docker 端口映射(映射所有IP地址、映射到指定地址和指定端口、映射指定地址任意端口、查看映射端口配置)
端口映射 映射容器内应用的服务端口到本地宿主主机 1. 从外部访问容器应用 在启动容器的时候,如果不指定对应的参数,在容器外部是无法通过网络来访问容器内的网络应用和服务的.当容器中运行一些网络应用,要 ...
- 分享2020 几个好用的ip地址归属地查询
ip地址归属地查询接口 一.百度 大公司,不必说,肯定好用,我就一直用的他作为主要查询接口. url:http://opendata.baidu.com/api.php params:query=ip ...
- win10安装虚拟机提示主IP地址显示网络信息不可用
问题:在虚拟机详情下面显示 主ip地址:网络信息不可用 解决方案 先root用户[root@localhost~]#cd - [root@localhost/]#cd /etc/sysconfig/n ...
- php dedecms 记录访问者ip,dedecms实现显示访问者ip地址的方法
有时候我们需要在网站底部或其他地方显示访问者IP地址,这样我们可以在需要的位置放以下代码来显示: {dede:php} $user_IP = ($_SERVER["HTTP_VIA" ...
- Android 获取联网的IP地址
这个方法需要先判断当前应用是否联网 联网判断的方法,请查看 首先你需要确保配置文件应添加了联网的权限 如果没有下面的直接的赋值过去即可 <uses-permission android:name ...
- 关于创建zeromq消息队列,设置和更改IP地址,远程可以访问,不只是本地链接。python代码。
关于zeromq的创建,绑定本地,和绑定其他客户端的方法. 网上一大堆关于zmq的通信模式的介绍,包括三种类型,具体我就不在描述. 但是他们给的demo,都是创建本地作为server服务端,也作为cl ...
- Django mysql 多线程_【实例:利用Django管理后台管理IP地址】(四)Django test+多线程+数据库+(踩坑)...
准备在views.py编写函数,多线程检测每个IP地址的占用情况.胡乱一通写完之后,哦豁,怎么测试写得对不对呢? 一开始想单独测试views.py文件,结果要引入各种包和配置文件,还要注意各种顺序,各 ...
- java 获取linux mac_java在linux获得ip地址和mac
以前在linux下获取ip和mac一般使用jni,调用linux的ioctl.当然也有使用shell获取的. 发现在jdk 6下已经实现了,java.net.NetworkInterface上面有静态 ...
- java获取当前电脑的ip_Java获取电脑真实IP地址的示例代码
/** * @author yins * @date 2018年8月12日下午9:53:58 */ import java.net.Inet4Address; import java.net.Inet ...
最新文章
- LeetCode简单题之二叉搜索树中的众数
- 并发编程-03线程安全性之原子性(Atomic包)及原理分析
- 启明云端分享|LVGL官方认证的开发板,到底有多牛
- java http编码_java httprequest编码/解码
- 4. Linux 系统目录
- js基础-22-基本数据类型不是对象
- adb连接手机显示:List of devices attached
- cJSON 轻量级json解析器 速度快
- 【C语言】扫雷(递归展开 + 标记功能)
- 一种面向业务流的内存管理算法
- GreenPlum 大数据平台--安装
- build-resource-filtering解释
- 利用supervisor对服务进行管理
- ISO14443 Type A类型卡的防碰撞过程以及命令解析
- 360极速浏览器扩展 文件夹 在哪
- [30期] 个人职业规划
- matlab imshow()函数显示白色图像问题
- 12306铁道部订票网站瘫痪 技术惹的祸?
- 我,一个当代创业人,如何让选择大于努力
- 钣金系统三维设计与工艺展开功能的实现
热门文章
- ardupilot软件仿真及调试(vscode版)
- 【C#】字体增大、减小、改变颜色
- Codeforces Round #439C 组合数-The Intriguing Obsession
- 混合模式程序集是针对“v1.1.4322”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。
- [Windows10]Win10如何获取最高管理员权限
- css3怎么实现筛子的效果??transform得常用属性??
- Unity升级到URP渲染管线,
- 转:程序员应该怎样去学习和掌握计算机英语呢?
- 《Effective Java》读书笔记五(枚举和注解)
- 强化学习的概念及学习过程