色悠悠亚洲一区二区_成人av在线一区二区三区_色婷婷久久一区二区三区麻豆_麻豆精品精华液_樱花影视一区二区_99国产精品视频免费观看_日韩欧美国产一区二区三区_亚洲一区二区三区自拍_国产精品无码专区在线观看_欧美久久久久免费

首頁 > 資訊 > 聚焦 > 正文

智匯華云 | 負載均衡源地址可見技術

2022-12-13 09:36:03來源:壹點網

摘要

在非網關型負載均衡器中,通常使用FullNat模式。在這種模式下,客戶端訪問后端服務器的源IP在負載均衡器上會被改變,導致在后端服務器上服務不能正確確定客戶端的真實IP地址。在一些應用場景下,為了實現安全或者大數據分析等應用,需要感知客戶端的真實IP。本文介紹了一種FullNat模式下負載均衡的源地址可見方法。

概述

負載均衡有三種模式:DR,NAT,Tunnel。FullNat模式在NAT模式下增加了源IP NAT。FullNat模式的優點:解決了NAT對Director和RS要求在同一個vlan的問題,適用更復雜的部署形式不要求配置Director作為網關,Director與RS可以通過三層通訊。缺點:RS看不到客戶端真實IP。

為了解決后端服務器感知客戶端真實IP,本文介紹了如下的方法。

四層源地址可見

四層流量通常是TCP和UDP協議報文。源地址可見的通常方法是在報文中某些字段攜帶客戶端的真實IP。在后端通過內核模塊來獲取客戶端IP。

TCP源地址可見

TCP流量是TOA來實現源地址可見。TOA 名字全稱是 tcp option address,是 FullNat 模式下能夠讓后端服務器獲取客戶端IP的一種實現方式,它的基本原理比較簡單。

客戶端用戶請求數據包到達負載均衡器時,負載均衡器在數據包的 tcp option 中插入源IP信息。

數據包到達后端服務器(裝有 toa 內核模塊)后,應用程序正常調用 getpeername 系統函數來獲取連接的源端IP地址。

由于在 toa 代碼中 hook(修改)了 inet_getname 函數(getpeername 系統調用對應的內核處理函數),該函數會從 tcp option 中獲取負載均衡器填充的源IP信息。

這樣后端服務器應用程序就獲取到了真實客戶端IP,而且對應用程序來說是透明的。

TCP頭部格式如下:

在option選項部分攜帶客戶端的IP地址。

IPv4 TOA格式

opcodeopsizeport

clientIP

opcode: opcode = 254

opsize: toa 大小 8 字節

port: 客戶端端口

clientIP: 客戶端 IP(4 字節)

注:opsize 大小包含了自身opsize(2B) + port(2B) + ip(4B)

修改option的時機

負載均衡器需要對每個 tcp 數據包都要插入 toa 信息么?如果這樣會影響到 負載均衡器 整體性能的,而且后端服務器也沒必要對每個 tcp 數據包進行解析,當然也很影響服務器性能。其實只需要在第 3 次握手 ack 數據包中插入 toa 選項即可,后端服務器從 ack 數據包中解析并獲取即可。

后端服務器上獲取客戶端IP獲取。

TCP協議棧中處理三次握手的 ack 數據包的函數是tcp_v4_syn_recv_sock,完成連接的建立,并創建 newsock。在TOA內核模塊中修改

1.hook tcp_v4_syn_recv_sock_toa函數,從TCP的skb中獲取tcp option的攜帶的IP信息,保存到socket中

2. Hook inet_getname,應用程序在調用getpeername時,會使用inet_getname_toa函數處理,從socket中將保存的ip信息返回

源碼參考 https://github.com/huaweicloud/huaweicloud-tool-aad-toa

UDP源地址可見

UDP使用UOA來實現源地址可見。UDP報文頭部沒有option字段,通常在IP頭部的option中攜帶客戶端IP。另外UDP是沒有連接的,沒有三層握手,通常是在前面幾個報文中攜帶信息。

具體實現可以參考:https://github.com/bytedance/uoa

七層源地址可見

七層的負載均衡通常通過反向代理來實現,如Nginx和Haproxy。七層流量通常是HTTP,通過在HTTP頭中的X-FORWARD-FOR中攜帶客戶端真實IP,后端服務器應用從HTTP頭的該字段中獲取得到。

