我对互联网和网站运作的理解 – Domain, DNS, Hosting 介绍
前言
一直没有写过关于互联网和网站运作的原理相关文章. 这篇就稍微介绍一下它们.
1. 电脑文件
网站是由许多网页组成的, 网页就是电脑里的 file.
extension 是 .html
类似于 .mp3 = 歌曲, mp4 = 视频, .html = 网页
2. HTML player
想听歌就要有播放器, 比如 mp3 我的年代的播放器是千千静听.
mp4 则需要视频播放器
html 也需要网页播放器, 它就是 browser 游览器 (Chrome, Safari, Firefox, Edge)
3. lan cable
有 file, 有 player, 单机就可以自己玩了, 好比单机游戏一样, 但是这样显然不够好玩.
所以后来就有了区域网的概念, 把 2 台电脑用 lan cable 连上, 它们就可以互相传输信息.
比如从 PC A copy 一个 file paste to PC B.
4. IP Address
多台电脑连接在一起, 就要搞清除谁是谁, 所以就有了 IP address. 每台电脑都有自己专属的 IP address.
打开 cmd 输入 ipconfig/all 就可以看见电脑的 IP address 了

192.168.1.152 就是我电脑的地址, 192.168.1.1 是路由机器 (router) 的地址.
假设有 5 台电脑, 每一台都有一条 lan cable, 大家都插入链接到一个路由器.
这时就可以通过找 IP 找到指定的 PC, 然后 copy paste 文件了 (当然它需要 permission 啦)
注: 这里补上一个以前听过的知识, 当一台电脑发送信息时, 它会发给所有的电脑, 但是只有指定的电脑会接受, 其它的会拒接接受. 它的原理好像是这样的
5. Wireless / Wifi
lan cable 太丑了, 所以后来就做无线了, 靠电波, 但是它的运作是一样的.
6. Internet
如果只是一家人玩还不够爽, 如果可以把整个城市都连起来更爽.
显然这不是买个 router 就能解决的问题了. 要很大的 router, 而且不可能放在家里, 肯定是放到城中心, 还要守卫之类的.
所以就有了大型企业或者政府去做这个事情了. 马来西亚是 TM net 公司在做.
7. Fixed IP Address
试想想整个城市 / 国家都连起来以后, 电脑超级多, IP 超级多. 肯定就不够数了.
所以 IP 是 dynamic 的, 你 restart router 以后, 电信台就会给你一个新的 IP.
这就导致了一个问题, 你电话号码经常换的话, 别人怎么找你啊? 于是就有了 Fixed IP, 当然这需要额外付费向电信台买.
8. Hosting / Web Server
我的公司做了一个网站, 里面就是很多的 .html 文件.
我把这些 files 放到公司电脑里, 然后买 Fixed IP. 这样世界各地的人就可以通过 IP 链接到这台电脑.
然后 copy / paste (download) 这些 files 到他们的电脑里. 然后通过他们电脑里的 player (browser) 打开这个 .html files 就可以看到我公司的网页资料了.
公司的这台电脑就叫 hosting 或者 web server.
9. Domain
谁愿意记我公司的 IP Address 呢, 所以 IP to Name (Domain) 就很自然的诞生了.
域名必须确保是 unique 的, 不然就会找错电脑了. 所以需要有机构去管理. 要一个专属名字就需要买.
Fixed IP 要买, Domain 也要买.
10. DNS
在游览器输入一个域名以后, 它是如何知道这个域名对应到哪个 IP 呢?
这个和电话簿类似, 电脑里面也是有一个这样的电话簿, 叫 host file. 它记入了什么 domain 对应什么 IP address.
可是电话簿是我们自己输入的, 这对互联网来说是很不方便的, 想象我需要知道某个公司的名字和 IP address 然后写入电脑的电话簿, 我才能打开它的网站.
虽然打电话我们可以接受这样的流程, 但是互联网可接受不了.
所以就有了 DNS, 它就是一个大的电话簿.
ipconfig/all 会记入当前电脑链接的电话簿, 这个 8888 是 Google 的电话簿, 里面记入了每个 domain 链接到的 DNS

