我们做弱电监控系统的时候,都避免不了要跟IP地址打交道,比如摄像头、NVR、服务器等这些设备安装好之后,就需要给它们配上IP,那这个IP地址你了解嘛?今天我们就一起来聊聊什么是内网、公网和NAT地址转换?
1、内网、公网和NAT的定义

内网也叫局域网,从范围上来讲内网就是小部分的网络,一般指的是特定环境下组成网络,比如某一个家庭多台计算机互联成的网络,也可以学校和公司的大型局域网,内网的IP一般都是192.168.1.100,192.168.0.100,172.16.1.100……这些都是内网IP,内网是不能直接连接外网,比较封闭,但在内网里面可以实现文件管理,应用软件共享、打印机共享等服务。
什么是内网、公网和NAT?读懂这一篇就够!

外网又被叫做互联网,是连接不同地区局域网或者城域网计算机的通信的远程网络。通常可以跨接很大的物理范围,覆盖的范围可以是几十公里到几千公里,它能连接多个地区、城市和国家提供远距离通信,形成全球性的互联网络。
NAT被叫做地址转换技术,诞生于IP地址匮乏的年代,传统IPV4的公网地址已经枯竭,如果没有NAT地址转换技术,现在很多设备都是连接不上互联网的,很多人在公司上班或者在家里上网,电脑都会分配到一个192.168.1.100的私网地址,这种地址只适用于在局域网内通信,是出不了外网的,正是因为NAT技术的出现才使得内网地址能很方便的访问互联网。
什么是内网、公网和NAT?读懂这一篇就够!

2、内网和外网如何连接

内网和外网连接,除了需要硬件上的路由器或是防火墙设备支持,还需要事先配置好电脑和路由器等设备的IP地址,IP地址是32位的二进制数值,用于TCP/IP通讯协议中标记每台电脑地址,通常我们用点分十进制表示,比如192.168.1.100。互联网是由许多小型局域网组成,每个网络上都有很多主机,这样便构成了一个有层次的结构。IP地址在设计时就考虑到地址分配的层次特点,将每个IP地址分割为网络号和主机号两部分,方便IP地址的寻址操作。

①IP地址分类

IP地址可以划分为两个部分,网络号和主机号部分,网络号表示所属的网络段编号,主机号表示该网段中该主机的地址编号。IP地址可以分为A、B、C、D、E五类:

A类:0.0.0.0-127.255.255.255
B类:128.0.0.0-191.255.255.255
C类:192.0.0.0-223.255.255.255
D类:224.0.0.0-239.255.255.255
E类:240.0.0.0-247.255.255.255

其中A、B、C三类地址称为单播地址,用于标识一个终端设备的接口,而目的地址为单播地址的报文称为单播报文;D类地址称为组播地址,目的地址为组播地址的报文称为组播报文,某些设备启用了特定功能的接口可以收到对应组播地址的组播报文;E类地址暂时不用;还有一个特殊的地址是255.255.255.255,称为广播地址,广播报文可以被局域网内的所有设备接收。
IP地址中,有三段地址专门用于私网的规划,不能被用于互联网上的连接如下:

A类:10.0.0.0-10.255.255.255
B类:172.16.0.0-172.31.255.255
C类:192.168.0.0-192.168.255.255

也正是因为有了私网地址的出现,解决了局域网内电脑终端设备的IP问题,但也因为NAT技术的出现使得内网地址可以很方便访问互联网,但互联网地址访问内网终端设备很麻烦,想要访问需要做端口映射。

②端口映射

端口映射就是將外网主机的IP地址的一个端口映射到内网中的一台设备,提供相应的服务。当用户访问这个IP这个端口时,服务器自动将请求映射到对应局域网内部的终端设备上。配置的端口映射非常简单,进入路由器WEB界面配置内网IP地址以及映射的端口,外部端口和协议,配置好之后保存生效。
什么是内网、公网和NAT?读懂这一篇就够!

3、NAT应用

NAT主要功能是可以在内网配置私有IP地址,然后在路由或者防火墙等边界设备上统一转换为公网地址在访问互联网,这样就不需要为局域网内的每台终端设备配置公网IP地址,解决了公网IPV4地址枯竭的问题。
虽然NAT解决了IPV4地址枯竭的问题,但ANT技术本身也有自己的特点。NAT技术可以共享公有IP地址,还可以对终端用户透明,使得终端网络更加安全,但也会使边界路由器等设备处理量增加而导致性能下降,甚至还会阻碍合法程序的远程访问。从应用的角度来说,NAT的应用场景主要有以下3个方面:
多对1转换:这也是最常见的配置,既有很多的私有IP地址,只有一个公网IP地址,然后通过正常配置NAT使得一个小区或者一户家庭或者一个公司接入到互联网。
什么是内网、公网和NAT?读懂这一篇就够!

