1. DNS污染
随想:
- 在输入一串网址后,会发生如下变化
- 如果你在系统中配置了 Hosts 文件,那么电脑会先查询 Hosts 文件
- 如果 Hosts 里面没有这个别名,就通过域名服务器查询
- 域名服务器回应了,那么你的电脑就可以根据域名服务器的应答信息,得到该域名的 IP 地址
- 之后浏览器就会向这个 IP 地址对应的 Web 端口发送 HTTP 请求
DNS分布式查询效率低下,在这种情况下首先想到解决效率问题的就是缓存呗
- “递归域名服务器”必须得有一个缓存,以此来优化效率(不用每次查询都来一次“踢皮球”)
- 递归域名服务器都设置有一个缓存周期(可能是几分钟,也可能是几小时),因为互联网上的域名信息是有可能发生变化的。比如增加了某个新域名,注销了某个旧域名,或者某个域名对应的 IP 地址变了。如果某条记录的生命周期过了,就会被删除,然后重新同步。
有没有发现一点:我们所有的域名查询其实都来自域名服务器,而这些域名服务器如果不给你提供正确的信息,那么即使输入正确的域名,也得不到正确的IP地址。
污染
- 直接污染:经过最大的出口时,返回错误的IP地址给你
- 间接污染(源头污染):
- ISP的域名服务器拿到假IP,并缓存到自己的缓存中
- 其他比ISP小的域名服务器向大的服务器查询,也得到假的
- 然后某个广域网里所有人拿到的都是假的
2. GRE
通俗来说就是
- 你拿着圆通快递的快递盒子去到顺丰快递站点,让他帮你发送
- 顺丰不干,因为你这个协议是圆通的
- 于是你又套了个顺丰的盒子,再让顺丰帮忙发
- 发送成功
在VPN中,GRE通常被用于创建点对点的隧道,将不同地点或不同网络之间的数据包封装起来,以安全地传输数据。GRE隧道可以穿越公共网络(如互联网),为数据包提供一条安全、私密的传输路径。通常与其他加密协议(如IPsec)结合使用,确保数据在传输过程中的安全性。
GRE技术的意义:
- 建立虚拟专用网络(VPN):GRE允许在公共网络(比如互联网)上创建私有网络,提供安全的点对点连接,使得远程网络或用户可以通过隧道安全地交换数据。
- 跨网络通信:GRE可用于连接不同类型的网络,例如将IPv4数据包封装在IPv6网络中传输,或连接不同的局域网,使得不同网络之间的通信更加灵活和安全。
- 隔离和安全:GRE隧道可以将数据包封装在一个安全的通道中传输,隔离公共网络对数据的访问,提供一定程度的安全性和隐私保护。