µ±Ç°Î»ÖÃ: > ÆäËüѧϰ > ÍøÂç»ù´¡ >

Lvs-NATģʽ

ʱ¼ä:2020-01-04 13:35À´Ô´:δ֪ ×÷Õß:IT
LvsÔ­Àí    
 
Lvs-NATģʽעÒâÊÂÏî   
 
Lvs-Natģʽͼ½â  
 
LvsÅäÖÃ
 
±£´æipvsadm²ßÂÔ·½·¨
 
²âÊÔ£º
 
LvsÔ­Àí
 
 
    µ±¿Í»§¶ËµÄÇëÇ󵽴︺ÔؾùºâÆ÷µÄÄں˿ռäʱ£¬Ê×ÏȻᵽ´ïPREROUTINGÁ´¡£
    µ±Äں˷¢ÏÖÇëÇóÊý¾Ý°üµÄÄ¿µÄµØÖ·ÊDZ¾»úʱ£¬½«Êý¾Ý°üËÍÍùINPUTÁ´¡£
    LVSÓÉÓû§¿Õ¼äµÄipvsadmºÍÄں˿ռäµÄIPVS×é³É£¬ipvsadmÓÃÀ´¶¨Òå¹æÔò£¬IPVSÀûÓÃipvsadm¶¨ÒåµÄ¹æÔò¹¤×÷£¬IPVS¹¤×÷ÔÚINPUTÁ´ÉÏ,µ±Êý¾Ý°üµ½´ïINPUTÁ´Ê±£¬Ê×ÏȻᱻIPVS¼ì²é£¬Èç¹ûÊý¾Ý°üÀïÃæµÄÄ¿µÄµØÖ·¼°¶Ë¿ÚûÓÐÔÚ¹æÔòÀïÃ棬ÄÇôÕâÌõÊý¾Ý°ü½«¾­¹ýINPUTÁ´ËÍÖÁÓû§¿Õ¼ä£¬½»¸øÓû§¿Õ¼äµÄ½ø³ÌÀ´´¦Àí¡£
    Èç¹ûÊý¾Ý°üÀïÃæµÄÄ¿µÄµØÖ·¼°¶Ë¿ÚÔÚ¹æÔòÀïÃ棬ÄÇôÕâÌõÊý¾Ý±¨ÎĽ«±»ÐÞ¸ÄÄ¿µÄµØַΪÊÂÏȶ¨ÒåºÃµÄºó¶Ë·þÎñÆ÷£¬²¢ËÍÍùPOSTROUTINGÁ´¡£
    ×îºó¾­ÓÉPOSTROUTINGÁ´·¢Íùºó¶Ë·þÎñÆ÷¡£
 
 
Lvs-NATģʽעÒâÊÂÏî
Á½¿éÍø¿¨
 
RSÓ¦¸ÃʹÓÃ˽ÓеØÖ·    RSµÄÍø¹Ø±ØÐëÖ¸ÏòDIP DIPºÍRIP±ØÐëÔÚͬһ¸öÍø¶ÎÄÚ
 
ÇëÇóºÍÏìÓ¦±¨ÎĶ¼ÐèÒª¾­¹ýDirector Server
 
Ö§³Ö¶Ë¿ÚÓ³Éä RS¿ÉÒÔʹÓÃÈÎÒâ²Ù×÷ϵͳ
 
ȱÏÝ£º¶ÔDirector ServerѹÁ¦»á±È½Ï´ó£¬ÇëÇóºÍÏìÓ¦¶¼Ðè¾­¹ýdirector server  ¸ß¸ºÔس¡¾°ÖУ¬Director ServerÒ׳ÉΪÐÔÄÜÆ¿¾±
 
Lvs-Natģʽͼ½â
 
 
LvsÅäÖÃ
sercer4×÷Ϊµ÷¶ÈÆ÷,Ìí¼ÓÁ½¿éÍø¿¨,ÄÚÍøip 172.25.100.4    ÍâÍøipΪ172.25.254.4
 
server8(172.25.100.8)  Íø¹ØÖ¸ÏòDIP¼´172.25.100.6
 
server9(172.25.100.9)  Íø¹ØÖ¸ÏòDIP¼´172.25.100.6
 
²¹³ä£ºÔÚÌí¼ÓÐéÄâÍø¿¨Ê±,Ìí¼ÓÍêÖ±½Óifconfig²é¿´²¢²»ÄÜÖ±½Ó²é¿´µ½¡£·½·¨ÈçÏ£º
 