X-Forwarded-For 是一個 HTTP 擴展頭部。HTTP/1.1(RFC 2616)協議并沒有對它的定義,它最開始是由 Squid 這個緩存代理軟件引入,用來表示 HTTP 客戶端真實 IP。如今它已經成為事實上的標準,被各大 HTTP 代理、負載均衡等轉發服務廣泛使用,并被寫入 RFC 7239(Forwarded HTTP Extension)標準之中。

X-Forwarded-For 請求頭格式非常簡單,就這樣:

X-Forwarded-For: client, proxy1, proxy2

可以看到,XFF 的內容由「英文逗號 + 空格」隔開的多個部分組成,最開始的是離服務端最遠的設備 IP,然后是每一級代理設備的 IP。

如果一個 HTTP 請求到達服務器之前,經過了三個代理 Proxy1、Proxy2、Proxy3,IP 分別為 IP1、IP2、IP3,用戶真實 IP 為 IP0,那么按照 XFF 標準,服務端最終會收到以下信息:

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為服務端

A訪問B時,X-Forwarded-For為空,$remote_addr為A的IP,故B轉發到C時附帶的Header頭X-Forwarded-For即為A的IP;

B訪問C時,X-Forwarded-For為A的IP,$remote_addr為B的IP,此時C轉發到D附帶的Header頭X-Forwarded-For即為A的IP,B的IP;

C訪問D時,D就可以拿C傳來的X-Forwarded-For Header頭來分析源IP。

免責聲明:市場有風險,選擇需謹慎!此文僅供參考,不作買賣依據。

關鍵詞:

責任編輯:孫知兵

免責聲明:本文僅代表作者個人觀點,與太平洋財富網無關。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。
如有問題,請聯系我們!

關于我們 - 聯系方式 - 版權聲明 - 招聘信息 - 友鏈交換 - 網站統計
 

太平洋財富主辦 版權所有:太平洋財富網

?中國互聯網違法和不良信息舉報中心中國互聯網違法和不良信息舉報中心

Copyright© 2012-2020 太平洋財富網(www.dnf5588.net) All rights reserved.

未經過本站允許 請勿將本站內容傳播或復制 業務QQ:3 31 986 683

 

