nginx四層代理實現端口轉發


nginx四層代理實現端口轉發

nginx 從1.9.0版本開始支持四層代理,四層代理時,編譯需要添加 --with-stream模塊

下面舉個栗子:
A機器:47.92.125.67 安裝了mysql,端口3306
B機器:106.53.96.205 安裝了nginx
C機器:103.45.106.55 客戶端,要訪問A機器的mysql

nginx配置如下:
```
stream {
upstream cloudsocket {
hash $remote_addr consistent;
server 47.92.125.67:3306 weight=5 max_fails=3 fail_timeout=30s;
}
server {
listen 80;#數據庫服務器監聽端口
proxy_connect_timeout 10s;
proxy_timeout 300s;#設置客戶端和代理服務之間的超時時間,如果5分鍾內沒操作將自動斷開。
proxy_pass cloudsocket;
}

```
注意:stream和http是同級的,要寫在http外邊

測試:
C機器訪問B機器80端口
```
mysql -P80 -uroot -p123456 -h106.53.96.205
```
結果:
可以登錄到A機器的mysql的3306端口


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM