https://www.v2ex.com/t/758568

只要 Github 域名指向任意 IP,该 IP 的 443 端口就会超时 3 分钟(TCPing, 80 端口正常),求解!
12
XIU2 · 135 天前 · 7154 次点击
这是一个创建于 135 天前的主题,其中的信息可能已经有所发展或是发生改变。
本贴仅为学习交流,希望大家不要跑题~
起因

从前几天开始,我发现 Github 总是频繁无法访问(直连),而我这么多年很少遇到这种情况。

稍微注意了下,发现竟然有规律,于是花了一下午时间不停测试,得出了一些不成熟的结论。
复现

测试环境:Windows10 (联通家庭宽带)、Android 手机(联通 4G )

一开始我是拿了一些 github . com 的 IP 放在 Hosts 文件中轮番指向 github . com 来测试。

一旦指向后去访问 Github,就会发现这个 IP 的 443 端口会超时( TCPing ),然后浏览器提示超时。

如果我关闭网页(避免浏览器一直重试),等 3 分钟后( TCPing 超时 90 次,超时时间 2 秒) 443 端口就通了。

在此期间,该 IP 的 80 端口和 ICMP Ping 是一直正常通顺的,只有 443 端口超时。

在此期间,整个局域网下全都 443 超时(准确说是整个宽带网络下),而独立的手机 4G 网络 TCPing 443 正常(包括其他在线端口测试网站也都 443 正常,国外更不用说了一切正常)。

在此期间,对该 IP 进行 TCP 路由追踪时,会在出口处完全中断。

看到这里,其实就发现不对劲了,于是我又尝试手机共享流量数据网络给电脑,同样可以复现。

这时候,因为手机和电脑在同一个局域网(流量数据网络)下,所以也都 443 超时的。
进阶

测着侧着,突发奇想如果指向其他非 Github 的 IP 会怎么样?

于是我就找了个能用的 Cloudflare CDN IP (只要 443 端口可以 TCPing 就行)指向 Github 后,发现也会出现 443 端口超时的情况。。。

我也尝试过把 Github 的 IP 指向其他域名,结果一切正常,没有出现类似情况,只是针对 Github 。
其他机制

因为持续测试了好几个小时的原因,还发现了一些其他机制:
触发时间 /超时时间

有时候是一旦触发条件,就会直接超时 3 分钟( TCPing 超时 90 次,超时时间 2 秒),期间完全超时。

而有的时候是这 3 分钟期间还会漏掉一些正常延迟的 TCPing 结果,但经过测试依然无法访问网页,应该是模拟丢包。

而有的时候触发条件后,如果立即停止访问 Github,则就会发现 443 端口不再超时了。而如果一直不停的重试网页,那么超时时间就会无限长(重置为 3 分钟),这时候再去停止重试网页,超时时间就固定为 3 分钟了。
随机 /轮番针对

有意思的是,似乎是随机或轮番针对 Github IP 的。

因为我发现有时候 IP A 在某一段时间内是可以正常访问的,相应其他的 IP B C D 等这段时间就会无法使用(一旦访问就 443 超时)。而过一段时间 IP A 又无法访问了,但又有另一个 IP B 可以正常访问了(顺序没有发现规律)。

也就是说,在任意时间总有一个(或几个) IP 是可以正常访问的,且不停变换。

目前为止,我只在我的联通宽带+联通 4G 网络下可以稳定复现,不清楚其他地区、运营商是否也一样。

欢迎大家测试、交流、分析。


33 条回复 • 2021-06-15 12:13:01 +08:00
bigmoejun
1
bigmoejun 135 天前
电信一样
XIU2
2
XIU2 135 天前 ❤️ 1
@bigmoejun 看来是全国范围的,故意不封死。伪装成丢包欺骗普通访客(时能访问时不能),可惜规律太明显了,稍微测试下就暴露了。。。
目前看来只针对 github . com 这个域名,无论什么 IP 指向该域名去访问,都会 443 端口超时 3 秒~3 分钟 不等。
LGA1150
3
LGA1150 135 天前
写个工具轮询所有 IP 是不是就能制造大断网了
XIU2
4
XIU2 135 天前 ❤️ 2
@LGA1150 显然该机制的开发者已经考虑到这个问题了。
我帖子里写了,电脑(家庭宽带)触发条件后,手机 4G 网络一切正常(该 IP 443 端口通顺)。

