How to Fix MacOS Big Sur / Apple Silicon SSH issue – client_loop: send disconnect: Broken pipe

There appears to be an issue with connecting via SSH to remote clients on MacOS Big Sur running on Apple M1 (Apple Silicon) chips. This might also affect Catalina users (Intel x86 chips) as well.

The symptom is that when you attempt to open an SSH session to a remote host, the terminal window just hangs for a long time then finally spits out this:

client_loop: send disconnect: Broken pipe

Luckily, the fix is simple. Add the -o flag with IPQoS=throughput set like so:

ssh -o IPQoS=throughput username@somehost.com

Replace “username” and “somehost.com” as appropriate, and that should do the trick!

You can also create a .ssh/config file or add to an existing if you have already have one, and put this in so that you can skip the -o flag option entirely:

Host *
IPQoS=throughput