各位看官请注意:
此文章涉及本姑娘个人信息,文章公开代表逛到这里的人可以看,但并不代表我同意被传播。
作为一个伪技术人员,灰姑娘用的 IDE 大概是不那么流行的 VSCode。全称 Visual Studio Code ,微软家近两年才推出来的一个产品。
这个 IDE 的整个软件界面以及使用都和 Atom 非常相像,它本身比较轻量,但又可以安装很多扩展插件以满足使用者的需要。虽然对过去使用老古董 Ultra Edit 的我来说,刚上手着实有些不习惯,但是用久了之后还是觉得不错的。(尽管我用 IDE 的频率不高。。
最近,同事希望我给 DNS 解析流程画个 UML 图,并推荐了一个通过脚本语言生成 UML 图的开源项目: PlantUML 。
上网搜索后发现,可以不需要下载这个项目的 APP ,很多编辑器都有它的插件。但是我翻了好久,并没有看到基于 VSCode 的实际应用示例。
我在 VSCode 上搜到这个扩展插件之后,环境部署还很折腾了一会儿。遂将一些经验在此分享给大家,希望能对其他路过的人有所帮助。
上一篇文章《使用公共 DNS 上网的弊端(一)》我讲到当我们使用公共 DNS 上网时可能会因为该 DNS 的出口与本地实际网络所属区域和运营商不一致而导致调度不准,进而影响连接速度可能变慢。这篇文章同时发到了咱们 CloudXNS 的微信公众号上,不少小伙伴与我们产生了互动。
有的小伙伴就问到:“如果是支持 Edns-Client-Subnet 的公共 DNS,还会存在我说的问题吗?”
不得不佩服小伙伴们的学识!(比灰姑娘可厉害多了……
作为资深网民的我们都知道,本地 DNS 是非常重要的,它能决定你到底能不能上网。
由于本地运营商 DNS 常常被大家诟病容易遭到劫持等风险,使得很多人选用公共 DNS 来作为本地上网用的 DNS ,例如 114DNS 、阿里 DNS 等。
但是,喜欢用公共 DNS 的你,知道公共 DNS 在上网时会有什么弊端吗?
我们知道, DNS 是同时占用 UDP 和 TCP 的 53 端口传输数据的,这种单个应用协议同时使用两种传输协议的情况,在 TCP/IP 栈中也算是个异类。
当我们在使用 tcpdump 、 WireShark 等抓包工具分析时,会发现几乎所有的 DNS 应用都是在使用 UDP 传输。
那么,为什么 DNS 还要占用 TCP 的端口,到底什么情况下才会用到 TCP 呢?
2017 年 3 月 7 日, CA|B Forum (一个全球证书颁发机构与浏览器的技术论坛)发起了一项关于对域名强制检查 CAA 的一项提议的投票,获得 187 票支持,投票有效,提议通过。
提议通过后,将于 2017 年 9 月 8 日根据 Mozilla 的 Gervase Markham 提出的检查 CAA 记录作为基准要求来实施。
详情参见: Ballot 187 – Make CAA Checking Mandatory
CAA ,全称 Certificate Authority Authorization ,即证书颁发机构授权。它为了改善 PKI ( Public Key Infrastructure :公钥基础设施)生态系统强度、减少证书意外错误发布的风险,通过 DNS 机制创建 CAA 资源记录,从而限定了特定域名颁发的证书和 CA (证书颁发机构)之间的联系。从此,再也不能是任意 CA 都可以为任意域名颁发证书了。
2015 年 CloudXNS “重出江湖”的时候,我们做了个让用户写体验文章的活动,风河博客的一篇《谈谈 CloudXNS 》吸引了我的眼球。