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

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

我正在使用portforwarding。

 ssh -D 1080 [email protected] 

但是当我去检查IP网站(IP2位置),那么我的IP是: 1.1.1.1

我想用: ssh -D 1081 [email protected] – >在外部网站上显示为我的ip 1.1.1.1

ssh -D 1080 [email protected] – >在外部网站上查看我的ip 2.2.2.2

请告诉我。

这比你的问题意味着更难。

使用SSH SOCKS代理,服务器sshd进程将代表客户端build立连接。 源IP的select不关注您连接的端口或IP,并且没有可以给ssh显式设置的参数。

连接的源IP由(按顺序)select:

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

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

更清晰的方法可能是使用iproute2的基于策略的路由 。 configuration两个单独的路由表,每个都有相关的src提示,然后可能创build一个策略,根据用户上下文select一个表,从而使用适当的源IP进行路由。