关于公网IP、内网IP和NAT转换「建议收藏」

关于公网IP、内网IP和NAT转换「建议收藏」1、每台电脑都必须要一个公网IP吗?答案:不是。  我们都知道,IPv4中的IP地址的数量是有限的(所以现在都在搞IPv6),每次把一部分地址分配出去,那么就意味着能够用来分配的IP地址就更少了,而且随着现在手机,电脑等的快速发展,如果每个手机或者电脑都要求一个IP地址,那么显然IP地址是不够用的。  为了解决这个问题,可以采取这样的策略:例如对于一个公司来说,每个公司都会有一个属于自…

大家好,又见面了,我是你们的朋友全栈君。

1、每台电脑都必须要一个公网IP吗?

答案:不是。

  我们都知道,IPv4中的IP地址的数量是有限的(所以现在都在搞IPv6),每次把一部分地址分配出去,那么就意味着能够用来分配的IP地址就更少了,而且随着现在手机,电脑等的快速发展,如果每个手机或者电脑都要求一个IP地址,那么显然IP地址是不够用的。

  为了解决这个问题,可以采取这样的策略:例如对于一个公司来说,每个公司都会有一个属于自己公司的内网(也可以称之为局域网)。

  内网(学名应叫局域网(Local Area Network,LAN))是在一个局部的地理范围内,一般可以是几米内(比如家庭内网),也可以是方圆几千米以内(比如一个大学内网),将各种计算机、外部设备和数据库等互相联接起来组成的计算机通信网。

2、内网主要作用有:

  1) 共享传输信道:简单地理解就是不需要每台电脑一个外网IP地址;

  2) 传输速率高:内网之间的电脑因为没有外网网络拓扑的复杂性,所以互相通信的网络可以很快,比如从一个台电脑向另一台电脑复制一个几G的文件可能只需要数十秒时间。

  3) 误码率低:因为通信距离很近,所以误码率很低,换句话说就是网络很稳定

3、公司的内网是如何实现内网IP地址分配和管理的?

  假如我们给这个公司A分配了一个IP=192.168.1.1。我们把这个IP作为这个公司内网的网关吧。

在公司A的内网里面有3台电脑,如果这三台电脑要上网的话,我们需要给他分配一个IP,那么就像上一节提到的:我们一定需要去申请3个IP地址来使用吗?

  答否。不一定需要去申请3个IP的,在我们这个内网里,我们可以指定自己的规则,例如,我们可以给这三台电脑随便分配三个IP(请注意,这三个IP不是去申请的,而且随意给它分配的)。分别分配电脑A = 192.168.1.2 电脑B = 192.168.1.3 电脑C = 192.168.1.4。

而这个规则可以由我们的内网网关来管理,就像下面这样:

关于公网IP、内网IP和NAT转换「建议收藏」

点击此处添加图片说明文字

 ​

4、NAT技术:实现内网电脑访问外网的能力

  假如电脑A想要访问百度,百度的IP我们假设为:172.168.30.3:
我们都知道,电脑A的IP是虚构的,实际上可能并不存在这样一个IP,如果用电脑A的IP去访问百度,那肯定行不通。

  由于百度和电脑A不在一个局域网内,所以A要访问百度,那么必须得经过网关。而网关的这个IP地址,是真实存在的,是可以访问百度的。

  为了让 A 可以访问百度,可以采取这样的方法:让网关去帮助 A 访问,然后百度把结果传递给网关,而网关再把结果传递给 A。

  不过电脑A、B、C都可能拜托网关去帮忙访问百度,而百度返回的结果 的目的IP都是网关的IP=192.168.1.1。那么网关该如何进行区分这结果是A的、B的还是C的呢?

  我们去访问百度的时候,是需要指定一个端口,我们可以把 A的IP + 端口 映射成 网关的IP+端口,就可以唯一确定身份了。

  例如A用端口60去访问百度,网关把 A的IP+端口60 映射成 网关的IP+端口80 。

关于公网IP、内网IP和NAT转换「建议收藏」

点击此处添加图片说明文字

 ​

  百度把结果返回给网关的80端口之后,网关再通过映射表,就可以把结果返回给 A的60端口 了。

  如果B也是用60端口去访问百度的话,也是一样,可以把它映射到90端口。

  这种方法地址的映射转换,也称之为网络地址转换,英文为 Network Address Translation,简称NAT。

  像A、B、C这样的IP地址就称之为内网IP;而像网关,百度这样的IP称之为外网IP(即互联网公网IP)。

  为了解决IP地址短缺,技术专家们发明了内网技术,而内网技术的理论支撑就是NAT技术。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/135748.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • linux中查看网卡型号的命令[通俗易懂]

    linux中查看网卡型号的命令[通俗易懂]linux中查看网卡型号的命令

    2022年10月18日
  • Android opencv人脸识别

    Android opencv人脸识别opencv人脸识别Androidopencv人脸识别图片:![在这里插入图片描述](https://img-blog.csdnimg.cn/2019012214185895.png//开始人脸检测publicvoidstart(){n_Start();}//停止人脸检测publicvoidstop(){n_Stop();}//设…

  • 基因的可变剪切_如何确认发现了可变剪切

    基因的可变剪切_如何确认发现了可变剪切什么是基因的可变剪切?有些基因的前体mRNA(pre-mRNA)通过不同的剪接方式(选择不同的剪接位点)产生不同的mRNA剪接异构体,这一过程称为可变剪接(或者选择性剪切)(AlternativeS

  • 自动化测试理论[通俗易懂]

    自动测试并不会在一开始就减少测试人员的工作量、缩短测试时间。自动化测试只能当做是手工测试的补充。毕竟一个项目引入自动化,需要测试人员熟悉这个工具,而且有很多时候不是一个工具就能解决。其次自动化执行的内容也是需要测试人员去编写和考量的,这个过程需要时间。最后就是对自动测试执行后的结果分析,也是需要人自己来做的。1.一些可以自动执行的测试用例:需要多次执行的测试。相反,只执行一次的测试工作一…

  • MAC NavicatPremium15 永久激活码[免费获取]

    (MAC NavicatPremium15 永久激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html…

  • Q学习和深度Q学习(DQN)论文笔记「建议收藏」

    Q学习和深度Q学习(DQN)论文笔记「建议收藏」Q学习(Q-learning)强化学习中有个很重要的递归关系,贝尔曼方程(BellmanEquation):Qπ(st,at)=E[r+γE[Qπ(st+1,at+1)]]Q^\pi(s_t,a_t)=E[r+\gammaE[Q^\pi(s_{t+1},a_{t+1})]]Qπ(st​,at​)=E[r+γE[Qπ(st+1​,at+1​)]]这个公式实际上也揭露了状态的马尔科夫性质,也…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号