多对多转换:有很多的私有IP地址,对应很多的公网IP地址,谁先来使用,先转化,用完为止。
1对1转换:即是1对1的关系,1个公网地址对应1个私网地址,这种主要做端口的静态映射。
最后,做个小结我们通常说的内网就是特定环境下的局域网,比如家庭几台电脑设备连接的局域网,外网也被称为互联网,连接地区、城市和国家的互联网络,NAT技术的出现了解决了公网IP地址枯竭的问题,可以使电脑等终端设备通过配置私网IP就可以正常连接互联网。

一文读懂内网、公网和NAT的更多相关文章

  1. 脑残式网络编程入门(六):什么是公网IP和内网IP?NAT转换又是什么鬼?

    本文引用了“帅地”发表于公众号苦逼的码农的技术分享. 1.引言 搞网络通信应用开发的程序员,可能会经常听到外网IP(即互联网IP地址)和内网IP(即局域网IP地址),但他们的区别是什么?又有什么关系呢 ...

  2. 即时通讯新手入门:一文读懂什么是Nginx?它能否实现IM的负载均衡?

    本文引用了“蔷薇Nina”的“Nginx 相关介绍(Nginx是什么?能干嘛?)”一文部分内容,感谢作者的无私分享. 1.引言   Nginx(及其衍生产品)是目前被大量使用的服务端反向代理和负载均衡 ...

  3. 一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现

    一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现 导读:近日,马云.马化腾.李彦宏等互联网大佬纷纷亮相2018世界人工智能大会,并登台演讲.关于人工智能的现状与未来,他们提出了各自的观点,也引 ...

  4. kubernetes基础——一文读懂k8s

    容器 容器与虚拟机对比图(左边为容器.右边为虚拟机)   容器技术是虚拟化技术的一种,以Docker为例,Docker利用Linux的LXC(LinuX Containers)技术.CGroup(Co ...

  5. 一文读懂HTTP/2及HTTP/3特性

    摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作,当然兼容问题以及如何 ...

  6. 一文读懂高性能网络编程中的I/O模型

    1.前言 随着互联网的发展,面对海量用户高并发业务,传统的阻塞式的服务端架构模式已经无能为力.本文(和下篇<高性能网络编程(六):一文读懂高性能网络编程中的线程模型>)旨在为大家提供有用的 ...

  7. 从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路

    本文原作者阮一峰,作者博客:ruanyifeng.com. 1.引言 HTTP 协议是最重要的互联网基础协议之一,它从最初的仅为浏览网页的目的进化到现在,已经是短连接通信的事实工业标准,最新版本 HT ...

  8. [转帖]MerkleDAG全面解析 一文读懂什么是默克尔有向无环图

    MerkleDAG全面解析 一文读懂什么是默克尔有向无环图 2018-08-16 15:58区块链/技术 MerkleDAG作为IPFS的核心数据结构,它融合了Merkle Tree和DAG的优点,今 ...

  9. [转帖]一文读懂 HTTP/2

    一文读懂 HTTP/2 http://support.upyun.com/hc/kb/article/1048799/ 又小拍 • 发表于:2017年05月18日 15:34:45 • 更新于:201 ...

随机推荐

  1. [技术博客] SPRINGBOOT自定义注解

    SPRINGBOOT自定义注解 在springboot中,有各种各样的注解,这些注解能够简化我们的配置,提高开发效率.一般来说,springboot提供的注解已经佷丰富了,但如果我们想针对某个特定情景 ...

  2. Mysql模糊查询like提速优化

    LOCATE('substr',str,pos)方法 SELECT LOCATE('xbar',`foobar`); ###返回0 SELECT LOCATE('bar',`foobarbar`); ...

  3. dubbo连接过程

    场景1 启动时 dubbo服务提供端在Zookeeper上注册的节点目录:假设接口名称是:com.bob.dubbo.service.CityDubboService dubbo服务提供端连接到注册中 ...

  4. nginx https 转发

    add_header Content-Security-Policy upgrade-insecure-requests;

  5. 【451】python 同一行打印进度条

    参考:Python3 Print 同一行打印显示进度条效果 参考:\r\n, \r and \n what is the difference between them? [duplicate] 参考 ...

  6. 【数据集】FDDB-Face Detection Data Set and Benchmark

    前言 参考 1. FDDB官网: 完

  7. RTSP Spectification

    Refer: https://www.ietf.org/rfc/rfc2326.txt Network Working Group H. SchulzrinneRequest for Comments ...

  8. go 代码玩耍

    //小游戏 num := rand.Intn() var input int fmt.Println("请输入数字") fmt.Scanf("%d", & ...

  9. 错误: 找不到或无法加载主类 java操作hbase出错

    用java操作hbase 利用maven引入hbase包后发现无法启动程序,然后网上说是包的冲突. 我引入了下面三个包然后程序就不能运行了. <dependency> <groupI ...

  10. 通过TopShelf简单创建windows service

    目前很多项目都是B/S架构的,我们经常会用到webapi.MVC等框架,实际项目中可能不仅仅是一些数据的增删改查,需要对数据进行计算,但是将计算逻辑放到api层又会拖累整个项目的运行速度,从而会写一些 ...