自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

花了 100 塊大洋搞懂 IPv6 的用戶如何訪問(wèn) IPv4 服務(wù)器

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
用戶的請(qǐng)求無(wú)論是DNS請(qǐng)求,還是http請(qǐng)求,都應(yīng)該先通過(guò)代理商,DNS請(qǐng)求后代理商返回自己的服務(wù)器節(jié)點(diǎn)ip,用戶再向服務(wù)器節(jié)點(diǎn)ip發(fā)出http請(qǐng)求時(shí),再由該節(jié)點(diǎn)對(duì)http請(qǐng)求進(jìn)行轉(zhuǎn)發(fā)。

大家好,今天藍(lán)胖子花了100多塊搞懂了 ipv6的用戶如何訪問(wèn)ipv4 服務(wù)器,將收獲與大家分享下。

ipv4和ipv6的協(xié)議棧不同,這意味著,其對(duì)應(yīng)的ip包的封裝和解析不同,那么只支持ipv4的機(jī)器就無(wú)法直接與ipv6的服務(wù)器進(jìn)行通信。但目前已經(jīng)有越來(lái)越多人使用ipv6進(jìn)行通信,如果僅僅讓服務(wù)器支持ipv4,這無(wú)疑會(huì)損失一大部分用戶,特別是針對(duì)于海外業(yè)務(wù)。

如何讓服務(wù)器便捷支持ipv4和ipv6都能同時(shí)進(jìn)行訪問(wèn),就成了我們需要思考的問(wèn)題。這里我給出幾個(gè)靠譜方案來(lái)解決此類(lèi)問(wèn)題。

首先,要知道一個(gè)http網(wǎng)絡(luò)請(qǐng)求的流程,我們獲取到網(wǎng)站域名后通過(guò)DNS協(xié)議向DNS服務(wù)商請(qǐng)求網(wǎng)站的ip地址,接著才開(kāi)始向這個(gè)ip發(fā)送真正的http請(qǐng)求。

在向DNS服務(wù)商發(fā)出請(qǐng)求過(guò)程中,如果用戶客戶端只支持ipv6,那么它會(huì)去DNS服務(wù)器查詢域名的AAAA記錄,如果用戶只支持ipv4,那么會(huì)去DNS服務(wù)器查詢A記錄。

AAAA類(lèi)型的DNS記錄里配置的是域名對(duì)應(yīng)的ipv6地址,A類(lèi)型記錄里則是配置域名的ipv4地址。

linux服務(wù)器配置ipv6地址

目前,云服務(wù)廠商創(chuàng)建的服務(wù)器實(shí)例,默認(rèn)是不分配ipv6的,我們可以通過(guò)配置,讓其擁有一個(gè)ipv6公網(wǎng)ip,接著配置一條AAAA類(lèi)型的DNS記錄,指向這個(gè)ip,那么ipv6的用戶就可以通過(guò)域名訪問(wèn)到服務(wù)器了。

我們可以將AAAA記錄的域名 和 A記錄類(lèi)型的域名配置成一樣。如下:

圖片圖片

假設(shè),我有個(gè)lanpangzi.org 的域名,配置其子域名為www.lanpangzi.org ,并且這個(gè)子域名需要同時(shí)有ipv4和ipv6的地址,我們就可以對(duì)其分別配置A類(lèi)型和AAAA類(lèi)型的DNS記錄,其中content是對(duì)應(yīng)的公網(wǎng)ip。

這樣無(wú)論用戶是用那種ip協(xié)議,都能找到www.lanpangzi.org的對(duì)應(yīng)ip協(xié)議的ip地址。

只要得到了域名背后正確的ip地址,那么用戶就能正常訪問(wèn)到服務(wù)器了。

?????? 但讓linux開(kāi)啟ipv6的支持,還是比較繁瑣,無(wú)論是在廠商側(cè)設(shè)置公網(wǎng)ipv6還是本地linux服務(wù)器需要改動(dòng)配置都比較復(fù)雜,所以我著重介紹下第二種方式。

通過(guò)網(wǎng)絡(luò)代理廠商透明進(jìn)行協(xié)議轉(zhuǎn)換

其實(shí),既然ipv6的用戶直接訪問(wèn)ipv4的服務(wù)器行不通,那么我們可以加個(gè)中間層來(lái)轉(zhuǎn)發(fā)用戶ipv6請(qǐng)求,如下所示,代理商與用戶是通過(guò)ipv6協(xié)議,而與服務(wù)器則是通過(guò)ipv4。

注意下,用戶的請(qǐng)求無(wú)論是DNS請(qǐng)求,還是http請(qǐng)求,都應(yīng)該先通過(guò)代理商,DNS請(qǐng)求后代理商返回自己的服務(wù)器節(jié)點(diǎn)ip,用戶再向服務(wù)器節(jié)點(diǎn)ip發(fā)出http請(qǐng)求時(shí),再由該節(jié)點(diǎn)對(duì)http請(qǐng)求進(jìn)行轉(zhuǎn)發(fā)。

圖片圖片

考察了市面上比較主流的網(wǎng)絡(luò)代理商后,我選擇cloudflare ,接下來(lái),我來(lái)演示下如何通過(guò)cloudflare 來(lái)實(shí)現(xiàn)請(qǐng)求代理。

因?yàn)槲冶镜氐挠?jì)算還是只支持ipv4,所以我將linux服務(wù)器配置成ipv6,演示下ipv4的機(jī)器如何訪問(wèn)只支持ipv6的服務(wù)器。原理是一致的,都是靠網(wǎng)絡(luò)代理商轉(zhuǎn)發(fā)請(qǐng)求。關(guān)于云服務(wù)商的服務(wù)器如何開(kāi)啟ipv6,我以阿里云為例,其官方文檔在下方????。

