在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Linux  網(wǎng)絡(luò)安全/ nginx tcp流量轉(zhuǎn)發(fā),本地DNS服務(wù)器不生效

nginx tcp流量轉(zhuǎn)發(fā),本地DNS服務(wù)器不生效

nginx tcp流量轉(zhuǎn)發(fā),本地DNS服務(wù)器不生效

現(xiàn)在有一個簡單需求是通過nginx來進行tcp流量的轉(zhuǎn)發(fā),即nginx監(jiān)聽某端口,當接收到請求時,將流量轉(zhuǎn)發(fā)到對應(yīng)的域名及端口,由于這個域名是時長變化的,需要通過一個本地的DNS進行查詢。

但是在配置resolver后,發(fā)現(xiàn)nginx并沒有去查詢本地DNS,仍然是查詢了系統(tǒng)的DNS(不是緩存的問題)。如果將系統(tǒng)的DNS服務(wù)器改為本地DNS服務(wù)器地址,則可以正常轉(zhuǎn)發(fā)。

配置如下所示,其實非常簡單。

stream {
    resolver 127.0.0.1;
    server {
        listen 8888;
        proxy_pass 1.service.consul:80
    }
}

如上所示,就是要把8888端口的流量轉(zhuǎn)發(fā)到1.service.consul所對應(yīng)的ip上,求各位大佬賜教。

回答
編輯回答
笑浮塵

proxy_pass要使用變量,才會由nginx發(fā)起DNS請求
所以先設(shè)置一個變量即可

set $consul "1.service.consul";
proxy_pass  $consul:80;
2017年9月8日 03:11