コマンドは2つ、ローカル SOCKS ポートも2つ、しかしパブリック IP は1つ。両方の SSH 接続が同じサーバーに到達し、サーバーが同じ外向きネットワーク経路を使うとき、これは正常です。

SSH へのログインに使うアドレスは内向きです。Web サイトへの接続は、ローカル動的フォワードのサーバー側から開かれる新しい外向き接続です。この2つの役割は別物です。

1台の VPS で SSH をアドレス A に接続し、次にアドレス B に接続しても、A と B を転送接続のそれぞれの送信元として使うよう指示したことにはなりません。ルーティングと送信元アドレスの選択が同じ送信元を選ぶことがあります。

ローカルポートは取っ手であり、新しい身元ではない

ポート 1080 と 1081 はノート PC 上のリスナーを区別するだけです。遠隔のアドレスを割り当てるわけではありません。動的フォワードのドキュメントは、宛先がリモート側から開かれる仕組みを説明していますが、SSH ログインアドレスごとに1つの送信元アドレスを約束するものではありません。

出口を分けるなら、選択をアーキテクチャ上で明示します。外向き経路が異なる別々のゲートウェイは1つの選択肢です。送信元制御が文書化された専用プロキシも別の選択肢です。Squid の外向きアドレスの制御は、これがクライアント接続の受け入れとは別の機能であることを示しています。

SSH のローカルオプション -b はリモート出口の選択子ではありません。クライアント側の SSH 接続を束縛するもので、リモートサーバーの Web サイト接続の送信元を決めるものではありません。

アドレスファミリーと NAT も確認してください。IPv6 のサイトは IPv4 専用サイトとは別の身元を見ることがあり、複数のサーバーアドレスが1つのパブリック送信元に変換されることもあります。設定したポートや SSH ログインアドレスだけでなく、使える外向き経路を数えてください。

関連記事