一文读懂内网、公网和NAT
我们做弱电监控系统的时候,都避免不了要跟IP地址打交道,比如摄像头、NVR、服务器等这些设备安装好之后,就需要给它们配上IP,那这个IP地址你了解嘛?今天我们就一起来聊聊什么是内网、公网和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?读懂这一篇就够!
内网和外网连接,除了需要硬件上的路由器或是防火墙设备支持,还需要事先配置好电脑和路由器等设备的IP地址,IP地址是32位的二进制数值,用于TCP/IP通讯协议中标记每台电脑地址,通常我们用点分十进制表示,比如192.168.1.100。互联网是由许多小型局域网组成,每个网络上都有很多主机,这样便构成了一个有层次的结构。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?读懂这一篇就够!
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的更多相关文章
- 脑残式网络编程入门(六):什么是公网IP和内网IP?NAT转换又是什么鬼?
本文引用了“帅地”发表于公众号苦逼的码农的技术分享. 1.引言 搞网络通信应用开发的程序员,可能会经常听到外网IP(即互联网IP地址)和内网IP(即局域网IP地址),但他们的区别是什么?又有什么关系呢 ...
- 即时通讯新手入门:一文读懂什么是Nginx?它能否实现IM的负载均衡?
本文引用了“蔷薇Nina”的“Nginx 相关介绍(Nginx是什么?能干嘛?)”一文部分内容,感谢作者的无私分享. 1.引言 Nginx(及其衍生产品)是目前被大量使用的服务端反向代理和负载均衡 ...
- 一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现
一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现 导读:近日,马云.马化腾.李彦宏等互联网大佬纷纷亮相2018世界人工智能大会,并登台演讲.关于人工智能的现状与未来,他们提出了各自的观点,也引 ...
- kubernetes基础——一文读懂k8s
容器 容器与虚拟机对比图(左边为容器.右边为虚拟机) 容器技术是虚拟化技术的一种,以Docker为例,Docker利用Linux的LXC(LinuX Containers)技术.CGroup(Co ...
- 一文读懂HTTP/2及HTTP/3特性
摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作,当然兼容问题以及如何 ...
- 一文读懂高性能网络编程中的I/O模型
1.前言 随着互联网的发展,面对海量用户高并发业务,传统的阻塞式的服务端架构模式已经无能为力.本文(和下篇<高性能网络编程(六):一文读懂高性能网络编程中的线程模型>)旨在为大家提供有用的 ...
- 从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路
本文原作者阮一峰,作者博客:ruanyifeng.com. 1.引言 HTTP 协议是最重要的互联网基础协议之一,它从最初的仅为浏览网页的目的进化到现在,已经是短连接通信的事实工业标准,最新版本 HT ...
- [转帖]MerkleDAG全面解析 一文读懂什么是默克尔有向无环图
MerkleDAG全面解析 一文读懂什么是默克尔有向无环图 2018-08-16 15:58区块链/技术 MerkleDAG作为IPFS的核心数据结构,它融合了Merkle Tree和DAG的优点,今 ...
- [转帖]一文读懂 HTTP/2
一文读懂 HTTP/2 http://support.upyun.com/hc/kb/article/1048799/ 又小拍 • 发表于:2017年05月18日 15:34:45 • 更新于:201 ...
随机推荐
- [Beta]Scrum Meeting#3
github 本次会议项目由PM召开,时间为5月8日晚上10点30分 时长15分钟 任务表格 人员 昨日工作 下一步工作 木鬼 撰写博客整理文档 撰写博客整理文档 swoip 改进界面 改进界面 bh ...
- Linux上DNS解析总是选择resolv.conf中第二位的DNS服务器IP地址
问题现象: 在Linux机器上,用户自建了一台DNS服务器.然后改动/etc/resolv.conf将其服务器IP地址添加到第一项.将阿里云的内网DNS放到第二位,然而在测试过程中发现telnet,p ...
- mstar安卓智能电视方案源代码常用修改
优先 替换 Supernova\projects\customerinfo\inc\Customer_Info.h替换 内核中linux/drivers/mmc/core/mmc.c文件 1, key ...
- PHP打印日志类
PHP简单封装个打印日志类,方便查看日志: <?php /** * Created by PhpStorm. * User: zenkilan * Date: 2019/9/26 * Time: ...
- dubbo如何解决循环依赖的问题
在分布式项目中,A调用B, B再调用A,或者A调B,B调用C,C再调用A,形成一个环路时,就会出现循环依赖的问题, 当启动A服务时,需要B服务暴露的接口,找不到就会抛异常,B服务启动时,需要同样需要 ...
- kubernetes之kube-proxy运行机制分析
在kubernetes集群的每个node都会运行一个kube-proxy服务进程,这个进程可用看作Service的透明代理兼负载均衡器.其核心功能是将到某个Service的访问请求转发到后端的多个po ...
- 【论文阅读】3DMM-A Morphable Model for The Synthesis of 3D Faces
前言 参考 1. 2. 完
- Python unittest(PyUnit)单元测试框架
PyUnit(unittest) 是 Python 自带的单元测试框架,用于编写和运行可重复的测试.PyUnit 是 xUnit 体系的一个成员,xUnit 是众多测试框架的总称,PyUnit 主要用 ...
- 【Python】解决使用pyinstaller打包Tkinker程序报错问题
问题描述 使用pyinstaller打包使用Tkinter编写的控制台程序,出现报错 15793 INFO: Adding Microsoft.Windows.Common-Controls to d ...
- 【springboot】【idea】实体类免写get、set等方法,使用lombok依赖和插件的@Data类注解
需求,一个实体类,规范写法一定要对应的get.set方法,有必要还要重写toString方法.虽然可以快速生成get.set等方法,但是如果要添加或减少成员属性时就得重新生成get.set等方法. 而 ...