[lvs-users] ipvs udp forwarding problem

Zetan Drableg zetan.drableg at gmail.com
Mon Dec 5 23:58:30 GMT 2016


Hi,
My task is to present a VIP and forward udp to two different servers
depending on port.

To keep it simple I have 1 traffic director (.224) and 2 real servers (.225
and .233)

I see data going to the vip but nothing going to the destination (via
tcpdump).

The destination real server does not have a route back to the vip, as UDP
packets do not require a return route. (All netflow data).

Oracle Linux 7.2 kernel 3.10.0-327

# ipvsadm -Lnc
IPVS connection entries
pro expire state       source             virtual            destination
UDP 05:00  UDP         10.193.229.228:40953 10.60.7.224:2055
10.60.7.225:2055

]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
UDP  10.60.7.224:2055 rr
  -> 10.60.7.225:2055             Route   100    0          1
UDP  10.60.7.224:2056 rr
  -> 10.60.7.225:2056             Route   100    0          0
UDP  10.60.7.224:2222 rr
  -> 10.60.7.225:2222             Route   100    0          0
UDP  10.60.7.224:6343 rr
  -> 10.60.7.233:6343             Route   100    0          0


Traffic comes to the vip, but does not go out to .225
tcpdump -n port 2055
(port iop == 2055)

23:50:25.567653 IP 10.193.229.228.40953 > 10.60.7.224.iop: UDP, length 1372
23:50:25.567672 IP 10.193.229.228.40953 > 10.60.7.224.iop: UDP, length 1372
23:50:26.421060 IP 10.193.229.228.40953 > 10.60.7.224.iop: UDP, length 1460
23:50:26.421079 IP 10.193.229.228.40953 > 10.60.7.224.iop: UDP, length 1460

sysctls
net.ipv4.conf.eth0.arp_ignore = 0
net.ipv4.conf.eth0.arp_announce = 0
net.ipv4.ip_forward=1
net.ipv4.conf.eth0.rp_filter=0
net.ipv4.conf.eth0.accept_local=1

 iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

ip a s
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state
UP qlen 1000
    link/ether 42:a1:42:03:07:31 brd ff:ff:ff:ff:ff:ff
    inet 10.60.7.231/22 brd 10.60.7.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet 10.60.7.224/32 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::40a1:42ff:fe03:731/64 scope link
       valid_lft forever preferred_lft forever

 ip route

default via 10.60.4.1 dev eth0  proto static  metric 100
10.60.4.0/22 dev eth0  proto kernel  scope link  src 10.60.7.231  metric
100



global_defs {
    router_id LVS_FLOW
}

vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    lvs_sync_daemon_interface eth0
    virtual_router_id 102
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass XXXX
    }
    virtual_ipaddress {
      10.60.7.224
    }
}

virtual_server 10.60.7.224 6343 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol UDP

  real_server 10.60.7.233 6343 {
    weight 100
    }
}

virtual_server 10.60.7.224 2055 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol UDP

  real_server 10.60.7.225 2055 {
    weight 100
    }
}

virtual_server 10.60.7.224 2056 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol UDP

  real_server 10.60.7.225 2056 {
    weight 100
    }
}

virtual_server 10.60.7.224 2222 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol UDP

  real_server 10.60.7.225 2222 {
    weight 100
    }
}

Any help?
Thanks
-Zetan503


More information about the lvs-users mailing list