Yea, I totally got creamed by that misunderstanding, which is irritating as I've run into it before when using `ssh -R`. Sorry about that :( I agree we should find a different name for it if possible. `remote_bind_address` isn't awful and I can't think of anything that's much shorter while not being more ambiguous.

Ditto on `local_host`, given it's the same meaning (what IP/iface to bind on). So maybe we make them `remote_bind_addr` and `local_bind_addr`, and (since they're IMO less likely to need overriding than either port arg) turn it into e.g.:

``` python
def remote_tunnel(remote_port, local_port=None, remote_bind_addr=None, local_bind_addr=None):
    # impl
```

Honestly I could see us naming the bind-addr args any of:

* `*_bind`: shortest but not super intuitive/readable
* `*_bind_addr` as above: middle ground between length & ambiguity
* `*_bind_address`: most explicit but certainly a bit long

I'll leave that decision up to you since I've been so opinionated on the rest :)