我的目的就是讓A,B兩台伺服器能夠存取部署在A上的Redis。
文件裡說,Redis 2.8以上的版本支援在設定檔裡bind多個IP,例如:
bind 192.168.1.100 10.0.0.1
我是2.8以上的版本,然後按照這樣的方式,進行瞭如下設定:
bind IP-A IP-B
可是發現結果A和B都不能訪問了。請問這是什麼原因呢?我配置錯了嗎?
另外我知道註解掉原來的bind 127.0.0.1可以放開存取權限,然後再用防火牆進行限制。但我想弄清楚上面的問題。如有回复,非常感謝!
大家讲道理2017-04-24 09:11:50
你好,這個問題是由於很多文件解釋bind而導致的誤會。很多地方翻譯如下:
指定redis只接收來自於該IP位址的請求,如果不進行設置,那麼將處理所有請求,在生產環境中最好設置該項
但是,實際上,應該bind的是redis所在伺服器網路卡的ip。也就是說,如果你的redis伺服器有兩張網路卡,一張是ip-1,另一張是ip-2,如果你bind ip-1.那麼只有請求ip-1的請求會被接受。
可參考這篇文章:redis中bind與外網訪問
天蓬老师2017-04-24 09:11:50
樓上正解,看redis.conf中所述。
# By default Redis listens for connections from all the **network interfaces**
# available on the server. It is possible to listen to just one or multiple
# interfaces using the "bind" configuration directive, followed by one or
# more IP addresses.
#
# Examples:
#
# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1