【好玩的网络】系列面向普通人的网络科普视频。我在我的哔哩哔哩账号(up主:旋律果子)更新【好玩的网络】视频版,在我的知乎(用户:曾彦)专栏更新【好玩的网络】文字版。最新消息以及预告在我的个人网站www.yzeng1995.top发布,大家可以关注我的哔哩哔哩(旋律果子)和知乎账号(曾彦)。其中,我的知乎专栏欢迎网络爱好者的投稿以及补充。
大家好,我是你们的小伙伴,果子。第3期视频我们讲解了路由与nat,了解到了局域网内部主机是通过源IP地址转换技术SNAT,共享一个公网IP地址访问公网。在我们的演示中,要实现公网访问,必须使用IP地址。不知道大家有没有注意到,当我使用ping命令发送给百度时,我们ping的并不是百度的IP地址,而是百度的域名,http://baidu.com。那我们是如何知道百度的IP地址呢?这个就要靠我们今天要讲的dns服务器了。
1.Dns简介
dns的全称是domain name system,也叫域名解析系统。Dns的主要作用就是帮助我们把域名解析为IP地址,以实现对公网的访问。我们可以在电脑的网络配置页面查看到我们正在使用的dns服务器。例如,我现在正在使用的dns服务器就是202.103.24.68。
Dns服务器的作用理解起来很简单,例如我想访问http://baidu.com,那么系统会把包含http://baidu.com的信息发送给dns服务器,dns服务器就会给我们返回http://baidu.com的IP地址信息,这样我们就可以顺利和百度通讯了。我们当然也可以使用IP地址直接访问百度。
2.本地的“dns”,host文件
在操作系统中,除了可以通过dns服务器解析域名之外,还有一个非常重要的文件也可以解析域名,就是传说中的hosts文件。我们可以在这些文件夹找到hosts文件。我们先来看看这个文件当中有哪些信息吧?
我们可以看到,hosts文件中有2列,第一列记录着IP地址信息,第二列记录着域名信息,其实hosts文件就是域名信息和Ip地址信息的映射表。hosts的作用和dns类似,也是通过域名解析出IP地址,只不过是在我们本地进行,而且解析优先级比dns还要高。也就是说系统会首先查找hosts文件里是否有域名的解析信息,如果没有查询到,才会走第二步,继续在dns服务器中查询。
那么问题来了,如果我看B站不爽,我一眼都不想看到他,三连这么少,我看着他就烦,于是我想把b站屏蔽掉,眼不见心不烦。那么我该如何实现呢?非常简单,我们只需要在host文件中添加一行,将B站的域名解析到本地环回地址127.0.0.1就完成了。这样当我们访问B站域名时,我们实际上是访问的本机。当然本机不可能是B站啦~~这样我们就把B站给屏蔽啦~~(表情包,不干啦)哎呀,投稿要紧,投稿要紧啊!
3.dns记录
Dns服务器能解析哪些信息呢?我们直接打开dns服务器来看一下吧!我们点击添加记录,在记录类型这一列打开下拉菜单,可以看到,列表中有很多记录类型。其中我们最常用的是A记录,以及AAAA记录,CNAME记录等。其中A记录和AAAA记录都是将域名直接解析成IP地址,不过A记录解析为ipv4地址,AAAA记录解析为ipv6地址。例如,dns服务器将域名www.yzeng1995.top解析到ipv4地址129.28.34.208;将aws解析到一个2600开头的ipv6地址。
CNAME记录是将域名解析到另外一个域名,这个记录在使用CDN时会经常用到,例如dns服务器将picture域名指向我使用的CND服务器的域名。当然,如果记录是CNAME,有可能会跳转到其他dns服务器继续解析,直到解析出最终的IP地址。
CDN的全称为Content Delivery Network,也叫内容分发网络,主要功能是提供存储以及提供全世界用户快速上网,小破站能实现这么多人同时访问看视频而服务器不崩溃,就是因为使用了CND,这个以后有机会再讲。
4.ddns简介
dns服务器的主要目的是将域名解析为IP地址。如果服务器使用的是固定公网IP地址,那么非常方便,只需要在dns管理界面修改一次解析记录即可完成。但是如果IP地址一直在变化呢?例如我们的家庭网络,获取到的都是动态公网IP地址,每次IP都不一样,如果想从公网访问家庭服务器,我们不可能每次都到dns中去手动修改IP地址,而且我们也很难及时知道IP地址什么时候发生了变化,这个时候ddns就登场了。
Ddns的全称为dynamic domain name server,也叫动态域名解析系统,其主要作用是实现自动更新dns服务器上的ip地址。这样,当服务器IP地址发生变化时,我们只需要记住域名,就可以很轻松的从公网访问我们的服务器和nas了。
5.总结
出了这么多期视频,一直以来,非常感谢大家的支持,在第三期的结尾,我答应过大家,点赞数量超过300就出一期视频介绍ddns。我也没想到那期视频能火起来,足足有1w5的播放量。为了感谢支持我的小伙伴,下一期就满足大家,我会把我自己编写的ddns程序,免费开源分享给大家,并介绍如何使用。在linux系统和macOS系统的初始环境就能运行,几乎不需要安装依赖。运行的场所也不受限制,只需要在网关,路由器,或者内网任意一台主机运行此程序,就可实现 ddns。
另外,我建立了一个qq交流群(1084369522),群号请看置顶评论,大家可以在群里交流,有很多大佬回答大家的问题,希望能帮助到大家。
再次感谢大家的支持,因为是学生,经济来源也很少,做视频也就是为了一个乐趣,希望大家能点点关注,点点收藏,我会分享更多的干货。你们的支持是我更新最大的动力。
原文链接:https://blog.csdn.net/weixin_39588911/article/details/110668638