DNS污染以及使用镜像源中遇到的问题

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 今天遇到了一个麻烦的问题,针对这一个问题,我在一天之内又遇到了两个应用场景。以下是问题叙述:

微信图片_20220611013940.jpg

前言


今天遇到了一个麻烦的问题,针对这一个问题,我在一天之内又遇到了两个应用场景。以下是问题叙述:


场景一:当我想要通过brew给我的mac安装git的时候,发现通过Homebrew的官网介绍,我连brew都不能安装成功,一直提示我无妨访问;


场景二:当我想要通过github下载一位大佬的pdf的时候,又出现了与场景一相同的报错信息;


问题详解


01 - DNS域名污染


首先,我们来说第一个问题,当我们按照Homebrew官网介绍进行安装的时候,遇到了如下的错误:


微信图片_20220611013949.png


我们将上述地址复制到浏览器看下效果:


微信图片_20220611013954.png


可以看到,错误信息提示我们该网站无法访问,这里给小伙伴们看下我排错时候的思路

  • 首先,查看网络连接,百兆带宽,稳稳滴;
  • 其次,关闭防火墙、关停我使用的所有谷歌插件;
  • 接着,查看使用的代理服务器是否有问题;
  • 然后,我通过ping命令查看了一下该网址,发现能ping通,但是时延较大;


微信图片_20220611013958.png


  • 最后我们借助IPAddress.com网站查一下对应的IP地址,结果如下:


微信图片_20220611014002.png



我们发现,通过ping命令我们得到的IP地址为151.101.228.133,我们通过IPAddress.com网站所查的真实IP地址为199.232.68.133,因此,我们可以得出结论,raw.githubusercontent.com地址遭到了域名污染,找出问题所在之后,我们来看解决方法。


DNS污染,又称为域名服务器缓存污染(DNS cache pollution)或者域名服务器快照侵害(DNS cache poisoning)。


DNS污染是指一些刻意制造或无意中制造出来的域名服务器分组,把域名指往不正确的IP地址。

一般来说,网站在互联网上一般都有可信赖的域名服务器,但为减免网络上的交通,一般的域名都会把外间的域名服务器数据暂存起来,待下次有其他机器要求解析域名时,可以立即提供服务。一旦有相关网域的局域域名服务器的缓存受到污染,就会把网域内的电脑导引往错误的服务器或服务器的网址。


一般来讲,常用的两种解决方法包括使用加密代理和修改hosts文件(重点讲解)。


关于加密代理,相信使用过VPN的小伙伴都知道Shadowsocks吧,就是那台小飞机,我们可以在加密代理里进行远程的DNS解析,或者使用VPN访问网络;


关于修改hosts文件,步骤如下:


我们在mac下打开terminal,通过如下命令编辑Hosts文件:


sudo vi /etc/hosts


即在文末添加一行配置命令,如下所示:


199.232.68.133 raw.githubusercontent.com



微信图片_20220611014007.png


简单解释一下,上图中,标红部分的内容是我们自己加上去的,有的小伙伴已经发现了,所配置命令对应的IP地址就是我们刚才通过第三方平台查到的真实IP地址


OK,修改完上述配置之后,我们关闭终端,并重新下载安装,虽然地址可以访问了,但是这下载速度的确是令人发指,实在是龟速呀,果断停止下载,我们去找下镜像资源。


02 - 使用镜像


我们以中科大的镜像资源为例,我们在terminal中输入如下命令:


/usr/bin/ruby -e "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install)"


我们发现当执行下载命令的时候,界面卡住了,信息如下:


==> Tapping homebrew/core
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'...```


当我们遇到界面卡住的情况时,我们应当果断按下 CTRL+C 中断脚本执行,并依次执行以下三条命令:


cd "$(brew --repo)/Library/Taps/"


mkdir homebrew && cd homebrew


git clone git://mirrors.ustc.edu.cn/homebrew-core.git


成功之后,我们继续执行上述文章中的安装命令,直到看到==>Installation successful! 的信息即可。


/usr/bin/ruby -e "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install)"


安装成功之后,我们通过如下命令安装git:


brew install git


安装完成之后,我们查看下brew和git的版本信息,非常好,都安装成功了。


微信图片_20220611014011.png


本文最后


以上就是我在通过brew安装git的时候遇到的一些坑,希望对小伙伴们能带来一些帮助。


