請看這篇部落格:
主機服務
真實主機localhost
客戶端server1
ds(director sever——lvs排程器)
server2
rs(real server——後端真實提供服務的虛擬機器)
server3
rs(real server——後端真實提供服務的虛擬機器)
注意:我們所有的虛擬機器server1-3的實驗環境都是rhel7.5版本。
ipvsadm -c
ip addr del 172.25.66.100/24 dev eth0
modprobe ipip
ip addr add 172.25.66.100/24 dev tunl0
ip link set up tunl0
[root@server1 ~]# ipvsadm -a -t 172.25.66.100:80 -s rr
# 說明:-a 新增策略 -t 指定vip:埠 -s 指定排程演算法 rr輪詢
[root@server1 ~]# ipvsadm -a -t 172.25.66.100:80 -r 172.25.66.2:80 -i
[root@server1 ~]# ipvsadm -a -t 172.25.66.100:80 -r 172.25.66.3:80 -i
# 說明: -t 指定vip:埠 -r 指定rs:埠 -i 指定模式為tunel模式
[root@server1 ~]# ipvsadm -ln
ip virtual server version 1.2.1 (size=4096)
prot localaddress:port scheduler flags
-> remoteaddress:port forward weight activeconn inactconn
tcp 172.25.66.100:80 rr
-> 172.25.66.2:80 tunnel 1 0 0
-> 172.25.66.3:80 tunnel 1 0 0
[root@server1 ~]# systemctl restart ipvsadm.service
[root@server1 ~]# cat /etc/sysconfig/ipvsadm
-a -t 172.25.66.100:80 -s rr
-a -t 172.25.66.100:80 -r 172.25.66.2:80 -i -w 1
-a -t 172.25.66.100:80 -r 172.25.66.3:80 -i -w 1
ip addr del 172.25.66.100/24 dev eth0
modprobe ipip
ip addr add 172.25.66.100/24 dev tunl0
ip link set up tunl0
核心sysctl中的rp_filter變數可以控制反向過濾。它驗證反向資料報的流向,以避免偽裝ip攻擊。rp_filter引數用於系統是否開啟對資料報源位址的校驗。有三個值,0、1、2,具體含義:
1:開啟嚴格的反向路徑校驗。對每個進來的資料報,校驗其反向路徑是否是最佳路徑。如果反向路徑不是最佳路徑,則直接丟棄該資料報。
所以,我們這裡需要將相關的rp_filter引數修改為0,客戶端才能接受到資料報。
sysctl -a | grep rp_filter # 檢視引數狀態
sysctl -w net.ipv4.conf.all.rp_filter=0
sysctl -w net.ipv4.conf.default.rp_filter=0
sysctl -w net.ipv4.conf.eth0.rp_filter=0
sysctl -w net.ipv4.conf.tunl0.rp_filter=0
sysctl -p # 使之通知核心生效
[root@localhost images]# curl 172.25.66.100
server3
[root@localhost images]# curl 172.25.66.100
server2
發現輪詢訪問,說明實驗成功! LVS模式三 TUN隧道模式
ip隧道 ip tunneling 是將乙個ip報文封裝在另乙個ip報文的技術,這可以使得目標為乙個ip位址的資料報文能被封裝和 到另乙個ip位址。ip隧道技術亦稱為ip封裝技術 ip encapsulation ip隧道主要用於移動主機和虛擬私有網路 virtual private network...
LVS的TUN模式(隧道模式)
工作流程 1 客戶請求資料報,目標位址vip傳送到lb上。2 lb接收到客戶請求包,進行ip tunnel封裝。即在原有的包頭加上ip tunnel的包頭。然後傳送出去。3 rs節點伺服器根據ip tunnel包頭資訊 此時就又一種邏輯上的 隧道,只有lb和rs之間懂 收到請求包,然後解開ip tu...
lvs 隧道模式請求沒有回應的解決
眾所周知,lvs共有三種 機制 nat,iptunneling與direct routing 我在做隧道模式實驗時遇到了乙個問題,客戶端向虛擬ip 即隧道0的ip 傳送請求後,lvs伺服器接收到了請求但是真實伺服器卻沒有任何反應,真實伺服器都可以直接訪問的。按照網上的資料試了一遍又一遍,始終沒有成功...