nginx1.9之后的版本可代理TCP链接
- 其中Windows版本可直接使用
- Linux版本需要在编译(./configure)时添加–with-stream参数
- 简单 示例如下
1.简单代理
1 2 3 4 5 6 7 8
| stream { server { listen 22; proxy_connect_timeout 20s; proxy_timeout 2m; proxy_pass ip:port; } }
|
2.负载均衡 操作与Http代理非常的类似 下面是一个官方Demo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| stream { upstream backend { hash $remote_addr consistent; server backend1.example.com:12345 weight=5; server 127.0.0.1:12345 max_fails=3 fail_timeout=30s; server unix:/tmp/backend3; } server { listen 12345; proxy_connect_timeout 1s; proxy_timeout 3s; proxy_pass backend; } server { listen [::1]:12345; proxy_pass unix:/tmp/stream.socket; } }
|
完