Two commands, two local SOCKS ports, one public IP. That is normal when both SSH connections reach the same server and the server uses the same outward network path.

The address used to log into SSH is incoming. The website connection is a new outgoing connection from the server side of a local dynamic forward. Those roles are separate.

Connecting SSH to address A and then to address B on one VPS does not instruct it to use A and B as the respective sources of forwarded connections. The routing and source-address selection can choose the same source for both.

A local port is a handle, not a new identity

Ports 1080 and 1081 distinguish listeners on your laptop. They do not allocate remote addresses. The dynamic forwarding documentation explains how destinations open from the remote side without promising one source address per SSH login address.

For separate exits, make selection explicit in the architecture. Separate gateways with distinct outward paths are one option. A dedicated proxy with documented source control is another. Squid's outgoing address control illustrates that this is a separate feature from accepting a client connection.

SSH's local -b option is not a remote exit selector. It binds the client-side SSH connection, not the source of a remote server's website connection.

Check address family and NAT too. An IPv6 website can see a different identity than an IPv4-only site, and several server addresses can be translated to one public source. Count usable outward paths, not just configured ports or SSH login addresses.

Allakkat attuumassuteqartut