当前位置:网站首页>ip地址那点事
ip地址那点事
2022-07-07 02:16:00 【爱琴孩】
计算机之间点对点的交流
正常情况下,你和我都有一台电脑,但是一台电脑所能做的事情是有限的,我们可能两台电脑之间为了做更多的事情,我们需要数据交互,我们可以通过U盘作为媒介,进行数据交换,但这样效率实在是太慢了,于是,为了提高效率,有人想到了一个好办法,我们在两台电脑之间插上数据线,通过数据线进行数据交互
有了这根数据线,或者叫网线,这个两台电脑就能进行数据交互了,但是,如果不止有两台电脑呢?有多台电脑的情况下,又该这么牵网线呢?
你发现了,如果每一台机器为了和其他机器通讯,那就得和那台机器建立连接,如果随着机器越来越多,那网线数目会是多么复杂,这肯定是无法接收的。
交换机
为了解决计算机之间点对点交流的复杂性,我们引入的交换机的概念
有了交换机之后,由交换机去分发来自每台机器的数据。这时候又有新的问题,在点对点的数据连接上,两台电脑如果想进行数据交互,只需从众多的数据线中找到对应的主机的数据线,但现在都发给交换机了。交换机应该怎么去分发数据呢?这就像应该没有填清楚具体地址的包裹一样,交换机就像快递公司,你给了快递公司,没给地址,那快递公司就不知道应该把包裹发给谁。快递公司只要有快递的地址就知道该把包裹发那儿,交换机也一样,我们可以为每一台机器分配一个IP地址。
有了IP地址之后,只需在发送的数据包里面加上对应主机的IP地址,那交换机就能根据居体的IP地址把数据发送到对应的机器。
局域网到广域网
通过交换机,我们可以让连接到交换机的计算机进行数据交流,假如这几台机器是你学校的电脑,你的学校想和隔壁学校进行业务合作,就需要彼此的电脑也进行数据交流,正好隔壁的电脑也是用的交换机进行数据交流,于是我们只要把两个学校的交换机连接,那两边的电脑就能相互访问了。
通过连接两台交换机,让两边的电脑能数据交流,之后如果还要加更多的局域网,那在把彼此的交换机进行连接
随着局域网的交换机优越来越多,交换机也像之前计算机之间点对点的连接那样复杂,于是在交换机之间又放入新的交换机。
就是这样,交换机越来越多,知道覆盖全世界,你只需进入其中任意一个节点,就能访问到全世界任意一条同样连接到网络的设计,这就构成了广域网。
你可以理解为:广域网就是无数的的局域网的结合。很明显,搭建这些网络肯定都是需要一笔不小的资金,搭建这些网络的公司被称为ISP互联网服务供应商,大家所熟悉的移动,电信和联通就是ISP供应商。
IPV4
互联网的每一台机器都需要一个IP地址才能彼此访问的,那首先我们得来聊聊IP地址的构成。IP地址一般说的是IPV4的IP地址,它是由32位构成,那IP地址能用的组合就是2的32次方,大于等于42.28亿。
为了方便记忆和输入,将每8个二进制分为一组,共4组,在转换为10进制
同时,还会对IP地址进行分类,一些地址作为特殊用途
最后真正可用的地址可能还没有42亿个。已知全球一共有70多亿的人口,就算不是每个人都会访问互联网,但是有很多人并不止一台设备,一个人可能有多台手机,电脑等等,如果要给每台设备都去分配一个IP,那这36亿的IP地址够用吗?完全不够。
NAT网络地址转换
为了解决IP不够用的问题我们使用了一项新的技术,NAT网络地址转换。假如有五台计算机,他们的IP地址是192.168.0.1----192.168.0.5,他们接入了同一台交换机,或者叫路由器,他们接入的这台交换机的广域网IP是6.6.6.6
如果这五台机器要向一台8.8.8.8的服务器发送数据,那NAT就会把这几台计算机原有的IP转换成6.6.6.6的ip向8.8.8.8发送数据,实现5台设备共用一个IP的效果。如果8.8.8.8这个交换机下面也挂载了很多设备,那这五台服务器都是按照8.8.8.8这个机器发送的,那有怎么发送到8.8.8.8下面挂载的具体设备呢?
端口映射
为了解决上面的问题,我们引入了一个新的概念,端口映射。我们可以在IP地址的后面加上一个端口,如图
比如192.168.0.1和6.6.6.6的1000端口绑定,另一边的192.168.0.1和8.8.8.8的500端口绑定,这样,如果6.6.6.6下挂载的机器想访问8.8.8.8下挂载的机器,只需要加上对应的端口就行了。
公网IP和私有IP
你如果打开cmd,输入ipconfig查看IP地址
你会看到ip地址是192.168开头的,为什么,刚刚提到,ip地址是不够用的,但为了使大多数的机器都能上网,我们通常是多台机器共用一个公网ip,你去百度搜索ip查询。
就能看见你当前设备所挂载的公网ip了。现在知道为什么很多ip都是192.168开头的了吧?因为这是挂载到了一个小的中转设备下的C类私有ip,这个私类IP依赖转换器的公网IP上网。
打个比如,公网IP就是你小区的名称,私网IP就是你住的楼层单元,假设全国小区名字都不重复,那根据小区名字,就可以找到你的大概位置,这就相当于根据公网IP定位到你具体的局域网,但是为了知道你具体位置,那还需要知道你是这个小区几单元几号,小区的几单元几号这就相当于私网IP,所以很多机器的私网IP都是重复的。
边栏推荐
- C语言整理(待更新)
- MySQL (x)
- Calculation model FPS
- LM small programmable controller software (based on CoDeSys) Note 23: conversion of relative coordinates of servo motor operation (stepping motor) to absolute coordinates
- Abnova 体外转录 mRNA工作流程和加帽方法介绍
- 力扣62 不同路径(从矩阵左上到右下的所有路径数量) (动态规划)
- Several key steps of software testing, you need to know
- Three updates to build applications for different types of devices | 2022 i/o key review
- MySQL(十)
- [Shell]常用shell命令及测试判断语句总结
猜你喜欢
String (explanation)
[SOC FPGA] peripheral PIO button lights up
The difference between string constants and string objects when allocating memory
Cloudcompare point pair selection
MySQL的安装
雷特智能家居龙海祁:从专业调光到全宅智能,20年专注成就专业
JMeter's own functions are not enough? Why don't you develop one yourself
拼多多败诉:“砍价免费拿”侵犯知情权但不构成欺诈,被判赔400元
Open the blue screen after VMware installation
Several key steps of software testing, you need to know
随机推荐
JVM in-depth
How to use wechat cloud hosting or cloud functions for cloud development of unapp development applet
360 Zhiyu released 7.0 new products to create an exclusive "unified digital workspace" for the party, government and army, and central and state-owned enterprises
开发者别错过!飞桨黑客马拉松第三期链桨赛道报名开启
Laravel uses Tencent cloud cos5 full tutorial
Unity C# 函数笔记
[Shell]常用shell命令及测试判断语句总结
C interview encryption program: input plaintext by keyboard, convert it into ciphertext through encryption program and output it to the screen.
「运维有小邓」符合GDPR的合规要求
Abnova循环肿瘤DNA丨全血分离,基因组DNA萃取分析
What are the classic database questions in the interview?
Matlab / envi principal component analysis implementation and result analysis
Doctoral application | Professor Hong Liang, Academy of natural sciences, Shanghai Jiaotong University, enrolls doctoral students in deep learning
C language (structure) defines a user structure with the following fields:
Can't you really do it when you are 35 years old?
string(讲解)
mobx 知识点集合案例(快速入门)
UIC(组态UI工程)公版文件库新增7款行业素材
The difference between string constants and string objects when allocating memory
C language sorting (to be updated)