一旦触发条件,就只会针对你的当前网络(即以你的外网 IP 为标识),不会影响其他国内用户的。
LGA1150
5
LGA1150 135 天前 via Android
至少对同一个 CGNAT 有效
@XIU2
XIU2
6
XIU2 135 天前
@LGA1150 这个我没有条件去做测试,不清楚区分标识是否会精确到 NAT 不同用户。

另外,我的家庭宽带是有公网 IP 的,而手机联通 4G 网络则肯定没有,当然这两种都不影响触发条件及效果。
syuraking
7
syuraking 134 天前
重庆联通和湖北联通一直正常,没有你说的问题,DNS 由本地缓存强制解析过去的
XIU2
8
XIU2 134 天前
@syuraking 那看来不是全国的,而是个别地区的。
我刚刚又测试了一遍,依然存在该情况(联通家宽 + 联通 4G )。

今天上午为了方便测试,特地写了个简陋的 bat 脚本,用 curl 指定 IP 去访问 Github 循环检测可用性。
i.loli.net/2021/03/05/E3ZyHstp2NIUjc4.png

刚开始检测的时候,还有一些 IP 是可以正常访问的( HTTP 状态码 200 ),但是很快就全都无法使用了( HTTP 状态码 000,即 443 端口超时,80 端口正常,ICMP Ping 也是正常)。
bigmoejun
9
bigmoejun 134 天前 via Android
我觉得楼主去贴吧发会更有效率
junyee
10
junyee 134 天前 via iPhone ❤️ 1
无耻的技术。
我说这几天为什么访问 github 就只能看到 tittle,只好用梯子。
jinliming2
11
jinliming2 134 天前 ❤️ 9
当年 Google 就是类似的手段,造成是“他们服务器不稳定”的假象,然后再过段时间就彻底 ban 了。
XIU2
12
XIU2 132 天前 ❤️ 2
看了下这几天我的 Github 项目后台访客流量统计,并没有明显下滑的现象。

