我对互联网和网站运作的理解 – 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 ...
随机推荐
- Docker开始收费了,开始转学podman【第一篇podman容器的安装和基本操作】
podman 什么是Podman?Podman是无守护程序容器引擎,用于在Linux系统上开发,管理和运行OCI容器.容器可以以root用户或无根模式运行.简而言之:`alias docker = p ...
- PHP中引用的详解(引用计数、写时拷贝)
转载:https://blog.csdn.net/ljguo212/article/details/8972865 1. PHP中引用的特性 PHP中引用意味着用不同的名字访问同一个变量内容,引用不是 ...
- oeasy教您玩转vim - 51 - # 读写文件
读写文件 回忆上节课内容 命令行的光标控制 方向键️️️️️可以控制左右移动 shift+️️️️️按照word左右移动光标 ctrl+b 到开头begin ctrl+e 到结尾end ctrl+w ...
- oeasy教您玩转vim - 39 - # 剪切粘贴
剪切粘贴 回忆上节课内容 我们大幅度地复习了整个 motion: 直接运动 h j k l 行运动 首行g g 末行G 第n行n G 单词运动 wbe w 是到下一个 word 的开头 b 是到当 ...
- 第二章 编译FFmpeg并开启H.264编码
目录 前言 1. 下载x264 2. 编译x264 3. 编译FFmpeg 3.1 可能出现的问题和解决方法 3.1.1 ERROR: x264 not found using pkg-config ...
- openGL之多线程渲染
随着Vulkan的引入,我们的图形技术的发展到达了一个新的顶点,但是呢,我们的老干爹OpenGL作为落日余晖,他在一些Vulkan才有的新功能上,也提供了一些支持,现在我们来讨论一下OpenGL之多线 ...
- STM32开发环境配置记录——关于PlatformIO + VSCode + CubeMX的集成环境配置
前言 为什么配置这样的一个环境呢?鄙人受够了Keil5那个简陋的工作环境了,实在是用不下去,调试上很容易跟CubeMX的代码产生不协调导致调试--发布代码不一致造成的一系列问题.CubeIDE虽说 ...
- jmeter测试udp广播(jmeter发送udp)
jmeter测试udp广播(jmeter发送udp) jmeter测试udp广播(jmeter接收udp) 先下载安装第三方插件 下载链接:https://jmeter-plugins.org/ins ...
- 9、IDEA集成Github
9.1.登录Github账号 9.1.1.打开IDEA的Settings界面 如上图所示,打开IDEA的 Settings(设置)界面. 9.1.2.使用账号密码登录(方式一) 如上图所示,在&quo ...
- 【Vue】Re04 指令:第二部分
一.v-on指令 作用是用来将元素绑定事件监听器,触发特定的函数执行一定功能 关键字:事件监听 <!DOCTYPE html> <html lang="en"&g ...