来给傻逼讲讲怎么测域名有没有被墙

65次阅读

共计 1676 个字符,预计需要花费 5 分钟才能阅读完成。

内容最后由 simonw 于 2022-12-5 15:48 编辑 一堆傻逼看不懂还 TM 乱喷人 服了 天生当傻逼的命开个帖讲讲什么是被墙和怎么测试被墙这里不讨论染污,也不讨论 HTTP 请求里其他的头或者 BODY 里的信息导致被阻断的的问题。只说域名被墙。墙是双向的,反过来说也一样,这里只讲客户端从中国大陆(以下简称中国 / 国内)请求到国外服务端的情况。域名被墙的最基本原理:拿在国内访问 sifangtv.com 举例访问这个域名的时候,HTTP 请求里面会包含这样一段内容 Host:sifangtv.comHTTP 请求是明文的,如果 sifangtv.com 在 GFW(Great Fire Wall) 黑名单里那么这个请求会直接被阻断,一般原始的错误信息是 Connection reset by peer,或者翻译成中文“连接被重置”,但是现在很多浏览器不会显示这个原始信息。检测被墙的方法:因为很多浏览器不再显示这个原始信息,不太好判断,所以只能用命令或者程序来检测,需要看到这个原始信息。检查域名是否被墙,简单点说就是让一个 HTTP 请求带着要测试的域名的 Host 头过墙,看看有没有被 reset 但是这样说完傻逼肯定还是看不懂,因为涉及到很多情况 1,域名被染污,指向了被墙的 IP2,域名被解析到了国内 3,如前面的帖解析到了一个白单名的 IP(极特殊情况)上面这些情况,在国内发起的请求,如果不改变请求的 IP,都无法检测域名有没有被墙。那么就需要人为的,把一个域名的请求,改变到一个国外的,确认开了 80 端口的 IP。并且这个 IP 本身没有被墙。先找 IP 比如 ping  www.ceranetworks.com 拿到 IP 23.224.9.226$ curl  23.224.9.226<html>Apache is functioning normally</html> 默认就是 http 不用再加 http:// 请求正常,说明 IP 正常没被墙把 Host:sifangtv.com 加到 HTTP 请求的 HEAD 里,让这个请求指向 23.224.9.226curl -H \’Host: sifangtv.com\’ http://23.224.9.226/curl: (56) Recv failure: Connection reset by peer 可以证明被墙但是现在 sifangtv.com 解析的 IP 是:185.149.23.16IP 位置在美国在国内可以直接正常访问 HTTP 这也就是前面帖子说的,这个 IP 被加进了 GFW(Great Fire Wall) 的白名单。现在所有被墙的域名,指向这个 IP,都可以正常的请求到结果,而不是被 RESET,比如 curl -H \’Host: t66y.com\’ http://185.149.23.16/ 但是,要花钱的、指定的域名,才会在服务端上输出跳转代码,跳转走。前面有帖子说测试被墙不准原因在于墙的规则很复杂比如,有些域名是临时被墙比如,有些时候国内固定的一个 IP 请求国外一个固定的 IP,如果被 RESET 的次数太多,那么一些正常的请教也会被 RESET,也就是导致没有被墙的域名在测试结果显示是被墙的。估计很多在线的测试网站没有考虑到这一点,会导致很多错误的结果。可能有人要说,这么简单的东西,你讲这么复杂。因为要给傻逼讲,只能讲多一点,这些流程我早写成自动化的工具了。星期六 2022-12-05 15:43 2 我这个傻逼居然把它的这篇文献看完了? 脱氧核糖核酸 2022-12-05 15:44 3 讲的不错。可能确实有傻逼惹到楼主了。baby 不卑鄙 2022-12-05 15:45 4 几句话说明白的事罗里吧嗦的 simonw 2022-12-05 15:46 5baby 不卑鄙 发表于 2022-12-5 15:45 几句话说明白的事罗里吧嗦的早预料到你这种人特意在结尾打了预防针 Polymer_dg 2022-12-05 15:49 6 技术有,表达能力太差 simonw 2022-12-05 15:55 7Polymer_dg 发表于 2022-12-5 15:49 技术有,表达能力太差放屁,跟傻逼讲这些,不是表达能力的问题,是傻逼理解不了这个层次的东西。

正文完
 0