lvs-dr 原理與配置

Lvs-dr 原理與配置

目錄

    1、ARP介紹

    2、DR模式數據包請求響應流程

    3、配置過程

   4、總結

1、ARP協議介紹

功能:局域網內,根據IP地址獲取MAC地址。

互聯網上面,每一臺主機都有一個32位的IP地址,但是為了在物理網路上傳輸必須知道對方的MAC地址,因為TCP/IP數據包封裝時,先封裝的是IP,然后是MAC地址,因此在查看數據包中的目的IP前,首先要拆掉第二層MAC地址。

①、一般在局域網獲取MAC地址時,

A  某些節點會發送廣播報文,報文中含有自己的MAC地址,問誰有這個IP地址

B  收到廣播報文的主機都會檢查自己擁有的所有IP地址,如果有的話就告訴那個節點說,“我有這個IP地址”,同時把MAC地址封裝在里面

然后,兩者互相擁有的對方的MAC地址,放在arp緩存里面,這里也可以設置即使自己有arp請求的IP地址,但是不去響應。

②、在linux中的相關arp參數

arp_ignore:定義對目標地址為本地IPARP詢問不同的應答模式

0 – (默認值): 回應任何網絡接口上對任何本地IP地址的arp查詢請求 

1 – 只回答目標IP地址是來訪網絡接口本地地址的ARP查詢請求 

2 –只回答目標IP地址是來訪網絡接口本地地址的ARP查詢請求,且來訪IP必須在該網絡接口的子網段內 

3 – 不回應該網絡界面的arp請求,而只對設置的唯一和連接地址做出回應 

4-7 – 保留未使用 

8 –不回應所有(本地地址)的arp查詢

arp_announce:對網絡接口上,本地IP地址的發出的,ARP回應,作出相應級別的限制確定不同程度的限制,宣布對來自本地源IP地址發出Arp請求的接口 

0 – (默認在任意網絡接口(eth0,eth1lo)上的任何本地地址 

1 –盡量避免不在該網絡接口子網段的本地地址做出arp回應當發起ARP請求的源IP地址是被設置應該經由路由達到此網絡接口的時候很有用.此時會檢查來訪IP是否為所有接口上的子網段內ip之一.如果改來訪IP不屬于各個網絡接口上的子網段內,那么將采用級別2的方式來進行處理

2 – 對查詢目標使用最適當的本地地址.在此模式下將忽略這個IP數據包的源地址并嘗試選擇與能與該地址通信的本地地址.首要是選擇所有的網絡接口的子網中外出訪問子網中包含該目標IP地址的本地地址如果沒有合適的地址被發現,將選擇當前的發送網絡接口或其他的有可能接受到該ARP回應的網絡接口來進行發送


2、DR模式數據包的請求響應流程。

a) 客戶端發送請求到Director,目標地址為VIP。

b) 報文到達網關的時候,網關會問,誰有這個VIP地址,Real serverDirector都配置有VIP地址,但是只有,Director響應。

c) Director收到客戶端的報文之后,把報文中的目標MAC地址,根據算法改為Real server中的某一節點的MAC地址。數據包在轉發過去,這時候源和目標IP地址都沒有改變的。

d) Real server收到數據包之后,先拆開MAC層,發現是自己的MAC,在拆IP層,因為自己配置的也有VIP,所以報文就是自己的了。

e) Real server做出響應,把報文中的源和目標IP地址互換,然后響應給客戶機,不需要經過Director

如果Real server只有一塊網卡,所有的報文都會從網關出入,網關可能會成為單點,建議Real server配置外網IP

3、配置

AReal server

        echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore        
        echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
        echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce 

        Ifconfig lo:0 vip_address netmask 255.255.255.255 broadcast vip_address up 只和自己通信。
        #route add -host vip_address dev lo:0   據說這一條可以不配置
        確保有httpd服務,和數據包可以通過,關閉防火墻。

B、Director

①、配置VIP地址

            Ifconfig eh0:0 vip_address/prefix up

②、測試能否和real server 通信

            Ping real_server_address

