Il problema era con la dimensione mtu dell’interfaccia docker. Ho una connessione PPPoE che ha una dimensione mtu inferiore a 1500 byte, quindi quello che ho dovuto fare è stato impostare il MSS clamping in iptables.
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
Maggiori informazioni sulla soluzione sono disponibili qui: https://stackoverflow.com/a/79081640/1342413