请教 iptables nat 转发的问题?

2015-10-24 00:16:10 +08:00
 boogiefer
在内网树莓派上搭建了 VPN server 和 sslocal ,路由器端口映射 VPN 端口到树莓派。希望通过 iptables 将外网登录到 VPN 网络的客户端流量转发到 sslocal 上去。

iptables 小白。目前是这样写到规则,没用。

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 1080
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 1080

请问下 iptables 规则应该怎样设置?
6469 次点击
所在节点    Linux
24 条回复
likuku
2015-10-24 00:31:44 +08:00
/etc/sysctl.conf 里 ipv4_forward 开启了么?
extreme
2015-10-24 00:57:26 +08:00
ss-local 监听的是 SOCKS5 协议吧,用 ss-redir ……
LINAICAI
2015-10-24 01:23:35 +08:00
VPN 各种封了,已经放弃了。。。
ryd994
2015-10-24 05:16:18 +08:00
你只能在派上转发啊,因为路由器并不知道 vpn 里走的是什么内容
另外,如楼上说,用 ss-redir 或者 redsocks
cnleoyang
2015-10-24 10:24:26 +08:00
@LINAICAI 楼主的 rpi 应该是放在家里的,电信网内各 vpn 协议应该都是正常的(推荐 openvpn ),移动和长宽可能会有封禁机制。
boogiefer
2015-10-24 12:00:27 +08:00
@likuku 开启了,登录 VPN 是可以的上网的。
boogiefer
2015-10-24 12:06:07 +08:00
@extreme iptables 转发不是 tcp 那层的流量么,与协议相关?
@ryd994 我是在 pi 上转发的,路由只负责映射外网端口
ryd994
2015-10-24 12:36:59 +08:00
@boogiefer ss 开的是 socks ,是有额外的头数据指定要连接的主机和端口的,你查 socks 协议就知道了
但正常的 TCP 连接并不包括这部分,所以单纯的 iptables 转发是不行的,要配合 ssredir
rungo
2015-10-24 13:47:41 +08:00
直接 iptables 转发肯定不行,需要加一层 rednecks, 把 vpn 过来的流量转成 socks5 到 ss 上
LINAICAI
2015-10-24 13:48:09 +08:00
@cnleoyang 之前试过 SS 和 vpn 共存,不是不能上 VPN,而是各个运营商的网络非常不稳定,有些能上,有些经常断,用的正是 PPTP 协议。
我在 VPS 上搭建的一套,只不过想在 IOS 系统上能方便的使用 VPN ,后来实在不稳定,已经放弃了。
rungo
2015-10-24 13:48:09 +08:00
@rungo rednecks->redsocks
cattyhouse
2015-11-20 21:29:37 +08:00
目测 LZ 已经在 pi 上装了个 vpn 服务器,那么再在 pi 上装个 vpn 客户端拨号到境外服务器上,就 o 了。

更简单的办法:用 iptables 的 DNAT 把拨号进来的 VPN 端口转发到境外 VPN 端口,这样 pi 上不用装 vpn 也不用装 ss
boogiefer
2015-11-20 23:02:37 +08:00
@cattyhouse 我的目标就是在境外服务器只部署 ss ,而不用安装 vpn server ,这样的好处就是配置只集中在 pi 上面, vps 挂了我改下 pi 的配置文件就好了。
cattyhouse
2015-11-21 20:02:10 +08:00
@boogiefer Pi 带的动 VPN 吗,据说速度只有 30Mbps 撑死。
boogiefer
2015-11-21 22:24:34 +08:00
@cattyhouse 看使用场景,大多数情况,我是在蜂窝网络或者在公共 wifi 使用,所以对速度没有极致要求。
mmmyc
2016-12-19 06:17:54 +08:00
楼主,可否留个联系方式,求指导
企鹅:捌 5 捌 1 捌 5 捌 26
boogiefer
2016-12-19 11:50:51 +08:00
@mmmyc 什么问题呢
mmmyc
2016-12-19 13:12:02 +08:00
@boogiefer
现状:
本地用 openvpn 连接墙内的 QQ 云 centos , QQ 云用 ss 连接墙外的 do 云。
期望:
在 QQ 云分流,使 openvpn 用户访问墙内网直接连接;访问墙外网则通过 ss 代理。
问题:
已在 QQ 云安装 ss-libev ,并成功 ss 到 do 云,并根据网上教程配置路由表和转发。但连接上 openvpn 后所有网站均打不开。
楼主能否给出详细配置?谢谢
boogiefer
2016-12-19 18:06:56 +08:00
boogiefer
2016-12-19 18:07:58 +08:00

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

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

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

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

© 2021 V2EX