精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

真實源IP怎么獲得?有這6種方法

汽車玩家 ? 來源:咔咔侃技術 ? 作者:咔咔侃技術 ? 2020-01-20 17:34 ? 次閱讀

獲得真實IP的6種方法

當數據包從負載均衡器往后端轉發時候,真實源IP可在L3、L4、L7實現,并且分別有2種方法可以獲得真實IP,因此共有6種方法:

保持L3層源IP不變,根據連接次數可以分為

● 一次連接模式,如lvs

● 二次連接模式,如haproxy的透明模式

在L4層數據里,添加源IP信息,有2種模式

● 在4層的option字段里增加源IP信息,比如tcp option、udp option

● 在4層末尾和7層開頭之間,增加proxy protocol信息

在L7層數據里,增加源IP信息,有2種模式

● 協議自帶,例如HTTP的X-FORWARD-FOR

● 業務程序自行實現

一次連接與二次連接

一次連接:負載均衡器對數據包僅做轉發,而不對后端重新發起三次握手

二次連接:和一次連接相對應,在tcp轉發時候,對后端重新進行了三次握手。上面所講的L4和L7方法的負載均衡,都是二次連接

可以通過對比源端口是否有改變來簡單判斷是一次連接還是二次連接,端口沒改變,可以理解為一次連接,有改變就是二次連接

方法1: L3的一次連接模式

介紹:是指在網絡層不對源IP做修改,直接將數據包轉發給后端,當后端接收到數據的時候,源IP就是真實IP。

實現:LVS-DR、LVS-NAT、LVS-TUNNEL模式。其中LVS-TUNNEL比較特別,是在原有數據包的開頭封裝了IP頭,當后端收到數據的時候,將封裝的IP頭進行解封裝,獲得的就是原有數據包。

優點:邏輯簡單,當負載均衡器故障切換的時候,從客戶端到后端的tcp連接不會中斷

缺點:對網絡架構有要求,比如DR模式,要求后端配VIP,并且回包要能直接回到客戶機;NAT模式,要求回包經過負載均衡器;TUNNEL模式要求后端支持IPIP隧道

方法2: L3的二次連接模式

介紹:是指負載均衡器和后端重新進行三次握手,但保持數據包的源IP為真實IP。

實現:haproxy(開啟tproxy透明代理模式)+ iptables(fwmark打標記)+ 策略路由這3者組合才能實現

優點:可以實現L7層(如HTTP/HTTPS)的負載均衡,而一次連接主要實現L4層的負載均衡

缺點:配置最復雜,同時要求回包經過負載均衡器

方法3: L4的toa模式

介紹:在4層的option字段里增加源IP信息,比如在tcp option里增加源IP信息(稱為toa)、udp option里增加源IP信息(稱為uoa)

實現:負載均衡器配置lvs-fullnat(只支持toa),iqiyi/dpvs(支持toa和uoa);后端要加載toa、uoa模塊,這個模塊的作用是替換了后端應用程序獲取IP的系統接口的鉤子

優點:對網絡架構要求低

缺點:lvs-fullnat需要編譯內核,且只支持rhel/centos 6的內核,另外多年未更新;iqiyi/dpvs功能強大,但需要dpdk的支持;后端都需要加載toa/uoa模塊,且只支持linux系統。

方法4: L4的proxy protocol模式

介紹:在L7層開頭增加proxy protocol數據(該協議是haproxy發明),目前有v1(明文)和v2(二進制)版本

實現:負載均衡器和后端同時開啟proxy protocol,haproxy和nginx均支持,不過haproxy的配置顆粒度更小,另外nginx轉發數據時候只支持v1

優點:對網絡架構要求低,只要程序支持即可,因此理論上沒有操作系統限制

缺點:目前支持proxy protocol的程序較少,且兩端只能都開啟或者都不開啟該協議,不能一端開一端不開

方法5: L7協議自帶,例如HTTP的X-FORWARD-FOR

介紹:最常見的方法,協議自帶源IP信息,或者可定制插入

實現:例如HTTP協議有X-FORWARD-FOR,也可以自己將源IP插入到HTTP頭部信息里

優點:對網絡架構要求低,配置簡便

缺點:容易被偽造

方法6: L7層業務程序自行實現

介紹:最好的方法,就是業務方自行實現

實現:業務自行實現,例如在client端插入源IP信息,帶到server端

優點:對網絡架構無要求,只要網絡可通即可,只要安全做好,不容易被偽造

缺點:業務方要有一定開發能力

總結

如果能做到無狀態,不需要真實源IP,是最好的。因為這樣對底層架構沒有要求,底層架構就可以做的更高級更彈性。

如果一定要獲得真實源IP,推薦方案的順序就是倒推,從L7到L3,即首選方法6,如果不行再選用方法5,以此類推到方法1。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 均衡器
    +關注

    關注

    9

    文章

    210

    瀏覽量

    30340
  • IP
    IP
    +關注

    關注

    5

    文章

    1655

    瀏覽量

    149332
