最近有一小伙伴向主機(jī)吧反饋使用了百度云加速海外版后國(guó)內(nèi)訪問(wèn)有些慢,還不如自己用使用的阿里云香港主機(jī),想問(wèn)主機(jī)吧有什么辦法解決國(guó)內(nèi)訪問(wèn)速度問(wèn)題嗎?
對(duì)于這個(gè)問(wèn)題從CDN下手肯定是沒(méi)辦法了,因?yàn)榘俣仍萍铀俸M獍娴腃DN節(jié)點(diǎn)是和cloudflare合作的,而cloudflare采用的是Anycast技術(shù),雖然cloudflare本身是有香港節(jié)點(diǎn)的,但是只要是國(guó)內(nèi)IP訪問(wèn)cloudflare節(jié)點(diǎn)都是會(huì)直接走美國(guó)洛杉磯線路,這也就導(dǎo)致了國(guó)內(nèi)訪問(wèn)慢的問(wèn)題,這個(gè)問(wèn)題目前沒(méi)有別的辦法解決。
那么我們要如何加速呢?其實(shí)我們可以換一個(gè)想法,我們的香港服務(wù)器國(guó)內(nèi)本身訪問(wèn)很快了,那直接把高防CDN當(dāng)成一個(gè)臨時(shí)防御用,在服務(wù)器被攻擊死的時(shí)候再切成高防CDN防御,沒(méi)攻擊的時(shí)候再切回香港服務(wù)器,這樣就徹底解決了速度和防御問(wèn)題。
那么我們要如何實(shí)現(xiàn)自動(dòng)切換呢?
我們需要給服務(wù)器弄兩個(gè)IP,一個(gè)IP CDN回源用的,一個(gè)平時(shí)解析用的。如果是阿里云騰訊云之類的,購(gòu)買負(fù)載均衡即可,具體操作大家研究研究了,懂點(diǎn)技術(shù)不難。
然后我們?cè)侔延蛎腄NS切換成支持宕機(jī)檢測(cè)和切換功能的DNS服務(wù)商那,然后添加一條A記錄服務(wù)器的IP當(dāng)平時(shí)用,然后再添加一條高防CDN的cname記錄當(dāng)備用。
需要注意的是:高防CDN設(shè)置的回源IP一定不能跟你平時(shí)解析的IP同一個(gè),這也是為何前面說(shuō)的要兩個(gè)IP的原因。
設(shè)置完后我們?cè)僭O(shè)置DNS切換規(guī)則即可完成自動(dòng)切換。
原理是當(dāng)黑客攻擊你的一個(gè)香港IP時(shí),導(dǎo)致了IP進(jìn)黑洞了,這個(gè)時(shí)候我們的DNS檢測(cè)到這個(gè)IP不可用了,就會(huì)自動(dòng)切換至高防CDN訪問(wèn),而高防CDN回源的是另一個(gè)IP,并不影響你正常訪問(wèn)。等到被攻擊的IP恢復(fù)后,又自動(dòng)切回平時(shí)用的IP。實(shí)現(xiàn)被攻擊快速切換防御,平時(shí)還可以走普通IP線路的目的。
想要實(shí)現(xiàn)這個(gè)目的要有兩個(gè)IP和智能DNS,智能DNS國(guó)內(nèi)很多,免費(fèi)的都有,不過(guò)主機(jī)吧建議用收費(fèi)的,功能要好些,比如DNS.la,就支持宕機(jī)檢測(cè),自動(dòng)切換功能。
目前淘寶上很多高防CDN都是利用這個(gè)思路解決國(guó)內(nèi)訪問(wèn)慢的問(wèn)題,他們購(gòu)買大量的阿里云香港云服務(wù)器做普通轉(zhuǎn)發(fā)節(jié)點(diǎn),平時(shí)的時(shí)候用來(lái)加速,等到被攻擊了,就切成cloudflare防御,然后沒(méi)攻擊了再切回來(lái),雖然被攻擊的時(shí)候切成cloudflare會(huì)慢些,但是總比訪問(wèn)不了好,一般客戶都是可以接受的。