|  |      1ayanamist      2017-01-30 02:11:28 +08:00 via Android 默认就是这样的,哪个网卡了的流量就会从哪个网卡回去,否则用户收不到回包的。 | 
|  |      2ryd994      2017-01-30 02:25:16 +08:00 via Android 1.物理网卡和 interface 不一定对应,可以有多个 interface 2. 你的需求可以通过开两个 socks 服务器,并各自 bind 不同 IP 处理。而且 socks 服务器是 7 层,并不在乎哪个 IP 在哪个网卡,只要 IP 对就行。 | 
|  |      3hadoop OP @ayanamist 我问题可能没表述清楚。再具体点, socks 程序监听在 A 和 B 的 1080 端口,现在 client 端有个请求 curl  http://ip.ipinfo.io (获取 ip ),从 B : 1080   进来,通过代理去访问。但是最后返回给 client 的 ip 不是 B 自己的,是 A 的 | 
|      4xfspace      2017-01-30 03:45:02 +08:00 via iPad 你的程序有问题? | 
|  |      5shiji      2017-01-30 04:55:36 +08:00 via Android | 
|  |      6lslqtz      2017-01-30 07:10:53 +08:00 via iPhone @hadoop 从 B:1080 进来 通过 A 去访问 然后通过 B 返回... 我只想到 HTTP 代理可能可以实现。 | 
|      7jasontse      2017-01-30 07:42:07 +08:00 via Android 这事和哪个 IP 进来的没啥关系,你代理发出 tcp 请求 bind 是哪个就是哪个。 | 
|      8zaishanfeng      2017-01-30 09:15:42 +08:00 via Android 开 ss 时就绑定 ip 。 我指的是绑定网卡。方法自行 g | 
|  |      9iRiven      2017-01-30 09:51:06 +08:00 via Android 负载均衡,在外面就要决定要用 A 或 B 吧,再来一个 C ,帮你做这个决定😂 | 
|  |      10gamexg      2017-01-30 10:26:28 +08:00 via Android 这个功能需要 socks5 代理支持,如果不支持的话需要开两个 socks5 ,自己配置策略路由来做。 | 
|      11ic3z      2017-01-30 11:24:47 +08:00 via Android 加路由 | 
|      13snnn      2017-01-30 12:04:23 +08:00 via Android 你为什么需要多 IP ? | 
|      14zwzmzd      2017-01-30 12:15:34 +08:00 via Android 单机多接口建议看看这两篇文章 http://www.wlug.org.nz/SourceBasedRouting http://lartc.org/howto/lartc.rpdb.multiple-links.html 我之前的应用环境是多拨负载均衡,一个网卡上建立了多个 pppoe 链接对外服务 | 
|  |      19hadoop OP @zaishanfeng 单网卡,多 ip ,咋搞? | 
|  |      20Orzzzz      2017-01-30 15:27:32 +08:00 一个网卡只能有一个默认路由,否则会乱套的,这是规定,也是没办法的事情。 | 
|  |      22hadoop OP @shiji 我也想到过用 ss 来做,但是我只需要一个 socks5 代理,后来找了 dante 这个 socks5 软件来实现了从哪个监听 ip 来,就从哪个 ip 出去的功能 | 
|  |      23msg7086      2017-01-31 01:44:07 +08:00 #18 @hadoop 入口 IP 和出口 IP 是两回事,完全无关。 假如你装了 10 块网卡,第 8 块网卡上连进来的请求,你程序做代理的时候照样会从默认 IP 出去。 要改变出口 IP ,需要在代理上绑定出口 IP 。 | 
|      24nomaka      2017-01-31 12:14:39 +08:00 这个路由好像没法做 你要先指两条默认路由 然后 iptables 做 rule | 
|      25kuretru      2017-02-06 22:27:14 +08:00 当时看到这个问题的时候,就想到分别使用两个用户 userA 、 userB 运行 2 个 socks5 进程,最后根据用户指定源 IP 地址这个解决方案,但是不知如何实现,便没有回复。今天偶然看到 iptables 即可支持,-m owner --uid-owner userA ,即可捕捉到指定用户的流量,然后根据需要从 A 地址或 B 地址转发出去。 | 
|  |      26dawncold      2017-02-09 23:05:41 +08:00 连接建立的时候(src_host, src_port, dst_host, dst_port)就已经是确定的了,如果在 A 上建立了连接,你却用 B 返回,这根本就无法返回呢, B 在那个时候都没有根客户端建立起来连接。 你说的负载均衡到底指的是什么,希望有什么效果? |