③、配置ipvs規則

            Ipvsadm -A -t vip_address [-s schedualr -p persistence]            
            Ipvsadm -a -t vip_address -r real_server_address -g [-w #] 
            Ipvsadm -a -t vip_address -r real_server_address -g [-w #]

3.2 配置實例

    Director: DIP 192.168.198.160        
        VIP:192.168.198.161
        Real server:
        Node2:192.168.198.140 
        Node3:192.168.198.150

Real server: 

(]]MY%%S$0`{8]SVO)SF`RW.png

 node3和node2配置是一樣的。

Director

    PK%}HCYHSX1SM$O@RT)XZLR.png

看一下效果

 GYYKM)I%HK8}NIUW8K1(1CM.png

0@]Q28L$EX5M_I$ZCAVJ3PM.png

4、總結:

    1、只是使用了簡單的調度算法,使用其他的可以在配置director 的時候加上-s 調度算法

    2、使用-p選項可以持久連接

    3、這個后臺,我怎么編輯,前臺看起來間隙都是很大啊。

    最后就是提升一下做事的效率了,寫篇博客花了不少時間。

參考

http://www.cnblogs.com/lgfeng/archive/2012/10/16/2726308.html    arp參數的含義。

http://wolfchen.blog.51cto.com/2211749/1122841            lvs dr配置詳解

原創文章,作者:艾賀,如若轉載,請注明出處:http://www.www58058.com/8153

(2)
艾賀艾賀
上一篇 2015-09-14 09:40
下一篇 2015-09-19 10:36

相關推薦

  • 作業——拷貝命令及其鏈接庫

    1),提示用戶輸入一個可執行命令的名稱 2),獲取此命令所依賴額所有庫文件列表 3),復制命令至某目標目錄(/mnt/sysroot,即把此目錄當做根)下的對的路徑中 bash,/bin/bash ===> /mnt/sysroot/bin/bash useradd, /usr/sbin/useradd ===> /mnt/sysroot/usr…

    Linux干貨 2017-02-04
  • 初學Linux練習題

    1、將/etc/issue文件中的內容轉換為大寫后保存至/tmp/issue.out文件中 tr ‘a-z’ ‘A-Z’ < /etc/issue? > /tmp/issue.out 2、將當前系統登錄用戶的信息轉換為大寫后保存至/tmp/who.out文件中 3、一個linux用戶給root發郵件…

    2017-11-19
  • DNS從入門到管理(一)

    DNS從入門到管理(一) DNS概念 DNS三步法 反向解析 主從DNS服務器的實現 子域授權 智能DNS 壓力測試與DNS排錯 DNS概述 DNS(Domain NameSystem,域名系統),域名和IP地址相互映射的一個分布式數據庫,通過主機名,最終得到該主機名對應的IP地址的過程叫做域名解析。而DNS的主要作用,就是域名解析,將主機名解析成IP地址?!?/p>

    Linux干貨 2016-10-06
  • Linux基礎知識之軟件包管理(二)

    (1)CentOS7 yum dnf  yum repository: yum repo 存儲了眾多rpm包,以及包的相關的元數據文件(放置于特定目錄下,repodata) 文件服務器: ftp:// http:// nfs:// file:/// (2)yum客戶端: 配置文件: /etc/yum…

    Linux干貨 2016-08-24
  • 十一.Linux博客-2016年8月14日if、case、find

    格式說明: 操作 概念 命令 說明及舉例 十一.if、case、find if 單分支if開頭+條件+then+fi結尾雙分支 if else fi多分枝 if elif else fi case case $num in1|3|5)echo xxx;;2|4|5)echo yyy;;*)echo nullesac 多用于離散數值匹配 文件查找和壓縮 文件系…

    Linux干貨 2016-08-24
  • 馬哥教育網絡班21期+第11周課程練習

    1、詳細描述一次加密通訊的過程,結合圖示最佳。 首先發送方用單向加密的方法提取數據的特征碼,用自己的私鑰加密這段特征碼,并附加到數據的后面。     發送方用對稱加密算法把數據及特征碼整個進行加密。     發送方用接收發的公鑰加密對稱密鑰并附加到數據后面。  &nbs…

    Linux干貨 2016-09-19
欧美性久久久久