我如何使用端口转发到多 IP

我如何使用端口转发到多 IP

我有两个 IP(公共 IP)eth01.1.1.1eth0:12.2.2.2

我正在使用端口转发。

ssh -D 1080 [email protected]

但是当我去检查 IP 站点 (ip2location) 时我的 IP 是:1.1.1.1

我想要使​​用:--> 在外部网站上显示为我的 IPssh -D 1081 [email protected]1.1.1.1

并且--> 以我的 IP 在外部网站上查看 ssh -D 1080 [email protected]2.2.2.2

请告诉我。

答案1

这比你的问题所暗示的要困难得多。

使用 SSH SOCKS 代理,服务器 sshd 进程将代表您的客户端建立连接。源 IP 的选择不会考虑您连接的端口或 IP,并且ssh您无法提供任何参数来明确设置。

选择连接的源 IP按(顺序):

  • 应用程序明确设置的任何值(ssh 客户端不允许这样做)
  • src 暗示在路由表中(默认未设置)
  • 接口上配置的第一个 IP(通常是默认
    选项,也可能是为什么通过代理的所有连接都来自1.1.1.1.

解决这个问题的一个粗略方法是,在连接时,使用一些脚本来确定用于 ssh 连接的端口或 IP,并运行相关ip route add default via <next-hop> src 1.1.1.1命令来设置暗示,但这仅在您一次只打开一个代理连接时才有效;该命令将更改来自服务器的所有连接的默认源 IP。

更简洁的方法可能是使用 iproute2 的基于策略的路由. 配置两个单独的路由表,每个路由表都有相关的src提示,然后可能创建一个根据用户上下文选择一个表的策略,从而使用适当的源 IP 进行路由。

相关内容