debug1: Local connections to LOCALHOST:18006 forwarded to remote address 192.168.1.93:8006
debug1: Local forwarding listening on 127.0.0.1 port 18006.
debug1: channel 0: new [port listener]
debug1: Local forwarding listening on ::1 port 18006.
bind: Cannot assign requested address
What we are seeing is that we can't listen on an IPV6 address of ::1. We need to tell SSH to stop using IPV6 so we'll edit ssh_config to take care of this issue.
Solution:
sudo vi /etc/ssh/ssh_config
Set this:
Host *
AddressFamily inet
Formerly the "inet" would say any which means it would be IPV6 too but we can't have that since it breaks out forwarding!
The "inet" in address family disables IPV6 because we can see in the SSH verbose output earlier that it was trying to listen on ::1 (which is an IPV6 address). This breaks if you don't have IPV6 enabled in your OS which is why we get the message from bind.
ssh, bind, assign, requested, debug, connections, localhost, forwarded, forwarding, listener, ipv, ll, edit, ssh_config, sudo, vi, etc, addressfamily, inet, formerly, quot, disables, verbose, output, enabled, os,