¸´ÖÆÒ»·Ýeth0µÄÅäÖÃÎļþ
 
¸ü¸ÄÀïÃæµÄÉ豸Ãû³ÆºÍipµØÖ·
 
ÖØÆôÍøÂç ok
 
server4×÷Ϊµ÷¶ÈÆ÷
 
¿ªÆô·ÓÉת·¢¹¦ÄÜ£¬Ê¹µÃÕæʵ·þÎñÆ÷¿ÉÒÔ·ÃÎÊÍâÍø
 
[root@server4 ~]# vim /etc/sysctl.conf
 
net.ipv4.ip_forward = 1
 
²é¿´²ßÂÔ£º
 
[root@server4 ~]# sysctl -p
net.ipv4.ip_forward = 1   ²é¿´µ½ÒѾ­´ò¿ª
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
 
²âÊÔ£º
 
Á½Ì¨¼ÓÁËÍø¹ØµÄºó¶Ë·þÎñÆ÷¿ÉÒÔpingͨDIP£¨172.25.254.4£©
 
 
 
 
servre8, server9 ×÷Ϊºó¶Ë·þÎñÆ÷
 
Á½Ì¨»úÆ÷Ìí¼ÓÁÙʱµÄÍø¹ØÖ¸Áî
 
[root@server9 ~]# route add default gw 172.25.100.4
 
ÉèÖòßÂÔ£º
 
[root@server4 ~]# ipvsadm -C
[root@server4 ~]# ipvsadm -A -t 172.25.254.4:80 -s wrr
[root@server4 ~]# ipvsadm -a -t 172.25.254.4:80 -r 172.25.100.6 -m -w 1
[root@server4 ~]# ipvsadm -a -t 172.25.254.4:80 -r 172.25.100.8 -m -w 1
²¹³ä£ºm´ú±ínatģʽ£¬-wÉèÖÃȨÖØ wrr¼ÓȨÂֽе÷¶ÈËã·¨
[root@server4 ~]# 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.254.4:80 wrr
  -> 172.25.100.6:80              Masq    1      0          0         
  -> 172.25.100.8:80              Masq    1      0          0  
[root@server4 ~]# echo "1" >/proc/sys/net/ipv4/ip_forward  //¿ªÆôipת·¢¹¦ÄÜ
 
//ÁÙʱ¿ªÆô£ºsysctl -w net.ipv4.ip_forward=1
 
±£´æipvsadm²ßÂÔ·½·¨
service ipvsadm save //±£´ælvs¹æÔòµ½/etc/sysconfig/ipvsadmÖÐ
 
µ±ÖØÆôºó£¬¿ÉÒÔservice ipvsadm reload¼ÓÔسöÀ´
 
²¹³ä£ºµ±È»¿ÉÒÔÖض¨Ïò±£´æµ½ÈκÎÎļþ
 
ipvsadm -S >/etc/hi
 
ÖØÆô
 
ipvsadm -R </etc/hi
 
iptables5ÎåÌõÁ´²»Á˽âÕâ5ÌõÁ´Êǵ±Êý¾Ý°üÁ÷ÏòÕą̂·þÎñÆ÷µÄʱºò£¬Êý¾Ý°üÔÚ·þÎñÆ÷ÄÚºËÖеÄÁ÷Ïò
 
¿ªÆôºó¶Ëhttp·þÎñ
 
ºó¶Ë server8£¬server9
 
¿ªÆôhttp·þÎñ·¢²¼Ò³Ãæ·Ö±ðΪserver8‘s page ; server9's  page   
 
²âÊÔ
[root@server4 ~]# curl http://172.25.254.4
server6'page
[root@server4 ~]# curl http://172.25.254.4
server8's  page
[root@server4 ~]# curl http://172.25.254.4
server6'page
[root@server4 ~]# curl http://172.25.254.4
server8's  page
 
 
Ôö´ó²âÊÔÁ¿£º
 
[root@server4 ~]# ab -n 10000 -c 200 http://172.25.254.4/index.html
 
[root@server4 ~]# ipvsadm -L -n --rate
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port                 CPS    InPPS   OutPPS    InBPS   OutBPS
  -> RemoteAddress:Port
TCP  172.25.254.4:80                    82      409      409    29237    45036
  -> 172.25.100.6:80                    41      205      205    14645    22534
  -> 172.25.100.8:80                    41      204      204    14592    22502
 
 
 
 
 
 
 
 
 



(ÔðÈα༭£ºIT)
------·Ö¸ôÏß----------------------------