1
defunct9 2018-02-22 04:31:18 +08:00 via iPhone
如上的例子用 nginx 来做岂不是更好一些
|
2
Geoion 2018-02-22 05:11:47 +08:00
没看太懂,但是好像 qtunnel 能满足需求
|
3
msg7086 2018-02-22 06:50:24 +08:00 2
前几天刚刚做过类似的配置。
我们的场景是,A 要访问某个主机 C,但是由于某些原因 C 把 A 的流量 block 了,于是需要用 B 中转。 B 机 iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source B 机 IP iptables -A FORWARD -i eth0 -o eth0 -s A 机 IP -j ACCEPT iptables -A FORWARD -i eth0 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT A 机 ip r add C 机 IP/32 dev eth0 via B 机 IP 当然我们是内网环境,所以没有加额外的保护,你用的话应该要加上 IP 限定。 但是反正就是 SNAT 的事情。 |
4
mingl0280 2018-02-22 10:37:35 +08:00
你这个需求在本地做 PAC 代理规则比较好……因为是 HTTP/HTTPS,iptables 起来比较烦,因为有各种 CDN 啊什么的
如果非要搞的话 -t nat -A PREROUTING -d [final_target_addr] -p tcp --dport [final-target-port] -j DNAT --to-destination [B-addr]:[B-port] #去程的包转发到跳板机 -t nat -A POSTROUTING -s [source_addr] -o [income_netdevice] -j MASQUERADE #返回的包让他自动搞去 |
5
scegg 2018-02-22 10:58:21 +08:00
直接加个 route 不就好了。。。
debian 语法: route add -net 1.2.3.0/24 gw gateway.ip.address |
6
yongw520 OP 感谢提供帮助的各位, 最终使用 shadowsocks-libev-redir 并配合 iptables 与 ipset 再做了层代理.
参考了该思路: https://medium.com/@terrancesiu/rixcloud%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5-cf9d828f82fd |
7
Abby11 2018-04-06 09:46:56 +08:00
@yongw520 请问你有碰到这个问题么?如何解决?
# whois -h riswhois.ripe.net -- '-i origin AS14618' | grep "route: " | awk '{print $NF}' | sort | /usr/local/sbin/listclean.sh >>/root/as14618.txt -bash: /usr/local/sbin/listclean.sh: Permission denied 我用了 chmod 777 还是不行 |