<input id="ohw05"></input>
  • <table id="ohw05"><menu id="ohw05"></menu></table>
  • <var id="ohw05"></var>
  • <code id="ohw05"><cite id="ohw05"></cite></code>
    <label id="ohw05"></label>
    <var id="ohw05"></var>
  • LVS之DR模式

    目錄:

    • 網絡環境
    • LVS服務器網絡配置
    • LVS服務器添加ipvs規則
    • RS服務器配置
    • 訪問驗證
    • 抓包分析
    • 注意事項

    【網絡環境】

    網絡拓撲結構如下表:

    服務器
    類型
    網卡
    IP
    MAC
    說明
    v_mechine2
    client
    ens32
    192.168.237.132
    00:0c:29:ff:f9:ca
    客戶端ip
    v_mechine1
    lvs_vip
    lvs_dip
    ens35
    ens32
    192.168.237.141
    192.168.237.131
    00:0c:29:33:72:59
    00:0c:29:33:72:45
    對外vip
    對內dip
    v_mechine3
    rs1_vip
    rs1_rip
    lo:0
    ens33
    192.168.237.141
    192.168.237.171
     
    00:0c:29:4e:33:cb
    虛擬網口vip,無mac
    內部rip
    v_mechine4
    rs2_vip
    rs2_rip
    lo:0
    ens33
    192.168.237.141
    192.168.237.172
     
    00:0c:29:ae:a1:bb
    虛擬網口vip,無mac
    內部rip

     

    【LVS服務器網絡配置】

    配置雙網卡,均在同一網段上:

    [root@v_machine1 ~]# ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host
           valid_lft forever preferred_lft forever
    2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:33:72:45 brd ff:ff:ff:ff:ff:ff
        inet 192.168.237.131/24 brd 192.168.237.255 scope global ens32
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe33:7245/64 scope link
           valid_lft forever preferred_lft forever
    3: ens34: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
        link/ether 00:0c:29:33:72:4f brd ff:ff:ff:ff:ff:ff
    4: ens35: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:33:72:59 brd ff:ff:ff:ff:ff:ff
        inet 192.168.237.141/24 brd 192.168.237.255 scope global ens35
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe33:7259/64 scope link
           valid_lft forever preferred_lft forever

    路由設置如下:

    [root@v_machine1 ~]# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         192.168.237.2   0.0.0.0         UG    0      0        0 ens32
    169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 ens32
    169.254.0.0     0.0.0.0         255.255.0.0     U     1004   0        0 ens35
    192.168.237.0   0.0.0.0         255.255.255.0   U     0      0        0 ens32
    192.168.237.0   0.0.0.0         255.255.255.0   U     0      0        0 ens35

    開啟路由轉發:

    臨時開啟路由轉發:
    # echo 1 > /proc/sys/net/ipv4/ip_forward
    或使用
    # sysctl -w net.ipv4.ip_forward=1
    永久開啟路由轉發:
    修改/etc/systcl.conf參數如下
    # cat /etc/sysctl.conf | 'net.ipv4.ip_forward'
    net.ipv4.ip_forward=1
    配置生效命令
    # sysctl -p
    tips:0關閉,1開啟

     

    【LVS服務器添加ipvs規則】

    添加服務和規則

    [root@v_machine1 ~]# ipvsadm -A -t 192.168.237.141:80 -s wrr
    [root@v_machine1 ~]# ipvsadm -a -t 192.168.237.141:80 -r 192.168.237.171:80 -g -w 1
    [root@v_machine1 ~]# ipvsadm -a -t 192.168.237.141:80 -r 192.168.237.172:80 -g -w 2

    查看ipvs規則,已添加成功

    [root@v_machine1 ~]# ipvsadm -Ln
    IP Virtual Server version 1.2.1 (size=4096)
    Prot LocalAddress:Port Scheduler Flags
      -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
    TCP  192.168.237.141:80 wrr
      -> 192.168.237.171:80           Route   1      0          5
      -> 192.168.237.172:80           Route   2      0          5

     

    【RS服務器配置】

    兩臺RS服務器均添加虛擬網卡lo:0(也可使用其它虛擬網口,如ens33:0)

    [root@v_machine3 network-scripts]# ifconfig lo:0 192.168.237.141 netmask 255.255.255.255 up
    [root@v_machine3 segments_dr]# ifconfig
    ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.237.171  netmask 255.255.255.0  broadcast 192.168.237.255
            inet6 fe80::20c:29ff:fe4e:33cb  prefixlen 64  scopeid 0x20<link>
            ether 00:0c:29:4e:33:cb  txqueuelen 1000  (Ethernet)
            RX packets 6738  bytes 585354 (571.6 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 3162  bytes 371159 (362.4 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 1  (Local Loopback)
            RX packets 38  bytes 3790 (3.7 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 38  bytes 3790 (3.7 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo:0: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 192.168.237.141  netmask 255.255.255.255
            loop  txqueuelen 1  (Local Loopback)

    路由設置如下:

    [root@v_machine3 ~]# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         192.168.237.2   0.0.0.0         UG    0      0        0 ens33
    169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 ens33
    192.168.237.0   0.0.0.0         255.255.255.0   U     0      0        0 ens33

     

    【訪問驗證】

    客戶端上curl訪問lvs服務器的vip

    [root@v_machine2 ~]# curl 192.168.237.141 -w "對端ip:%{remote_ip}\n"
    hello,192.168.237.171
    對端ip:192.168.237.141
    [root@v_machine2 ~]# curl 192.168.237.141 -w "對端ip:%{remote_ip}\n"
    hello,192.168.237.172
    對端ip:192.168.237.141
    [root@v_machine2 ~]# curl 192.168.237.141 -w "對端ip:%{remote_ip}\n"
    hello,192.168.237.172
    對端ip:192.168.237.141

    可見,lvs已按照加權輪詢方式處理客戶端訪問請求

     

    【抓包分析】

    在客戶機上對lvs的vip進行訪問,然后分別在4臺服務器上抓包
    lvs服務器抓取數據包client2vip1st_vmachine1.pacp
    http數據流:

     

    arp數據流:

    可見DS收到client的訪問請求后直接將請求轉給了后端RS

    在RS2服務器上抓取數據包client2vip1st_vmachine4.pacp
    http數據流,收包:

    http數據流,回包:

    從收包,可以看出RS收到的數據包,源ip為客戶機ip,目的ip為vip;但是源mac地址是lvs的mac地址,可見該包是從lvs轉發過來的;
    從回包,可以看到RS將數據包直接回給cip,而不是dip;
     
    在client服務器上抓取數據包client2vip1st_vmachine2.pacp

    從client上的收包中,可以看到數據是直接從RS2返回給client的

    由上述數據分析可以得出以下數據流程圖:

    數據包pcap文件:

    鏈接:https://pan.baidu.com/s/1FnV3jL_p5ohbsrPpyek4JQ 
    提取碼:85oy  

     

    【注意事項】

    在DR工作模式下,由于每臺RS服務器均配置了vip。因此需要設置服務器拒絕arp廣播的響應。

     

    posted @ 2019-06-23 17:17  wuenwuen  閱讀(628)  評論(0編輯  收藏  舉報
    国产美女a做受大片观看