TODO... 未完待续...
host file
https://www.howtogeek.com/howto/27350/beginner-geek-how-to-edit-your-hosts-file/
我对互联网和网站运作的理解 – Domain, DNS, Hosting 介绍的更多相关文章
- Java基础(49):快速排序的Java封装(含原理,完整可运行,结合VisualGo网站更好理解)
快速排序 对冒泡排序的一种改进,若初始记录序列按关键字有序或基本有序,蜕化为冒泡排序.使用的是递归原理,在所有同数量级O(n longn) 的排序方法中,其平均性能最好.就平均时间而言,是目前被认为最 ...
- Java基础(48):归并排序的Java封装含原理,完整可运行,结合VisualGo网站更好理解)
原理: 归并排序建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用. 将已有序的子序列合并,得到完全有序的序列:即先使每个子序列有序, ...
- Linux运维之每日小技巧-检测网站状态以及PV、UV等介绍
[root@ELK-chaofeng07 httpd]# curl -o /dev/null -w %{http_code}\\n -s www.baidu.com 状态码为200表示成功. PV.U ...
- 详析静态网站与动态网站区别(服务器ip dns 端口)
几个基本知识 1.服务器:能够提供服务的机器 取决于机器上所安装的服务软件 1) web服务器:提供web服务(网站访问) 就需要安装web服务软件,Apache,tomcat,iis等 2. ...
- 网站开发学习Python实现-Django学习-介绍(6.1.1)
@ 目录 1.MVT 2.ORM 关于作者 1.MVT 主要的目的是为了快速,简便的开发数据库驱动的网站,强调代码的复用,多个组件可以很方便以插件的方式服务于整个框架,采用的是MVT设计模式(差不多的 ...
- 网站与域名知识扫盲-DNS
域名概述 域名的概念 IP地址不易记忆 早期使用Hosts解析域名 主机名称重复 主机维护困难 DNS(Domain Name System 域名系统) 分布式 层次性 域名空间结构 根域 组织域[. ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_6-2.申请微信支付介绍和不同场景的支付方式
笔记 2.申请微信支付介绍和不同场景的支付方式 简介:介绍微信商户平台,支付方式和使用场景,申请微信支付流程 1.什么是微信商户平台: ...
- 大型网站的灵魂——性能
前言 在前一篇随笔<大型网站系统架构的演化>中,介绍了大型网站的演化过程,期间穿插了一些技术和手段,我们可以从中看出一个大型网站的轮廓,但想要掌握设计开发维护大型网站的技术,需要我 ...
- 关于大型网站技术演进的思考(十九)--网站静态化处理—web前端优化—上(11)
网站静态化处理这个系列马上就要结束了,今天我要讲讲本系列最后一个重要的主题web前端优化.在开始谈论本主题之前,我想问大家一个问题,网站静态化处理技术到底是应该归属于web服务端的技术范畴还是应该归属 ...
- 深入理解HTML5:语义、标准与样式(勇猛精进早登大师殿堂创最优品质交互)
深入理解HTML5:语义.标准与样式(勇猛精进早登大师殿堂创最优品质交互) [美]布拉德福(Bradford,A.) [美]海涅(Haine,P.)著 高京译 ISBN 978-7-121-20552 ...
随机推荐
- linux 查看crontab任务执行情况
首先创建一个定时任务,例如: */1 * * * * /usr/bin/curl http://******/admin/Keeperclock/keeper >> /data/wwwro ...
- 「图论」Bron-kerbosch算法
7.21晚上加赛 T2.七负我,做这题找到了性质发现需要求最大团,不会,爆搜,打假了,赛后改,对了,但时间复杂度大爆炸,看下发题解,有这么一句话:于是学习了一下. Bron-kerbosch算法-求图 ...
- adb shell 批处理文件
adb shell 批处理文件 手机截屏,并把图片传到电脑
- 【Git】Gitee 码云的使用
1.注册.登陆.设置配置 以上步骤省略,不需要太多指示操作 2.配置SSH公钥: 先进入自己的用户目录下面 C:\Users\Administrator\ 然后右键空白位置[Git Bash Here ...
- 【Layui】15 日期时间选择器 Laydate
文档地址: https://www.layui.com/demo/laydate.html [基本案例] 基本日期与国际日期 <fieldset class="layui-elem-f ...
- 【转载】 TensorFlow之name_scope/variable_scope
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/u013745804/article/de ...
- Google在放弃Tensorflow后推出Google版本的Pytorch框架 —— Jax
相关: 谷歌放弃TensorFlow了 虽然在某种上来说,Google已经放弃了Tensorflow框架,但是由于Tensorflow的历史地位所造成的遗留应用,因此Tensorflow框架已经处于维 ...
- Ubuntu Server无桌面无显示器情况下虚拟屏幕xvfb的安装及设置—ubuntu18.04server服务器系统下为python安装虚拟显示器 (使用jupyter notebook在web端播放openai的gym下保存的运行视频——需安装ipython)
1. 安装xvfb sudo apt-get install xvfb Xvfb是流行的虚拟现实库,可以使很多需要图形界面的程序虚拟运行. 2. 安装pyvirtualdisplay pyvirtu ...
- error while loading shared libraries: libxml2.so.2: cannot open shared object file 解决方法
参考: https://blog.csdn.net/qq_39779233/article/details/128215517 ==================================== ...
- 增强用户体验:2个功能强大的.NET控制台应用帮助库
前言 对于.NET开发者而言,构建控制台应用程序时,如何提升用户交互的流畅性和满意度,是一个持续探索与优化的话题.今天大姚给大家分享2个功能强大的.NET控制台应用帮助库,希望可以帮助大家能够快速的构 ...