Jon_43169
Jun 05, 2014Nimbostratus
Logs say no route to host. Routing table and tcptrraceroute say otherwise. Reset packets being sent as a result.. halp
I've not seen this before and am honestly stumped.
From the logs:
Thu Jun 5 12:00:34 CDT 2014 err F5 tmm[9502] 01230140 RST sent from 10.180.48.237:80 to 10.180.48.3:58937, [0x174f304:2855] No route to host
Thu Jun 5 12:02:08 CDT 2014 err F5 tmm[9502] 01230140 RST sent from 10.180.48.237:80 to 10.180.48.3:59023, [0x174f304:2855] No route to host
Thu Jun 5 12:33:39 CDT 2014 err F5 tmm1[9502] 01230140 RST sent from 10.180.48.237:80 to 10.180.48.3:62140, [0x174f304:2855] No route to host
Thu Jun 5 12:34:36 CDT 2014 err F5 tmm2[9503] 01230140 RST sent from 10.180.48.237:80 to 10.180.48.3:62230, [0x174f304:2855] No route to host
From the cli:
[root@F5:Active:Changes Pending] config tcptraceroute 10.180.62.121 -p 80
traceroute to 10.180.62.121 (10.180.62.121), 30 hops max, 40 byte packets
1 (192.168.193.2) 0.669 ms 0.883 ms 0.880 ms
2 (10.180.62.121) 2.888 ms 2.867 ms 2.853 ms
[root@F5:Active:Changes Pending] config telnet 10.180.62.121 80
Trying 10.180.62.121...
Connected to 10.180.62.121.
Escape character is '^]'.
GET /r\n\
...
[output truncated]
Packet capture:
tcpdump -nni any host 10.180.48.237 or host 10.180.62.121 or host 10.180.62.122
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type EN10MB (Ethernet), capture size 96 bytes
13:18:41.546914 IP 10.180.48.3.49224 > 10.180.48.237.80: S 2908648920:2908648920(0) win 65535
13:18:41.546950 IP 10.180.48.237.80 > 10.180.48.3.49224: S 2185775265:2185775265(0) ack 2908648921 win 4140
13:18:41.559960 IP 10.180.48.3.49224 > 10.180.48.237.80: . ack 1 win 53248
13:18:41.560068 IP 10.180.48.237.80 > 10.180.48.3.49224: R 1:1(0) ack 1 win 4140
From the client testing:
a041235@SATD-L-PB01KVKP ~
$ curl -ivvv http://10.180.48.237
* STATE: INIT => CONNECT handle 0x60002e1c0; line 1026 (connection -5000)
* Rebuilt URL to: http://10.180.48.237/
* Hostname was NOT found in DNS cache
* Trying 10.180.48.237...
* STATE: CONNECT => WAITCONNECT handle 0x60002e1c0; line 1073 (connection 0)
* Connected to 10.180.48.237 (10.180.48.237) port 80 (0)
* STATE: WAITCONNECT => DO handle 0x60002e1c0; line 1192 (connection 0)
> GET / HTTP/1.1
> User-Agent: curl/7.36.0
> Host: 10.180.48.237
> Accept: */*
>
* STATE: DO => DO_DONE handle 0x60002e1c0; line 1278 (connection 0)
* STATE: DO_DONE => WAITPERFORM handle 0x60002e1c0; line 1404 (connection 0)
* STATE: WAITPERFORM => PERFORM handle 0x60002e1c0; line 1417 (connection 0)
* Recv failure: Connection reset by peer
* Closing connection 0
* The cache now contains 0 members
* Expire cleared
curl: (56) Recv failure: Connection reset by peer
And finally config bits:
root@(F5)(cfg-sync Changes Pending)(Active)(/NONPROD)(tmos) list ltm virtual crmqa
ltm virtual crmqa {
destination 10.180.48.237:http
ip-protocol tcp
mask 255.255.255.255
partition NONPROD
pool crmqa
profiles {
/Common/tcp { }
}
source 0.0.0.0/0
vlans-disabled
}
root@(F5)(cfg-sync Changes Pending)(Active)(/NONPROD)(tmos) list ltm pool crmqa
ltm pool crmqa {
members {
SA1W-PIVWEB-Q1:http {
address 10.180.62.121
session monitor-enabled
state up
}
SA1W-PIVWEB-Q2:http {
address 10.180.62.122
session monitor-enabled
state up
}
}
monitor MON-HTTP
partition NONPROD
}
root@(F5)(cfg-sync Changes Pending)(Active)(/NONPROD)(tmos) list ltm monitor http MON-HTTP
ltm monitor http MON-HTTP {
defaults-from /Common/http
destination *:*
interval 5
partition NONPROD
send "GET /\\r\\n"
time-until-up 0
timeout 16
}
When I try to hit the virtual server, there's a three way handshake followed by an immediate reset. The F5 is reporting there's no route to host, which I presume its referencing it's pool members in that statement? I dunno.. any help would be appreciated.