ansible ping hanging on a single node with no errors

I am trying to run an ansible ping, but it it hanging on a single hostname, and showing no error or log messages.

[defaults]
host_key_checking = False
command_warnings = False
error_on_undefined_vars = True
gathering = smart
#ssh_args = -o ControlMaster=auto -o ControlPersist=30m
inventory = ~/hosts/ansible.dyn
#transport = paramiko

[ssh_connection]
control_path = %(directory)s/%%h-%%p-%%r

Well, back to basics.

Can you SSH to the server manually?
If so, try adding '-vvvv' to the ping task to see if that gives any clues.

Normal ssh is fine and running with -vvvv gives no clues at all. It processes one host fine, then just hangs with no output at all.

Are all the params in that ansible config correct (specifically the
control path)?
I don't know if they're defaults,
or you've customised them for some reason, but I'd be verifying those next.