看起来应该只是 [部分地区、部分运营商] 才有,但保不齐是 [试点],就看两星期后是否会恢复了,如果没有恢复那估计离全面应用该机制不远了。
zeropercenthappy
13
zeropercenthappy 130 天前
广东电信,出现完全一致的现象了。
v2tudnew
14
v2tudnew 130 天前 via iPhone
HTTPS 目前有个缺陷,不能隐藏 SNI,如果墙针对就很正常。日常 GEOIP 翻墙,无影响。
Cipool
15
Cipool 128 天前
原来如此,怪不得最近即使手动修改 hosts 也经常链接超时,起初以为是跨境链接遭遇 qos,没想到是技术升级了
826540272
16
826540272 126 天前 via Android
@XIU2 现在大多都有 nat,那么同样可以给 nat 下的内网 ip 断网,不过意义不大,没几个人访问境外
maxsky
17
maxsky 124 天前
@syuraking 重庆电信 /联通和 LZ 情况一毛一样,解析到任意可用 IP 都是规律性时好时坏。
dzyou2007
18
dzyou2007 121 天前 via Android ❤️ 1
@jinliming2 所以现在依然有不明真相的小白自以为是地说,是他们自己不稳定,自己选择出去的。
ziseyinzi
19
ziseyinzi 121 天前
@XIU2 恢复?你觉得狗会主动把嘴里的骨头吐出来吗
woshijidan
20
woshijidan 121 天前 via Android
广东联通 0750 完美复现
lns103
21
lns103 120 天前 via Android ❤️ 1
四川电信在 2 月底短暂出现 vultr 官网无法访问,最近也出现了 GitHub 连接重置,时好时坏,现在都开代理访问
MisterGlasses
22
MisterGlasses 120 天前 via iPhone
山东联通用 git pull 的时候经常提示什么 SSL was reset 好像也有 443 字样 换流量就没问题 是不是这个原因呢?
linzh
23
linzh 120 天前
我这的教育网直接把 github 阻断了…连演都不带演一下的…三大好歹多刷新几次还能进
XIU2
24
XIU2 120 天前
@MisterGlasses #22 是的,要么提示重置,要么提示超时,偶尔运气好能碰到 “暂时可用” 的 Github IP 。
MisterGlasses
25
MisterGlasses 120 天前 via iPhone
@XIU2 问题是我全局代理都没有用
XIU2
26
XIU2 120 天前
@MisterGlasses #25 那显然就是你的梯子问题了(或者相关设置有问题)。
getadoggie
27
getadoggie 120 天前
无耻的不是技术,是人
Olvi73
28
Olvi73 118 天前
之前以为是 host 的问题,但是每次 host 测试都是正常的,用了一段时间就连不上 github,原来是因为这个原因
brust
29
brust 118 天前
两会的前几天就这样了
直接挂代理了
hgg12580
30
hgg12580 117 天前
苏州电信 成功复现
dvaknheo
31
dvaknheo 114 天前
v2ex 抽风也是这个原因?
XIU2
32
XIU2 114 天前
@dvaknheo #31 V2EX 的不太一样,但也是这个月出现的。
表现特征为部分 Cloudflare CDN IP 被 TCP 劫持(延迟非常低,且不可用),间歇性的,没有发现什么规律,而且这个月 Cloudflare CDN 国内网络质量明显下降了几个等级,普遍延迟、丢包更严重了。

[V2EX 连接已重置?默认解析的三个 IP 全部不可用( TCPing 疑似被劫持?延迟过低 有规律)]
/t/761226
hamjin
33
hamjin 33 天前
现在 github 直接 SNI RST 了,彻底再见了( 0791 移动)
ChinaMobile 网络下 cloudflare 还有几个 ip 段是好的,还是 CMI 到 HKIX 直连 Cloudflare,到目前( 2021 年 6 月 15 日)还是低延时