https://help.aliyun.com/zh/ecs/user-guide/step-1-create-a-vpc-that-supports-ipv6-addressing?spm=a2c4g.11186623.0.0.341a5048uktqgP#4fbf8a7026p05

ECS 開(kāi)啟ipv6

因?yàn)橹鳈C(jī)默認(rèn)會(huì)有個(gè)網(wǎng)卡,我直接去網(wǎng)卡處新增一個(gè)ipv6的地址。

圖片圖片

但默認(rèn)生成的ipv6還不支持訪問(wèn)公網(wǎng)的能力,如下提示,還需要去交換機(jī)處開(kāi)通公網(wǎng)帶寬。

圖片圖片

開(kāi)通后的效果如下:

圖片圖片

接著再配置下實(shí)例的安全組,配置成運(yùn)行任何ipv6的地址訪問(wèn),因?yàn)槟J(rèn)ipv6的包是進(jìn)不來(lái)的。

圖片圖片

這下才完成了服務(wù)器ECS的配置,我們目前的ECS實(shí)例已經(jīng)擁有了一個(gè)公網(wǎng)ip了。

域名配置

接著,我們?yōu)閕pv6公網(wǎng)ip配置一個(gè)域名lanpangzi.org,來(lái)作為應(yīng)用程序的域名,用戶應(yīng)該通過(guò)www.lanpangzi.org這個(gè)域名來(lái)訪問(wèn)應(yīng)用服務(wù)。

通過(guò)dynadot ,我買(mǎi)了一個(gè)域名lanpangzi.org。

圖片圖片

接著,在cloudflare 上進(jìn)行了賬號(hào)注冊(cè),添加自己的域名。

圖片圖片

cloudflare 提供了免費(fèi)版本,這對(duì)于我來(lái)說(shuō),再好不過(guò)了。

圖片圖片

然后在 cloudflare 界面配置對(duì)域名的解析, 需要在域名注冊(cè)商dynadot那里注冊(cè)NS記錄,來(lái)將lanpangzi.org的域名解析交由 cloudflare 。 NS記錄的節(jié)點(diǎn)是在  cloudflare 配置域名時(shí)告訴給開(kāi)發(fā)的。

NS類(lèi)型的DNS記錄,其作用是指明特定域名應(yīng)該由哪臺(tái)服務(wù)器去解析,這里是將lanpangzi.org 的域名解析交給了 cloudflare 自己的服務(wù)器節(jié)點(diǎn)。

圖片圖片

在dynadot 的DNS settings處配置NS記錄指向 cloudflare 的ns節(jié)點(diǎn) 。

圖片圖片

接著,就是在  cloudflare 上對(duì)子域名www進(jìn)行配置,注意www.lanpangzi.org 我只配置了AAAA記錄類(lèi)型也就是 ipv6的地址。

圖片圖片

如果僅僅是配置了這樣一條AAAA的記錄類(lèi)型,不開(kāi)啟  cloudflare 的代理功能,在ipv4用戶發(fā)出DNS請(qǐng)求去詢問(wèn)www.lanpangzi.org的ip地址時(shí)會(huì)因?yàn)檎也坏?ipv4的地址而造成請(qǐng)求失敗。如下,我進(jìn)行了測(cè)試。

在ECS上運(yùn)行了一個(gè)go程序,監(jiān)聽(tīng)80端口,并且將其收到的http請(qǐng)求頭打印出來(lái),在未開(kāi)啟代理時(shí),在我本地瀏覽器對(duì)該域名進(jìn)行訪問(wèn)(我本地的機(jī)器只支持ipv4),出現(xiàn)域名解析失敗的錯(cuò)誤。

圖片圖片

在開(kāi)啟代理后,則http請(qǐng)求正常,且請(qǐng)求頭中有 cloudflare 加的一些自定義頭部。

圖片圖片

圖片圖片

綜上,通過(guò) cloudflare 代理http請(qǐng)求,可以透明的實(shí)現(xiàn)用戶和服務(wù)器間ipv4和ipv6請(qǐng)求的轉(zhuǎn)換,這也是我推薦的方式。

最后,整個(gè)域名和服務(wù)器的購(gòu)買(mǎi),我花了100多塊,你們說(shuō)這個(gè)錢(qián),藍(lán)胖子花的值不值。

責(zé)任編輯:武曉燕 來(lái)源: 藍(lán)胖子的編程夢(mèng)
相關(guān)推薦

2019-07-01 10:09:09

IPv6IPv4運(yùn)營(yíng)商

2019-09-23 11:03:55

IPv6IPv4網(wǎng)絡(luò)

2018-06-12 10:44:29

2018-11-23 09:11:18

IPV4IPV6頭部

2010-05-28 09:16:38

IPv6技術(shù)

2013-07-24 09:56:48

IPv4IPv6

2010-05-04 09:56:54

IPv4黑市IPv6

2010-06-07 15:25:58

IPv4與IPv6

2018-08-15 09:21:31

IPv6IPv4協(xié)議

2010-06-09 17:07:46

IPv6與IPv4

2013-11-20 09:22:44

IPv4過(guò)渡IPv6

2010-05-26 17:57:15

IPv6報(bào)頭

2010-06-08 17:38:17

IPv4與IPv6翻譯策略

2020-05-12 09:01:30

IPv6IPv4網(wǎng)絡(luò)協(xié)議

2022-05-30 19:30:39

IPv4IPv6

2010-06-01 09:09:49

IPv6轉(zhuǎn)換

2010-05-26 17:53:38

IPv4 to IPv

2022-02-15 14:12:46

IPv4IPv6過(guò)渡技術(shù)

2018-08-08 15:23:10

IPv4IPv6網(wǎng)絡(luò)

2011-01-06 13:24:48

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)