收藏 人收藏

    評論

    相關推薦

    保持電容性負載穩定的六種方法

    本帖最后由 gk320830 于 2015-3-8 23:36 編輯 保持電容性負載穩定的六種方法本系列的第10部分是我們所熟悉的《電氣工程》雜志(Electrical Engineering
    發表于 09-25 09:31

    labview查看本機ip的三種方法

    做TCP通訊的時候,有時候需要知道自己的IP雖然知道自己電腦ip可以不用這么麻煩,但是有時候就想用自己所學來獲得自己所需,職業病 咳咳這里給出得到本地IP的三
    發表于 11-27 17:17

    獲得E幣的10種方法

    這些是論壇里面找到的10獲得E幣的方法:0。每天登陸+1E幣(每天1次)1。發表帖子,可以得到+1點貢獻和+2E幣(不限次數)2。上傳附件 +1點貢獻和+1E幣 (每天上限10次)3。自己帖子
    發表于 06-15 14:30

    啟動Redis的三種方法

    Redis筆記(1)——安裝、卸載、三種方法啟動Redis,Redis命令使用(干貨十足),Redis兩種方法設置密碼,時間復雜度(更完善哦~)
    發表于 06-08 16:09

    LwIP協議棧開發嵌入式網絡的三種方法有何關系

    LwIP協議棧開發嵌入式網絡的三種方法分析 輕量級的TCP/IP協議棧LwIP,提供了三應用程序設計方法,且很容易被移植到多任務的操作系統中。本文結合μC/OS-II這一實時操作系統
    發表于 08-05 07:55

    噪聲系數測量的三種方法

    噪聲系數測量的三種方法 本文介紹了測量噪聲系數的三種方法:增益法、Y
    發表于 05-07 13:38 ?2143次閱讀

    解決電池問題有三種方法

    解決電池問題有三種方法      對于手機電池問題如何解決,業內人士指出有以下三種方法:   一、發明新型電池。目前有日本生產商已經展示了概念性的燃
    發表于 11-10 14:26 ?950次閱讀

    如何獲得大功率射頻信號的真實PA輸入阻抗

    如何獲得大功率射頻信號的真實PA輸入阻抗 非理想PA(power amplifier,功率放大器)的輸入阻抗是在負載拉移系統中采用拉移方法測量的,這
    發表于 01-13 11:05 ?1341次閱讀
    如何<b class='flag-5'>獲得</b>大功率射頻信號的<b class='flag-5'>真實</b>PA輸入阻抗

    獲得高輸出電流的三種方法介紹

    PSRR。一些客戶已經要求在保持低噪聲和高PSRR的同時將電流增加到200mA以上。本文介紹了獲得更高輸出電流的三種方法,并提供了實用的輸入,以幫助您確定哪種方法最適合您的電路條件。這三
    的頭像 發表于 04-12 08:05 ?1.4w次閱讀
    <b class='flag-5'>獲得</b>高輸出電流的三<b class='flag-5'>種方法</b>介紹

    python統計詞頻的三種方法

    python統計詞頻的三種方法方法
    發表于 05-25 14:33 ?2次下載

    識別電路的10種方法

    對較復雜的電路應先將原電路簡化為等效電路,以便分析和計算。識別電路的方法很多,現結合具體實例介紹十種方法
    發表于 02-08 16:20 ?243次下載
    識別電路的10<b class='flag-5'>種方法</b>

    獲得更高輸出電流的三種方法

    的79dB PSRR(1MHz)。一些客戶要求將電流提高到200mA以上,同時仍保持低噪聲和高PSRR。本文探討了獲得更高輸出電流的三種方法,并提供了實用的輸入,以幫助您確定哪種方法最適合您的電路條件。這三
    的頭像 發表于 01-08 15:32 ?5974次閱讀
    <b class='flag-5'>獲得</b>更高輸出電流的三<b class='flag-5'>種方法</b>

    服務器真實ip地址怎么隱藏?

    有用。 1、使用高防ip 若服務器IP暴露,DDoS攻擊將直接進入IP攻擊。遇到攻擊時,服務器可配備高防IP
    的頭像 發表于 05-22 15:24 ?2618次閱讀

    linux查找ip地址的三種方法

    在 Linux 系統中,經常需要查找 IP 地址以進行網絡配置、故障排除或安全管理。無論是查找本地主機的 IP 地址還是查找其他設備的 IP 地址,本文將介紹三簡單的
    發表于 08-02 09:53 ?627次閱讀
    linux查找<b class='flag-5'>ip</b>地址的三<b class='flag-5'>種方法</b>

    linux網絡配置的3種方法

    Linux是一流行的操作系統,廣泛應用于服務器和網絡設備中。Linux系統提供了多種方法來配置網絡連接,使得網絡設置更加靈活和可定制。本文將會介紹Linux網絡配置的三種方法,包括命令行方式
    的頭像 發表于 11-27 14:33 ?4270次閱讀