deluge on docker 如何绕开旁路由 gateway?

2020-12-27 10:54:36 +08:00
 jemyzhang
昨天折腾了一天,tracker 报错说是 invalid port,后来猛然发现是因为本机过了 clash 旁路由,但是 docker 好像不支持指定 gateway,host 方式如果用 route 设置就会同时改主机的,bridge 方式试了一下改 default gateway 就不能联网了。
不知道 iptables 能不能搞定这件事情,看看大侠有没有比较简单完美的解决方案。
1087 次点击
所在节点    问与答
3 条回复
rrfeng
2020-12-27 13:59:34 +08:00
bridge 肯定可以的。
jemyzhang
2020-12-27 14:07:46 +08:00
@rrfeng 怎么玩,能不能给点方法或者例子?
whitegerry
2020-12-27 20:03:12 +08:00
@jemyzhang 有个相反的需求,指定 gitea 容器走 clash 旁路由,用了 redsocks,192.168.100.2 是旁路,你这个需求类似的办法应该也行

docker
```
networks:
gitea-net:
driver_opts:
com.docker.network.bridge.name: br_gitea
```

iptables
```
iptables -t nat -N REDSOCKS
iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN
iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN
iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN
iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN
iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-ports 12345
iptables -t nat -A PREROUTING -i br_gitea -j REDSOCKS
```


redsocks.conf
```
redsocks {
local_ip = 0.0.0.0;
local_port = 12345;

ip = 192.168.100.2;
port = 7891;
type = socks5;
}
```

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

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

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

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

© 2021 V2EX