相关文章
|
11月前
|
存储 持续交付 Docker
Docker 镜像解密:分层存储与构建原理多角度解析
Docker 镜像解密:分层存储与构建原理多角度解析
233 0
|
11月前
|
存储 Kubernetes 持续交付
Docker 核心概念深度解析:探索容器、镜像和仓库在Docker生态系统中的重要作用和 应用
Docker 核心概念深度解析:探索容器、镜像和仓库在Docker生态系统中的重要作用和 应用
447 0
|
弹性计算 安全 Linux
Alibaba Cloud Linux镜像操作系统详解(全方位解析)
Alibaba Cloud Linux是阿里云推出的Linux发行版,Alibaba Cloud Linux是基于龙蜥社区OpenAnolis龙蜥操作系统Anolis OS。Alibaba Cloud Linux针对云服务器ECS进行了深度优化,CentOS停止维护完全可以使用Alibaba Cloud Linux代替,Alibaba Cloud Linux兼容CentOS/RHEL生态,CentOS/RHEL中的大多数软件无需或仅需少量改造即可在Alibaba Cloud Linux中运行。
3844 0
Alibaba Cloud Linux镜像操作系统详解(全方位解析)
|
1月前
|
运维 Ubuntu Shell
Docker命令宝典:解锁容器化技术的无限可能,从镜像管理到容器操作,全面解析与实战指南!
【8月更文挑战第3天】Docker简化了应用的部署与运行,掌握其基本命令对开发者和运维人员至关重要。通过`docker images`可查看本地镜像;使用`docker pull`拉取如最新版Ubuntu镜像;`docker rmi`用于删除不再需要的镜像。运行容器可通过`docker run`命令,结合`-it`等选项提供交互式环境。`docker ps`显示运行中的容器,加上`-a`则列出所有容器。`docker stop`和`docker start`分别用于停止和重启容器,而`docker rm`则删除容器。
59 5
|
4月前
|
安全 应用服务中间件 nginx
Docker基础概念解析:镜像、容器、仓库
当谈到容器化技术时,Docker往往是第一个被提及的工具。Docker的基础概念涵盖了镜像、容器和仓库,它们是理解和使用Docker的关键要素。在这篇文章中,将深入探讨这些概念,并提供更丰富的示例代码,帮助大家更好地理解和应用这些概念。
|
4月前
|
存储 Cloud Native 数据安全/隐私保护
[云原生] Docker 入门指南:镜像、容器、卷和网络解析
[云原生] Docker 入门指南:镜像、容器、卷和网络解析
125 0
|
域名解析 网络协议 Cloud Native
云原生网络扫雷笔记:alpine镜像与DNS AAAA不得不防的坑
本文联合作者:@予栖 @遐宇问题的背景时间回溯到两个月之前,我突然被前线同学拉到一个会议上,时间差不多是深夜,一个核心客户突然在会议上反馈:“我们切了流量到alinux3上之后,ingress突然多了很多404报错,你们兼容性是不是有问题?”看到404这个响应,我第一反应就是,这是个纯粹的业务问题,404响应作为HTTP领域最出圈的一个响应码,表征的含义就是“404 Not Found”,得到这个
1526 0
云原生网络扫雷笔记:alpine镜像与DNS AAAA不得不防的坑
|
存储 弹性计算 数据安全/隐私保护
深度解析计算巢镜像部署物复制与关联原理
计算巢服务是阿里云开放给企业应用服务商与其客户的服务管理PaaS平台。服务商在计算巢创建服务(可理解为云资源、软件编排后的集合)并发布上线后,用户便可通过此服务创建服务实例(基于计算巢服务创建的服务实体)以获取具体服务内容。通过镜像部署是一种常见的部署方式。在计算巢中,需要在部署物管理中创建Ecs镜像部署物、分发部署物,然后在创建服务时关联镜像部署物,即可实现用户在创建服务实例时依据不同地域,自动部署对应地域的Ecs镜像。本文旨在说明ECS部署物的复制原理与创建服务实例时的关联原理。
145 0
深度解析计算巢镜像部署物复制与关联原理
|
缓存 网络协议 安全
DNS攻击和DNS污染是什么意思?底层原理是什么?
DNS攻击和DNS污染是什么意思?底层原理是什么?
622 0
|
弹性计算 Linux Anolis
阿里云服务器Anolis OS镜像龙蜥操作系统全解析
阿里云Anolis OS镜像龙蜥操作系统全解析
3349 0
阿里云服务器Anolis OS镜像龙蜥操作系统全解析

相关产品

  • 云解析DNS
  • 推荐镜像

    更多