Linux 单网卡多 ip 如何指定非默认 ip 的路由?

2017-01-30 01:58:21 +08:00
 hadoop
具体来说,一个 linux server ,单网卡,有 2 个 ip , A 和 B , A 是主 ip,这俩同一个网段,ssh都能连得上 。

现在比如搭一个 socks5 代理,希望负载均衡分别能从两个 ip 出去(请求从哪个 ip 来,就从哪个 ip 出去),这个请问该怎么实现?
4383 次点击
所在节点    Linux
26 条回复
ayanamist
2017-01-30 02:11:28 +08:00
默认就是这样的,哪个网卡了的流量就会从哪个网卡回去,否则用户收不到回包的。
ryd994
2017-01-30 02:25:16 +08:00
1.物理网卡和 interface 不一定对应,可以有多个 interface
2. 你的需求可以通过开两个 socks 服务器,并各自 bind 不同 IP 处理。而且 socks 服务器是 7 层,并不在乎哪个 IP 在哪个网卡,只要 IP 对就行。
hadoop
2017-01-30 02:26:31 +08:00
@ayanamist 我问题可能没表述清楚。再具体点, socks 程序监听在 A 和 B 的 1080 端口,现在 client 端有个请求 curl http://ip.ipinfo.io (获取 ip ),从 B : 1080 进来,通过代理去访问。但是最后返回给 client 的 ip 不是 B 自己的,是 A 的
xfspace
2017-01-30 03:45:02 +08:00
你的程序有问题?
shiji
2017-01-30 04:55:36 +08:00
lslqtz
2017-01-30 07:10:53 +08:00
@hadoop 从 B:1080 进来 通过 A 去访问 然后通过 B 返回...
我只想到 HTTP 代理可能可以实现。
jasontse
2017-01-30 07:42:07 +08:00
这事和哪个 IP 进来的没啥关系,你代理发出 tcp 请求 bind 是哪个就是哪个。
zaishanfeng
2017-01-30 09:15:42 +08:00
开 ss 时就绑定 ip 。 我指的是绑定网卡。方法自行 g
iRiven
2017-01-30 09:51:06 +08:00
负载均衡,在外面就要决定要用 A 或 B 吧,再来一个 C ,帮你做这个决定😂
gamexg
2017-01-30 10:26:28 +08:00
这个功能需要 socks5 代理支持,如果不支持的话需要开两个 socks5 ,自己配置策略路由来做。
ic3z
2017-01-30 11:24:47 +08:00
加路由
hadoop
2017-01-30 11:37:23 +08:00
@ic3z 能具体点不?
snnn
2017-01-30 12:04:23 +08:00
你为什么需要多 IP ?
zwzmzd
2017-01-30 12:15:34 +08:00
单机多接口建议看看这两篇文章
http://www.wlug.org.nz/SourceBasedRouting
http://lartc.org/howto/lartc.rpdb.multiple-links.html

我之前的应用环境是多拨负载均衡,一个网卡上建立了多个 pppoe 链接对外服务
ic3z
2017-01-30 13:53:08 +08:00
@hadoop 如果目的地址不固定的话当我没说。。
hadoop
2017-01-30 13:54:26 +08:00
@snnn 爬虫代理啊
hadoop
2017-01-30 13:55:02 +08:00
@zwzmzd 多谢,我看下
hadoop
2017-01-30 15:22:41 +08:00
@lslqtz 不是,我希望的是从 B:1080 进来的请求,通过 B 去访问,但是现在实验下来还是根据 A 去访问了
hadoop
2017-01-30 15:23:11 +08:00
@zaishanfeng 单网卡,多 ip ,咋搞?
Orzzzz
2017-01-30 15:27:32 +08:00
一个网卡只能有一个默认路由,否则会乱套的,这是规定,也是没办法的事情。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/337378

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX