Posts

Showing posts from March 21, 2017

扫盲 DNS 原理,兼谈“域名劫持”和“域名欺骗/域名污染”

文章目录 ★DNS 是啥? ★DNS 有啥用? ★域名的结构是咋样滴? ★“域名解析”是咋实现滴? ★域名服务器如何知道这些信息? ★啥是“域名劫持”? ★谁有“域名劫持”的企图? ★如何对付“域名劫持”? ★啥是“域名污染”? ★谁有“域名污染”的企图? ★GFW 的两种“域名污染” ★咋对付“域名污染/域名欺骗”?   前天下午(1月21日),咱们天朝发生了全国性的互联网故障,导致大量国内网站无法访问。这次故障说白了就是一次全国性大范围的域名污染。所以俺借此机会,给大伙儿扫盲一下 DNS 的常识。既然是扫盲 DNS,也顺带说说“域名劫持”和“域名污染”这两个很容易混淆的概念。提醒一下:这两者的其中之一是 GFW 的大杀器,爱翻墙的同学有必要了解。 ★DNS 是啥?   DNS 是洋文“Domain Name System”的缩写,直译过来就是“域名系统”。 ★DNS 有啥用?   咱们每天打交道的这个互联网,其底层的基石是“IP”。IP 是“Internet Protocol”的缩写,中文就“互联网协议”(光看名字就知道这玩意儿很重要)。咱们日常用的那些互联网软件(浏览器、聊天工具、下载工具、等等)在工作时,必须依靠【 IP地址 】才能进行网络数据传输。   “IP地址”是设计给软件用滴——虽然软件很容易处理,但对于人类而言,却很难记忆。于是,后来又发明了 DNS。有了 DNS,人类就不需要记住长长的一串 IP地址,而只需记住“域名”(域名通常更短,也更具有可读性)。   比如你上网的时候,只需在地址栏输入网站的“域名”,而不用输入网站的“IP地址”。然后电脑系统会利用 DNS 来把“域名”翻译成“IP地址”。这个翻译的过程术语叫“域名解析/DNS解析”。 ★域名的结构是咋样滴?   域名是按照“树形结构”组织的。不懂得啥是“树形结构”的同学,可以对照一下电脑硬盘上的目录结构。域名的结构和目录结构很类似,目录结构是用“斜杠”作分隔符,而域名是用小数点作分隔符。两者的主要区别在于:目录结构名称的形式是从左到右(上级在左,下级在右),而域名是从右到左(上级在右,下级在左)。   以俺博客的域名为例: program-think.blogspot.com  的上级域名是  .blogspot.com .blogspot....

How to Deploy Google BBR on CentOS 7

Image
BBR (Bottleneck Bandwidth and RTT) is a new congestion control algorithm which is contributed to the Linux kernel TCP stack by Google. With BBR in place, a Linux server can get significantly increased throughput and reduced latency for connections. Besides, it's easy to deploy BBR because this algorithm requires only updates on the sender side, not in the network or on the receiver side. In this article, I will show you how to deploy BBR on a Vultr CentOS 7 KVM server instance. Prerequisites A Vultr CentOS 7 x64 server instance. A   sudo user . Step 1: Upgrade the kernel using the ELRepo RPM repository In order to use BBR, you need to upgrade the kernel of your CentOS 7 machine to 4.9.0. You can easily get that done using the ELRepo RPM repository. Before the upgrade, you can take a look at the current kernel: uname -r This command should output a string which resembles: 3.10.0-514.2.2.el7.x86_64 As you see, the current kernel is 3.10.0. Install the ...

http 、TCP /IP 、Socket 、UDP区别

Image
网络由下往上分为 物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层, 三者从本质上来说没有可比性, socket则是对TCP/IP协议的封装和应用(程序员层面上)。 也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输, 而HTTP是应用层协议,主要解决如何包装数据。