![]() | 1 fangdingjun 2015-10-28 12:56:53 +08:00 使用`iptables -nvL -t nat` 查看一下规则的计数,如果计数不为 0 ,则规则没有问题,要检查 192.168.5.100 的配置 |
![]() | 2 paradislover OP @fangdingjun 192.168.5.100 需要怎么配置 |
![]() | 3 GPU 2015-10-28 13:11:05 +08:00 iptables -t nat -A POSTROUTING -p tcp -d 192.168.5.100 --dport 1080 -j SNAT --to-source 192.168.5.1 以上这条换 iptables -t nat -A POSTROUTING -j MASQUERADE 试试行不行 |
![]() | 4 paradislover OP @GPU 不行,依然不能通过 192.168.5.100 上网 |
![]() | 5 GPU 2015-10-28 15:15:59 +08:00 @paradislover 画个图片把。文字有点难理解 |
![]() | 6 paradislover OP @GPU 图片已附 |
![]() | 7 GPU 2015-10-28 18:09:25 +08:00 你有的. ip_forward 了? |
![]() | 8 EPr2hh6LADQWqRVH 2015-10-28 18:29:45 +08:00 简直乱搞, 你确定你懂 DNAT 是啥? 让你算力强的机器当默认网关,在这台机器上再连上级路由器,所有数据包多一跳 还有难道 Geoip 就不消耗算力么 |
![]() | 9 lsylsy2 2015-10-28 18:38:59 +08:00 @avastms 他应该是让那台机器做 s!@#s 的服务器( v!@#p$%^n 同理),加密吃的 CPU 比 geoip 多多了 |
![]() | 10 paradislover OP @lsylsy2 还是你懂我 |
![]() | 11 paradislover OP @avastms 那给个方案吧, proxy 没法分流,就是这么个情况,所以…折腾 |
![]() | 12 lsylsy2 2015-10-28 19:52:05 +08:00 @paradislover 因为我也在研究这么搞…… 不过我是 VPN ,最后大概是拿块 x86 的主板当主路由,而且 VPN 是改路由表也不涉及 ipset 所以没啥经验给你了…… |
![]() | 13 pagxir 2015-10-28 22:16:44 +08:00 via iPad 跟路由没关系,是因为你的 proxy 是无法正常工作的,因为在执行 NAT 转发的过程中你的目标 IP 经被修改了所以请你的 pxoxy 根本不可能拿到正确的目标地址。 |
![]() | 14 XiaoxiaoPu 2015-10-28 22:36:19 +08:00 楼上说得对 ss-redir 之所以能透明代理,是因为内核在 redirect 时保存了原始的目的地址和端口,可以用 socket 接口取得。跨越了不同的机器后,原始的目的地址和端口就丢失了。 |
![]() | 15 paradislover OP @pagxir 恩,受教 |
16 BOYPT 2015-10-28 23:35:44 +08:00 看到标题脑内自觉翻译成英文 |
17 firexp 2015-10-28 23:53:32 +08:00 ss-redir 必须运行在网关上 |
![]() | 18 pagxir 2015-10-29 11:38:27 +08:00 其实可以有变通的方法实现你的需求的, 方法 1 、修改 DNS 方法 2 、请作如下修改 sysctl -w net.ipv4.conf.all.rp_filter=0 iptables -t mangle -A PREROUTING -p tcp -d <YOUR_RELAY_VPS_IP> -j RETURN iptables -t mangle -A PREROUTING -p tcp -m geoip ! --dst-cc CN -j MARK --set-mark 0x33445566 ip route flush table 30 ip route add default dev $if_lan table 30 ip rule add fwmark 0x33445566 table 30 pref 999 |