智匯華云 | 負(fù)載均衡源地址可見技術(shù)
摘要
在非網(wǎng)關(guān)型負(fù)載均衡器中
概述
負(fù)載均衡有三種模式:DR
為了解決后端服務(wù)器感知客戶端真實(shí)IP
,本文介紹了如下的方法四層源地址可見
四層流量通常是TCP和UDP協(xié)議報(bào)文
TCP源地址可見
TCP流量是TOA來實(shí)現(xiàn)源地址可見
客戶端用戶請求數(shù)據(jù)包到達(dá)負(fù)載均衡器時(shí),負(fù)載均衡器在數(shù)據(jù)包的 tcp option 中插入源IP信息
數(shù)據(jù)包到達(dá)后端服務(wù)器(裝有 toa 內(nèi)核模塊)后
由于在 toa 代碼中 hook(修改)了 inet_getname 函數(shù)(getpeername 系統(tǒng)調(diào)用對應(yīng)的內(nèi)核處理函數(shù)),該函數(shù)會從 tcp option 中獲取負(fù)載均衡器填充的源IP信息
這樣后端服務(wù)器應(yīng)用程序就獲取到了真實(shí)客戶端IP,而且對應(yīng)用程序來說是透明的
TCP頭部格式如下:
在option選項(xiàng)部分?jǐn)y帶客戶端的IP地址。
IPv4 TOA格式
opcodeopsizeport
clientIP
opcode: opcode = 254
opsize: toa 大小 8 字節(jié)
port: 客戶端端口
clientIP: 客戶端 IP(4 字節(jié))
注:opsize 大小包含了自身opsize(2B) + port(2B) + ip(4B)
修改option的時(shí)機(jī)
負(fù)載均衡器需要對每個(gè) tcp 數(shù)據(jù)包都要插入 toa 信息么
后端服務(wù)器上獲取客戶端IP獲取
。TCP協(xié)議棧中處理三次握手的 ack 數(shù)據(jù)包的函數(shù)是tcp_v4_syn_recv_sock,完成連接的建立
,并創(chuàng)建 newsock。在TOA內(nèi)核模塊中修改1.hook tcp_v4_syn_recv_sock_toa函數(shù)
,從TCP的skb中獲取tcp option的攜帶的IP信息,保存到socket中2. Hook inet_getname
,應(yīng)用程序在調(diào)用getpeername時(shí),會使用inet_getname_toa函數(shù)處理,從socket中將保存的ip信息返回源碼參考 https://github.com/huaweicloud/huaweicloud-tool-aad-toa
UDP源地址可見
UDP使用UOA來實(shí)現(xiàn)源地址可見。UDP報(bào)文頭部沒有option字段
,通常在IP頭部的option中攜帶客戶端IP。另外UDP是沒有連接的,沒有三層握手,通常是在前面幾個(gè)報(bào)文中攜帶信息。具體實(shí)現(xiàn)可以參考:https://github.com/bytedance/uoa
七層源地址可見
七層的負(fù)載均衡通常通過反向代理來實(shí)現(xiàn)
,如Nginx和Haproxy。七層流量通常是HTTPX-Forwarded-For 是一個(gè) HTTP 擴(kuò)展頭部
X-Forwarded-For 請求頭格式非常簡單
,就這樣:X-Forwarded-For: client, proxy1, proxy2
可以看到
,XFF 的內(nèi)容由「英文逗號 + 空格」隔開的多個(gè)部分組成,最開始的是離服務(wù)端最遠(yuǎn)的設(shè)備 IP,然后是每一級代理設(shè)備的 IP。如果一個(gè) HTTP 請求到達(dá)服務(wù)器之前
,經(jīng)過了三個(gè)代理 Proxy1、Proxy2、Proxy3,IP 分別為 IP1、IP2、IP3,用戶真實(shí) IP 為 IP0,那么按照 XFF 標(biāo)準(zhǔn),服務(wù)端最終會收到以下信息:X-Forwarded-For: IP0, IP1, IP2
下面以NGINX為例,說明配置方法
。在Nginx配置文件中添加:
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
$proxy_add_x_forwarded_for會保存X-Forwarded-For中已有的值
,并且追加$remote_addr的值,使用逗號隔開。如果之前X-Forwarded-For中沒有值
,則修改后X-Forwarded-For中只有$remote_addr的值。例子:
A(client)—>B(Nginx1)—>C(Nginx2)—>D
A為客戶端
,B和C為Nginx反向代理,D為服務(wù)端A訪問B時(shí)
,X-Forwarded-For為空,$remote_addr為A的IP,故B轉(zhuǎn)發(fā)到C時(shí)附帶的Header頭X-Forwarded-For即為A的IPB訪問C時(shí)
C訪問D時(shí)
免責(zé)聲明:市場有風(fēng)險(xiǎn)
關(guān)鍵詞:
責(zé)任編輯:孫知兵
免責(zé)聲明:本文僅代表作者個(gè)人觀點(diǎn)
,與太平洋財(cái)富網(wǎng)無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實(shí),對本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時(shí)性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實(shí)相關(guān)內(nèi)容。如有問題,請聯(lián)系我們!
- 熱資訊!大部地區(qū)將出現(xiàn)大范圍雨雪、大風(fēng)、2023-01-11
- 環(huán)球快報(bào):券商員工違規(guī)炒股 監(jiān)管出手清理2023-01-11
- 【環(huán)球報(bào)資訊】2022年新能源車滲透率翻番 2023-01-11
- 政策利好頻發(fā) 房企流動性緊張趨緩2023-01-11
- 每日看點(diǎn)!明星私募展望2023年投資:一個(gè)值2023-01-11
- 【當(dāng)前熱聞】四大證券報(bào)精華摘要:1月11日2023-01-11
- 環(huán)球即時(shí):艾隆科技:1月10日獲融資買入27.2023-01-11
- 全球今日訊!青云科技:1月10日融券賣出金2023-01-11
- 西力科技:1月10日獲融資買入29.88萬元2023-01-11
- 空客2022年共交付661架民用飛機(jī)2023-01-11
- 寶馬去年在華純電動車銷量增長91.6%2023-01-11
- 【環(huán)球速看料】中科軟董事長左春: 穩(wěn)健“2023-01-11
- 要聞:傳藝科技:已向兩輪車和儲能客戶送出2023-01-11
- 天天熱議:華龍證券IPO獲受理2023-01-11
- 要聞速遞:平安i貸貸款逾期21年多久上征信2023-01-11
- 捷報(bào)!中國長城擎天EF860雙路服務(wù)器成功斬2023-01-10
- 從香氣重新定義云南茶飲的代表作——麒麟大2023-01-10
- 微動態(tài)丨盛迅達(dá)擬出售對華立科技全部持股 2023-01-10
- 北水動向|北水成交凈賣出0.06億 內(nèi)資無懼2023-01-10
- 環(huán)球新動態(tài):田野股份:目前與匯源無合作
,2023-01-10- 新城發(fā)展:新城控股2022年累計(jì)合同銷售金額2023-01-10
- 城投“驚雷”:誰為托底者托底?2023-01-10
- 天天微資訊
!特斯拉上海超級工廠2022年各車2023-01-10- 百度李彥宏:自動駕駛率先進(jìn)入商用的很可能2023-01-10
- 當(dāng)前資訊!百度李彥宏:交通網(wǎng)絡(luò)智能化改造2023-01-10
- 杭州市委書記劉捷調(diào)研螞蟻集團(tuán)等企業(yè)2023-01-10
- 焦點(diǎn)觀察:乘聯(lián)會秘書長崔東樹:特斯拉降價(jià)2023-01-10
- 南充冬菜(宜賓芽菜配燃面味道一絕
精彩推薦
、大風(fēng)、降溫天氣">!大部地區(qū)將出現(xiàn)大范圍雨雪
、大風(fēng)、降溫天氣" />!大部地區(qū)將出現(xiàn)大范圍雨雪、大風(fēng)
、降溫天氣">熱資訊!大部地區(qū)將出現(xiàn)大范圍雨雪、大風(fēng)、降溫天氣- !大部地區(qū)將出現(xiàn)大范圍雨雪、大風(fēng)、降溫天氣">熱資訊!大部地區(qū)將出現(xiàn)大范圍雨雪、大...
- 要聞速遞:平安i貸貸款逾期21年多久上征...
- 北水動向|北水成交凈賣出0.06億 內(nèi)資無...
- 城投“驚雷”:誰為托底者托底?
- 世界今熱點(diǎn):豪宅市場冰火兩重天,透露一...
- !華潤置地獲授35億港元定期貸款融資">天天百事通!多地氣溫將暴跌20℃以上">全球快看點(diǎn)丨強(qiáng)冷空氣來襲!多地氣溫將...
閱讀排行
- 環(huán)球快報(bào):券商員工違規(guī)炒股 監(jiān)...
- 【環(huán)球報(bào)資訊】2022年新能源車滲...
- 政策利好頻發(fā) 房企流動性緊張趨緩
- 每日看點(diǎn)!明星私募展望2023年投...
- 【當(dāng)前熱聞】四大證券報(bào)精華摘要...
- ,占當(dāng)日流入資金比例1.35%">環(huán)球即時(shí):艾隆科技:1月10日獲...
- ,占當(dāng)日流出金額的0.34%">全球今日訊
關(guān)于我們 - 聯(lián)系方式 - 版權(quán)聲明 - 招聘信息 - 友鏈交換 - 網(wǎng)站統(tǒng)計(jì)
太平洋財(cái)富主辦 版權(quán)所有:太平洋財(cái)富網(wǎng)
?
中國互聯(lián)網(wǎng)違法和不良信息舉報(bào)中心
Copyright© 2012-2020 太平洋財(cái)富網(wǎng)(m.rkrking.com) All rights reserved.
未經(jīng)過本站允許 請勿將本站內(nèi)容傳播或復(fù)制 業(yè)務(wù)QQ:3 31 986 683