haproxy透传用户ip-方法和原理
生活随笔
收集整理的這篇文章主要介紹了
haproxy透传用户ip-方法和原理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
為了透傳用戶ip到后端server,proxy機器需要解決兩個問題:
1.在創建到后端server的套接字時,將用戶ip作為套接字的源ip,從而讓后端server看到;
2.后端server在回包時,能夠將目的地為用戶ip的回包,返回給proxy機器,而proxy機器能夠將該包,從網卡驅動(鏈路層)收下來,并正確遞交給應用層的haproxy進程。
為了解決這兩個問題,haproxy進程和所在機器需要做三個事情:
1.haproxy進程在創建到后端server的tcp套接字時,開啟IP_TRANSPARENT選項,并綁定用戶ip為源ip;
2.后端server修改路由規則,將目的地為用戶ip的回包,路由給proxy機器;
3.proxy機器在處理回包時,在ip層,由TProxy通過結合netfilter/iptables,對該回包做一些小動作,將該回包的skb->sk = sk(sk為haproxy進程創建的對應套接字),從而讓tcp層能夠根據skb->sk,將該回包遞交給haproxy進程進行處理,最終返回給客戶端。
?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的haproxy透传用户ip-方法和原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 后台getshell常用技巧总结
- 下一篇: openresty配置部署