只要 Github 域名指向任意 IP,该 IP 的 443 端口就会超时 3 分钟(TCPing, 80 端口正常)相关推荐

  1. Fast Flux技术——本质就是跳板,控制多个机器,同一域名指向极多的IP(TTL修改为0),以逃避追踪...

    转自:http://ytuwlg.iteye.com/blog/355718 通过病毒邮件和欺诈网站学到的对付网络封锁的好东西:Fast Flux技术  收到一封邮件,引起我的好奇了: 邮件标题是:H ...

  2. 腾讯云服务器IP地址打不开网站注意80端口的问题

    腾讯云服务器搭建网站使用公网IP地址连接不上,请注意80端口的问题,很有可能是因为你的云服务器安全组中没有开启80端口导致的.腾讯云服务器网来详细说下腾讯云服务器安全组开放80端口教程: 腾讯云服务器 ...

  3. [记录]阿里云云服务器启动nginx,服务器可以通过localhost:80能够访问,外网无法通过ip访问80端口

    阿里云云服务器启动nginx后,服务器可以通过localhost:80能够访问,外网无法通过ip访问80端口 问题描述:在阿里云服务器上安装好nginx,配置好前端文件夹路径后,通过ip:80无法响应 ...

  4. 端口映射工具之80端口映射软件无公网IP时发布网站应用等应用

    端口映射工具,也可以是端口映射软件,一般是指内网端口映射软件,在内网使用,可以将内网端口与外网端口进行映射中转.不同于端口映射器,端口映射器是一个硬件,从硬件上实施的方案. 端口映射软件,以nat12 ...

  5. 使用nginx配置服务器80端口指向多个服务,解决微信公众号等平台只能绑定80端口问题。

    在大部分情况下,不管域名绑定也好,第三方公众号或小程序都会要求只能使用80端口. 只准使用80端口有几个意思 一.80端口是不需要显性添加的. 二.80端口比较安全,就怕用户使用21(FTP).22( ...

  6. 动态DNS——本质上是IP变化,将任意变换的IP地址绑定给一个固定的二级域名。不管这个线路的IP地址怎样变化,因特网用户还是可以使用这个固定的域名 这样看的话,p2p可以用哇...

    动态域名是因应网络远程访问的需要而产生的一项应用技术.因为没有固定IP,只能运用二级域名来应对经常变化的IP,动态域名的由来因此而产生. 它当前主要应用在:路由器.网络摄像机.带网络监控的硬盘录像机. ...

  7. 域名解析,一个域名可以对应多个IP地址(基于DNS的负载均衡)

    域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务. IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址. 域名解析就是域名到IP地 ...

  8. 一个域名可以对应多个ip地址吗_域名解析 | A记录 ,CNAME,MX,NS 你懂了吗

    域名解析 什么是域名解析?域名解析就是国际域名或者国内域名以及中文域名等域名申请后做的到IP地址的转换过程.IP地址是网路上标识您站点的数字地址,为了简单好记,采用域名来代替ip地址标识站点地址.域名 ...

  9. 自揣允许域名访问,不允许IP访问的方法和意义

    细心的朋友会发现,www.sina.com.cn 只能用域名来访问,而用ip地址却无法访问,我们知道域名和IP的关系,域名就是域名通过dns解析到指定IP,一个域名只能解析一个IP,一个IP可以绑定几 ...

  10. 域名如何绑定到服务器ip

    在域名管理中心添加记录即可 然后该域名就会指向你设置的云服务器ip,如果你在云服务器上安装了nginx,访问ip地址和访问域名 打开的都是nginx的80端口,可以再配置其他端口浏览页面

最新文章

  1. 全面剖析linux【bind】服务お理论篇
  2. QT实现太阳系系统八大行星
  3. c++builder启动了怎么停止_App 竟然是这样跑起来的 —— Android App/Activity 启动流程分析...
  4. 使用Okta的单点登录保护您的Vert.x服务器
  5. 面试官:聊一下二分法
  6. java三大框架要学多久_新手学习SSH三大框架的几点建议
  7. IP防护等级测试设备(IPX1.2.3.4.5.6.9)
  8. Java互联网医院源码,以互联网方式整合优质医生资源,为患者提供MDT多学科会诊、专家咨询、复诊配药等服务。
  9. 5 Openstack-Ussuri-Placement部署-ubuntu1804
  10. python混合线性模型_Python Statsmodels Mixedlm(混合线性模型)随机效应
  11. java: 类StreamTest是公共的, 应在名为 StreamTest.java 的文件中声明
  12. 【MATLAB】批量修改文件名
  13. 关于Http的一些基础内容
  14. 利用360安全卫士的“网络连接查看器”获取网络游戏的服务器IP地址
  15. freemarker模板中long类型问题
  16. Firefox火狐浏览器web开发调试开启强制刷新缓存模式
  17. 轻松上手 | 使用国内资源安装 K3s 全攻略
  18. 互联网采集数据有哪几种常见的方法?
  19. STM32定时器中断时间计算
  20. mac电脑忘记mysql密码怎么办?

热门文章

  1. gc方法写法_国际上电话的正确写法和拨打方法
  2. 如何用Excel快速制作甘特图?(超详细!)
  3. 为所欲为表情包制作器
  4. lanp+nginx实现动静分离
  5. c语言作业与实验报告,c语言实验报告
  6. java判断时间是否在某个时间段内
  7. roundcube邮箱手机端_在手机上使用便签软件敬业签怎么将便签内容导出到邮箱?...
  8. Vue最全知识点集合
  9. 往十年不忘初心,新十年不负韶华丨万字长文带你完整回顾2020数据技术嘉年华
  10. Excel如何用IF函数进行数据筛选