mac 端口转发方案
mac 端口映射
好坑
osx10.10mac移除了ipfw改用pf
pf以前没用过
查文档
mac的 pf语法,没有找到。bsd的倒是很全,心喜拿来一试。
http://www.openbsd.org/faq/pf/rdr.html
试了bsd的几个example都不行。
报语法错误
pfctl: Syntax error in config file: pf rules not loaded
mac的pf和bsd的pf难道还有区别,版本不对?mac是阉割版的?
rdr pass on utun0 proto tcp from any to any port 29017 -> 127.0.0.1 port 27017
生效
rdr pass on lo0 inet proto tcp from any to any port 8987 -> 172.16.231.185 port 80
不生效
也就是说,这种方式只能映射到127.0.0.1上的端口
https://github.com/basecamp/powpow是好东西
可以实现不同服务器的端口转发
但有局限性
只能转发http协议
其他协议都不行
最后用的是
socat TCP4-LISTEN:7888,fork TCP4:172.16.231.185:80
但这样性能却有问题。
待续