e.g.
l2 npath configuration
- client is 172.28.24.1
- virtual server/loopback is 172.28.24.10
- server is 172.28.24.4
config on f5
root@(ve11a)(cfg-sync In Sync)(Active)(/Common)(tmos) list ltm virtual bar
ltm virtual bar {
destination 172.28.24.10:80
ip-protocol tcp
mask 255.255.255.255
pool foo
profiles {
fastl4_npath { }
}
source 0.0.0.0/0
translate-address disabled
translate-port disabled
vs-index 5
}
root@(ve11a)(cfg-sync In Sync)(Active)(/Common)(tmos) list ltm pool foo
ltm pool foo {
members {
172.28.24.4:0 {
address 172.28.24.4
}
}
}
root@(ve11a)(cfg-sync In Sync)(Active)(/Common)(tmos) list ltm profile fastl4 fastl4_npath
ltm profile fastl4 fastl4_npath {
app-service none
loose-close enabled
}
config on server
[root@centos101 ~] grep net.ipv4.conf.eth0.arp /etc/sysctl.conf
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2
[root@centos101 ~] ifconfig lo:10
lo:10 Link encap:Local Loopback
inet addr:172.28.24.10 Mask:255.255.255.255
UP LOOPBACK RUNNING NOARP MTU:16436 Metric:1
client
[root@centos1 ~] curl -I http://172.28.24.10
HTTP/1.1 200 OK
Date: Thu, 23 Jan 2014 05:35:33 GMT
Server: Apache/2.2.3 (CentOS)
Last-Modified: Thu, 23 May 2013 00:28:46 GMT
ETag: "4185a8-59-c3efab80"
Accept-Ranges: bytes
Content-Length: 89
Content-Type: text/html; charset=UTF-8
tcpdump on f5
[root@ve11a:Active:In Sync] config tcpdump -nni 0.0 -s0 port 80
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on 0.0, link-type EN10MB (Ethernet), capture size 65535 bytes
21:43:05.680297 IP 172.28.24.1.35986 > 172.28.24.10.80: S 3281753833:3281753833(0) win 5840 in slot1/tmm0 lis=
21:43:05.683689 IP 172.28.24.1.35986 > 172.28.24.10.80: S 3281753833:3281753833(0) win 5840 out slot1/tmm0 lis=/Common/bar
21:43:05.685341 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 1912735987 win 46 in slot1/tmm0 lis=/Common/bar
21:43:05.685351 IP 172.28.24.1.35986 > 172.28.24.10.80: P 0:155(155) ack 1 win 46 in slot1/tmm0 lis=/Common/bar
21:43:05.685379 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 1 win 46 out slot1/tmm0 lis=/Common/bar
21:43:05.685445 IP 172.28.24.1.35986 > 172.28.24.10.80: P 0:155(155) ack 1 win 46 out slot1/tmm0 lis=/Common/bar
21:43:05.689183 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 244 win 54 in slot1/tmm0 lis=/Common/bar
21:43:05.689184 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 244 win 54 out slot1/tmm0 lis=/Common/bar
21:43:05.690171 IP 172.28.24.1.35986 > 172.28.24.10.80: F 155:155(0) ack 244 win 54 in slot1/tmm0 lis=/Common/bar
21:43:05.690231 IP 172.28.24.1.35986 > 172.28.24.10.80: F 155:155(0) ack 244 win 54 out slot1/tmm0 lis=/Common/bar
21:43:05.692370 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 245 win 54 in slot1/tmm0 lis=/Common/bar
21:43:05.692408 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 245 win 54 out slot1/tmm0 lis=/Common/bar
tcpdump on server
[root@centos101 ~] tcpdump -nni eth0 port 80
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
13:35:33.740303 IP 172.28.24.1.35986 > 172.28.24.10.80: S 3281753833:3281753833(0) win 5840
13:35:33.740566 IP 172.28.24.10.80 > 172.28.24.1.35986: S 1912735986:1912735986(0) ack 3281753834 win 5792
13:35:33.742306 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 1 win 46
13:35:33.742308 IP 172.28.24.1.35986 > 172.28.24.10.80: P 1:156(155) ack 1 win 46
13:35:33.742341 IP 172.28.24.10.80 > 172.28.24.1.35986: . ack 156 win 54
13:35:33.744324 IP 172.28.24.10.80 > 172.28.24.1.35986: P 1:244(243) ack 156 win 54
13:35:33.746570 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 244 win 54
13:35:33.746918 IP 172.28.24.1.35986 > 172.28.24.10.80: F 156:156(0) ack 244 win 54
13:35:33.746987 IP 172.28.24.10.80 > 172.28.24.1.35986: F 244:244(0) ack 157 win 54
13:35:33.749273 IP 172.28.24.1.35986 > 172.28.24.10.80: . ack 245 win 54