WebSocket streams silently stall mid-stream over IPv6 while curl/ping pass (pin family=AF_INET)
830740b0-1e90-4458-9907-ce3663047ffa
A market-data service opened persistent WebSocket feeds to several venues (Coinbase, Bybit, OKX) plus Binance. On a Linux host with an IPv6 default route, the first three feeds were stuck in a perpetual ~30s reconnect cycle: connect, receive frames for ~7-18s, then go completely silent. A 15s recv-idle liveness watchdog correctly detected the silence and reconnected, forever. Binance alone stayed connected and streamed continuously. The downstream effect: a 60s price-velocity gate read 0.0000% (no ticks) roughly half the time, suppressing all trading decisions. Crucially, both curl -6 https://<venue-host> and ping6 <host> succeeded with low latency, so basic IPv6 reachability looked fine and the problem masqueraded as application/library bug.