色悠悠亚洲一区二区_成人av在线一区二区三区_色婷婷久久一区二区三区麻豆_麻豆精品精华液_樱花影视一区二区_99国产精品视频免费观看_日韩欧美国产一区二区三区_亚洲一区二区三区自拍_国产精品无码专区在线观看_欧美久久久久免费
欧美视频一区二区三区四区| 理论片日本一区| 欧美精品日韩综合在线| 欧美高清一级片在线| 国产尤物一区二区在线| 在线免费观看日本一区| 亚洲天堂2014| 日韩av网站免费在线| 亚洲美女免费在线| 国产精品传媒入口麻豆| 欧美日韩在线播放| 亚洲欧美日韩国产中文在线| 欧美在线视频全部完| 欧美夫妻性生活| 久久这里只有精品视频网| 国产suv精品一区二区6| 91精品国产综合久久蜜臀| 午夜av区久久| 久久男人中文字幕资源站| 天堂av在线一区| 一本色道**综合亚洲精品蜜桃冫| 欧美无砖专区一中文字| 麻豆国产欧美一区二区三区| 欧美三级欧美一级| 欧美午夜电影在线播放| 欧美色精品天天在线观看视频| 国产精品影音先锋| 国产精品一级片| 玉米视频成人免费看| 欧美影视一区二区三区| 日韩国产欧美在线视频| 欧美美女一区二区| 青椒成人免费视频| 久久久国产精品不卡| 日韩欧美另类在线| 日韩影院在线观看| 精品动漫一区二区三区在线观看| 久久99热狠狠色一区二区| 337p亚洲精品色噜噜| 欧美日本一道本在线视频| 91麻豆国产福利在线观看| 国产大片一区二区| 欧美一区二区三区在线| 亚洲精品日日夜夜| 一区二区三区高清在线| 亚洲精品成人a在线观看| 91亚洲精华国产精华精华液| jvid福利写真一区二区三区| 中文字幕乱码久久午夜不卡| 亚洲国产cao| 亚洲电影激情视频网站| 亚洲男女毛片无遮挡| 日韩国产欧美在线观看| 日韩和欧美一区二区三区| av成人老司机| 久久精品久久久精品美女| 99精品在线免费| 一本久久精品一区二区| 欧美老肥妇做.爰bbww视频| 国产日韩欧美综合在线| 精品一区二区三区欧美| 99在线热播精品免费| 国产免费观看久久| 日韩亚洲欧美中文三级| 亚洲国产综合色| 国产不卡免费视频| 精品少妇一区二区三区视频免付费 | 久久久亚洲精品石原莉奈| 91精品国产综合久久精品app| 在线观看免费视频综合| 欧美日韩免费视频| 91成人免费电影| 成人免费一区二区三区在线观看 | av一区二区不卡| 成人18视频日本| 91国内精品野花午夜精品| 精品国产亚洲在线| 丁香五精品蜜臀久久久久99网站 | 亚洲免费在线电影| 亚洲国产精品久久人人爱蜜臀| 欧美tickling挠脚心丨vk| 亚洲动漫第一页| 99久久免费视频.com| 欧美一区二区在线免费播放| 麻豆视频一区二区| 日韩精品欧美精品| 亚洲女同一区二区| 中文字幕一区二区三中文字幕| 91.xcao| 精品一二线国产| 日韩精品亚洲专区| 午夜精品一区二区三区三上悠亚 | 国产精品99久久久| 三级不卡在线观看| 久久精品人人爽人人爽| 精品福利一区二区三区免费视频| 在线精品视频免费播放| 欧美亚洲综合久久| 亚洲欧美视频在线观看| 欧美视频中文字幕| 国产一区二区三区黄视频 | 成人午夜伦理影院| 欧美日韩久久久久久| 欧美一区二区视频在线观看2020| 精品国产区一区| 成人激情视频网站| 国产精品不卡视频| 蜜臀久久99精品久久久久久9| 91社区在线播放| 国产欧美日韩激情| 亚洲成人自拍一区| 在线亚洲一区二区| 日本一区二区三级电影在线观看 | 精品捆绑美女sm三区| 九一久久久久久| 中文字幕中文字幕在线一区 | 在线观看网站黄不卡| 91精品一区二区三区久久久久久| 久久久久久综合| 免费欧美在线视频| 在线观看欧美黄色| 日本不卡123| 亚洲国产精品av| 91黄色小视频| av激情综合网| 国精产品一区一区三区mba桃花 | 欧美视频第二页| 亚洲精品一线二线三线| 久久只精品国产| 欧美日韩大陆在线| av网站一区二区三区| 成人综合日日夜夜| 色婷婷久久久综合中文字幕| 成人黄色免费短视频| 久久精品久久精品| 久久99久久99| 成人亚洲精品久久久久软件| 日本成人在线视频网站| 韩国av一区二区| 99免费精品在线观看| 91亚洲国产成人精品一区二区三| 久久99久国产精品黄毛片色诱| 免费在线观看一区| 蜜臀av一区二区在线免费观看 | 欧美国产乱子伦 | 欧美亚洲动漫制服丝袜| 国内精品在线播放| 国产不卡视频在线播放| 成人福利电影精品一区二区在线观看| 国产99久久久国产精品潘金 | 日韩av电影免费观看高清完整版在线观看| 亚洲一区二区三区在线| 日韩综合小视频| 国产一区二区三区蝌蚪| 欧美在线不卡视频| ww久久中文字幕| 亚洲欧美日韩小说| 老司机精品视频导航| 91日韩精品一区| 18欧美乱大交hd1984| 国产一区啦啦啦在线观看| 欧美日韩一级片网站| 久久精子c满五个校花| 韩国毛片一区二区三区| 91.xcao| 香蕉久久一区二区不卡无毒影院 | 亚洲精品日韩一| 91在线视频播放地址| 中文字幕精品在线不卡| 一区二区三区四区中文字幕| 国产麻豆精品视频| 久久久国产精品午夜一区ai换脸| 日韩成人免费电影| 色综合久久精品| 一区二区三区丝袜| 99re6这里只有精品视频在线观看| 欧美激情一区二区三区不卡| 亚洲成人av一区二区三区| 色视频欧美一区二区三区| 91免费国产视频网站| 亚洲成人综合视频| 日韩精品久久理论片| 国产精品久久久久久久裸模| 中文字幕久久午夜不卡| 久久久久久麻豆| 国产精品美女久久久久久久 | 久久99精品久久久久久国产越南| 日韩女优av电影| 91麻豆精品91久久久久同性| 成人黄色软件下载| 在线观看日韩一区| 色婷婷精品久久二区二区蜜臂av| 国产久卡久卡久卡久卡视频精品| 激情小说亚洲一区| 91麻豆国产在线观看| 欧美综合一区二区| 欧美综合视频在线观看| 91色在线porny| 欧美高清视频在线高清观看mv色露露十八| 欧美视频一区二区在线观看|