IT菜鸟,以后研究的方向是云计算,从基础的开始,这是第一篇博文。有不对的地方希望大家指正。IP是网络知识的基础,今天就开始学习IP。

IP地址格式:IP地址就是“网络地址+主机地址”。

IP地址分类:

IP地址是由32个二进制数来表示,为了方便记忆,分成四段8位二进制,每一段换算成一个十进制数,所以每个IP地址由4个十进制数表示(此文讨论的IP地址均为IPv4的IP地址)。

如:

二进制IP

00000001.00000000.00000000.00000001

对应十进制IP

1.0.0.1

二进制与十进制的转换:

1

2

4

8

16

32

64

128

2^0

2^1

2^2

2^3

2^4

2^5

2^6

2^7

具体做法就是在这几个数之间相加相减,自己多换算几次就基本上能三秒钟口答了:)

IP地址分类详情表:

地址

类型

引导位

地址结构

可用网络地址数

可用主机地址数

A类

0

网.主.主.主

126(2^7-2)

16777214(2^24-2)

B类

10

网.网.主.主

16384(2^14)

65534(2^16-2)

C类

110

网.网.网.主

2097152(2^21)

254(2^8-2)

D类

1110

组播地址

E类

11110

研究和试验用地址

A类地址:第一个8位二进制作为网络地址,且第一位二进制为0,格式为:0NNNNNNNN,余下7位,网络地址数为2^7,但是127不能用(保留做测试),又不能8位都为0(网络地址不能全为0),所以A类IP可用的网络地址数为“2^7-2”。后面3段各8位二进制作为A类的主机地址,共24位,又因为主机地址全为0时此IP表示网络地址,主机地址全为1时,此IP表示广播地址,所以总的可用主机地址为“2^24-2”。综上,A类IP可用IP地址数为“(2^7-2)*(2^24-2)”。B类、C类可依次类推。D类、E类不分配给计算机和网络设备。

几点总结:

1)只有A、B、C三类地址可以分配给计算机和网络设备

2)网络地址的第一个数字不能为127,保留用来做测试连接

3)网络地址不能全为0,也不能全为1

4)主机地址中不能全为0,也不能全为1;主机地址全为0用来表示网络地址,全为1用来表示广播地址

此外,规定一些专网IP不能在网络中使用:

10.0.0.0~10.255.255.255

1个A类地址段

172.16.0.0~172.31.255.255

16个B类地址段

192.168.0.0~192.168.255.255

256个C类地址段

菜鸟学IT之IP基础的更多相关文章

  1. 初入网络系列笔记(1)TCP/IP基础

    一.借鉴说明,本博文借鉴以下博文 1.BlueTzar,TCP/IP四层模型, http://www.cnblogs.com/BlueTzar/articles/811160.html 2.叶剑峰,漫 ...

  2. TCP/IP基础概念及通信过程举例

    TCP/IP基础概念及通信过程举例 出现 上个世纪60年代,由于中央集中式网络的容灾性较弱,以美国国防部为中心的一家组织研究出分组交换网络.后来为了验证分组交换技术的实用性,ARPANET出现了,并且 ...

  3. TCP/IP基础知识

    TCP/IP基础知识 网络 TCP/IP 引言 本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容 TCP/IP ...

  4. 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)

    菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven) 2012-02-04 13:11 by 虫师, 11419 阅读, 5 评论, 收藏, 编辑 之前我就讲过一种方试来搭 ...

  5. 从头开始学JavaScript 笔记(一)——基础中的基础

    原文:从头开始学JavaScript 笔记(一)--基础中的基础 概要:javascript的组成. 各个组成部分的作用 . 一.javascript的组成   javascript   ECMASc ...

  6. .Neter玩转Linux系列之四:Linux下shell介绍以及TCP、IP基础

    基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...

  7. 【TCP/IP 协议】 TCP/IP 基础

    总结 : 通过学习 TCP/IP 基础, 并总结相关笔记 和 绘制思维导图 到博客上, 对 TCP/IP 框架有了大致了解, 之后开始详细学习数据链路层的各种细节协议, 并作出笔记; 博客地址 : h ...

  8. 学unity3d需要什么基础

    学unity3d需要什么基础?在游戏业发展如火如荼的情境下,很多人开始转行投身于游戏程序开发,而unity3D游戏开发则是他们必须了解和会用的游戏开发工具.在学习之前又应该了解哪些内容呢? unity ...

  9. 菜鸟学IT之四则运算升级版

     菜鸟学IT之四则运算升级版 本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 团队代码github远程仓库的 ...

随机推荐

  1. Nginx+Python+uwsgi+Django的web开发环境安装及配置

    Nginx+Python+uwsgi+Django的web开发环境安装及配置 nginx安装 nginx的安装这里就略过了... python安装 通常系统已经自带了,这里也略过 uwsgi安装 官网 ...

  2. dev简单实现柱状图,曲线图

    1.数据源代码: DataTable dt = new DataTable(); dt.Columns.Add("A"); dt.Columns.Add("B" ...

  3. 在.NET Core控制台应用程序中使用强类型配置

    想象一下,你写一个控制台应用程序,你想要从配置文件中以强类型方式读取配置. .NET Core 可以帮助我们解决. 通常我会在ASP.NET Core MVC中演示,但简单起见,只在控制台应用程序中演 ...

  4. Android源码编译常见错误(持续更新)

    本文为个人工作中处理遇到的编译问题做个小结,后续遇到新的问题,持续更新. No such file or directory: 1. 检查路径是否有问题,文件是否存在,若文件存在且路径没问题 2. 检 ...

  5. PHP工厂模式

    class yunsuan { public $a; public $b; function suan() { echo "对两个数进行运算"; } } class jia ext ...

  6. mvc关于三级联动修改时数据回显

    在网上找了好久,都没有找到自己想要的那种效果,最后还是自己写出来了, 虽然方法有点笨. 这是Controller里 public ActionResult Edit(string id) { //查询 ...

  7. 基于 socket.io, 简单实现多平台类似你猜我画 socket 数据传输

    一.前言 socket.io 实现了实时双向的基于事件的通讯机制,是基于 webSocket 的封装,但它不仅仅包括 webSocket,还对轮询(Polling)机制以及其它的实时通信方式封装成了通 ...

  8. “使用多target来构建大量相似App”,唐巧大神理论验证(附工程代码地址)

    无意间看到巧神的文章时,感觉非常兴奋,此文章正好解决了公司目前项目的痛点. 读到以下关键一段时,不甚明了,故自己做了实验分享给有缘人. "我们的每个课程的资源文件都具有相同的文件名,例如首页 ...

  9. java基础:学生管理系统

    package com.lovo.manager; import java.util.Scanner; /** * 学生管理 * * @author 向往的生活 * */public class St ...

  10. Objective-C日记-之NSPredicate

    谓语:NSPredicate 1,概述: 用于设置指定的过滤器的条件,通俗的理解就是设置选择的条件,再对指定的对象应用这个条件 2,用法: a,首先设置谓语. NSPredicate *predica ...