关于反向代理免北岸的一个想法

2013-08-18 17:30:13 +08:00
 alexmercer
通常国内免备案空间有两种方法(真正的免备案是不存在的):

①URL转发②反向代理,

URL转发不推荐,反向代理通常是域名解析到国外A服务器IP,然后服务器反向代理给国内B服务器IP(通常是改80端口),这样的话,会产生双倍流量,

用户->域名->国外->国内->用户,最重要的是绕了个圈圈,A主机和B主机的连接是短板。

通常做法是在A上做B服务器上网站的缓存,这样反代不是画蛇添足吗?
我想了一个办法是 既然备案检测是域名解析到的是否是国内IP,这样的话,我们在DNS上下文章,

在A服务器上建一个DNS缓存服务器,将域名解析记录缓存给B.
用户访问时,强制刷新缓存,然后给他强加一个域名缓存记录给B。

第一次访问:用户->域名->A(缓存域名给B)->B。
第二次访问(域名已经缓存给B):用户->域名->B。

当然,我还没经过实践,只是提出一个想法,不知是否管用。或许B服务器上建缓存服务器更好?
关键点是A只要起到域名解析中转的作用。
抛砖引玉,见笑了。
5103 次点击
所在节点    程序员
11 条回复
maoyipeng
2013-08-18 17:36:54 +08:00
谁说备案只检测解析的。。。。。
binux
2013-08-18 17:41:10 +08:00
A怎么做到强制刷新缓存,然后强加一个域名缓存记录给B?
alexmercer
2013-08-18 17:44:11 +08:00
@maoyipeng 备案这种就跟抓小偷一样,嘿嘿,没被抓到什么都好
alexmercer
2013-08-18 17:47:41 +08:00
@binux 类似DNS缓存投毒,网站文件可以缓存,DNS也有缓存,百度、Google也有自己的DNS缓存,既然备案是看解析,就在解析上下功夫,我只是从另一个角度抛砖,想引玉而已。而且这也不是长久之计。
maoyipeng
2013-08-18 17:47:45 +08:00
@alexmercer 那接入商那里呢
megaforce
2013-08-18 20:26:39 +08:00
用dns来做是不是还要考虑用户端dns的缓存,

第一次的时候,dns服务器返回B了;用户端第二次就不一定来你这台dns再来查了
gamexg
2013-08-18 21:35:43 +08:00
看不明白楼主的意思,
一般各个isp都有自己的dns缓存服务器,用户都是直接请求isp的dns缓存服务器,isp的服务器上面如果有没过期的记录就直接返回给客户端,如果没有isp的服务器就会连接到dns根服务器查询这个域名是由哪个服务器负责解析,然会在连接到负责解析的服务器做查询,并把结果缓存并转发给用户。

也就是说dns服务器并不能获得客户的ip,获得的是isp的dns缓存服务器的ip,而一般一个区域使用的都是相同的缓存服务器,在dns部分并不能区分到单个客户,更别说你没办法区分真实的用户。


实际上另一个可能倒是有,不过我对 BGP 协议并不熟悉,觉得技术上可以做到看似是分配到国外的ip,但是实际会连接到国内的服务器上面。但是电信、联通方面应该不可能允许这样做的。
yushiro
2013-08-18 21:47:24 +08:00
国内的云主机和VPS不清楚, 反正如果是服务器托管的话, 你的IP没备案,直接封80端口, 是机房的防火墙封, 他们是搞白名单的。
Mutoo
2013-08-19 00:19:07 +08:00
SAE现在就是这么做的,免备案绑定域名,走国外(日本)线路,流量双倍。
Sdhjt
2013-08-19 17:20:08 +08:00
国内的接入商也有自己的检测系统,简单点的直接封80端口,复杂点的智能检测http请求头 ,像阿里云就可以检测你域名是不是在阿里备过案
loveminds
2013-08-19 18:24:53 +08:00
@gamexg BGP广播可以,但是只有网联光通或者光环新网之类的二级接入商才会让吧
@Mutoo SAE好像是香港和记环球的机房 36.51.0.0 - 36.51.255.255 新浪自己的段

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

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

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX