redis中bind有什么用-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)redis中bind有什么用的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),嵊州企業(yè)網(wǎng)站建設(shè),嵊州品牌網(wǎng)站建設(shè),網(wǎng)站定制,嵊州網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,嵊州網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

我一直以為redis配置文件中的bind的作用是:限制redis服務(wù)器用來(lái)接收來(lái)自哪些服務(wù)器(IP地址)的redis連接請(qǐng)求,只有在bind指定的IP地址的計(jì)算機(jī)才可以訪問這個(gè)redis服務(wù)器。

事實(shí)證明,上面的結(jié)論大錯(cuò)特錯(cuò)。

今天在搭建Redis服務(wù)集群的時(shí)候,發(fā)現(xiàn)自己一直以來(lái)對(duì)Redis中bind的理解的一個(gè)誤區(qū)。

例如:

bind 127.0.0.1      就是用來(lái)限制只有本機(jī)可以連接redis服務(wù)連接

bind 0.0.0.0         就是用來(lái)允許任意計(jì)算機(jī)都可以連接redis服務(wù)連接。

注意:以上的理解都是錯(cuò)誤的。他們正好是特例,對(duì)我們產(chǎn)生了一種錯(cuò)覺。

不信的的話你們可以試一試:(好試一試)

bind 10.0.0.1(或者除了127.0.0.1和0.0.0.0之外的任何IP地址)

然后重啟redis,就會(huì)發(fā)現(xiàn)啟動(dòng)不起來(lái)。

redis中bind有什么用

對(duì)于為什么啟動(dòng)不起來(lái),你們知道了bind的真正意思之后,就會(huì)明白啟動(dòng)不起來(lái)的原因。

對(duì)于Redis中bind的正確的理解是:

bind:是綁定本機(jī)的IP地址,(準(zhǔn)確的是:本機(jī)的網(wǎng)卡對(duì)應(yīng)的IP地址,每一個(gè)網(wǎng)卡都有一個(gè)IP地址),而不是redis允許來(lái)自其他計(jì)算機(jī)的IP地址。

如果指定了bind,則說(shuō)明只允許來(lái)自指定網(wǎng)卡的Redis請(qǐng)求。如果沒有指定,就說(shuō)明可以接受來(lái)自任意一個(gè)網(wǎng)卡的Redis請(qǐng)求。

舉個(gè)例子:如果redis服務(wù)器(本機(jī))上有兩個(gè)網(wǎng)卡,每一個(gè)網(wǎng)卡對(duì)應(yīng)一個(gè)IP地址,例如IP1和IP2。(注意這個(gè)IP1和IP2都是本機(jī)的IP地址)。

我們的配置文件:bind IP1。  只有我們通過(guò)IP1來(lái)訪問redis服務(wù)器,才允許連接Redis服務(wù)器,如果我們通過(guò)IP2來(lái)訪問Redis服務(wù)器,就會(huì)連不上Redis。

查看本地的網(wǎng)卡對(duì)應(yīng)的IP地址:使用ifconfig命令。

redis中bind有什么用

從上面看出我們有兩個(gè)網(wǎng)卡,也就是我們只能使用:127.0.0.1和172.18.235.206最為bind的地址,不然redis啟動(dòng)不起來(lái)。

這就說(shuō)明了上面例子(bind 10.0.0.1)為什么啟動(dòng)不起來(lái),因?yàn)槲覀儧]有對(duì)應(yīng)的網(wǎng)卡IP地址。這就說(shuō)明了bind并不是指定redis中可以接受來(lái)自哪些服務(wù)器請(qǐng)求的IP地址。

而是:bind用于指定本機(jī)網(wǎng)卡對(duì)應(yīng)的IP地址。

附注:

bind 127.0.0.1的解釋:(為什么只有本機(jī)可以連接,而其他不可以連接)

我們從ifconfig可以看出:lo網(wǎng)卡(對(duì)應(yīng)127.0.0.1IP地址):是一個(gè)回環(huán)地址(Local Loopback),也就是只有本地才能訪問到這個(gè)回環(huán)地址,而其他的計(jì)算機(jī)也只能訪問他們自己的回環(huán)地址。

那么來(lái)自這個(gè)lo網(wǎng)卡的計(jì)算機(jī)只有本機(jī),所以只有本機(jī)可以訪問,而其他計(jì)算機(jī)不能訪問。

bind 172.18.235.206的話,只要通過(guò)這個(gè)網(wǎng)卡地址(172.18.235.206)來(lái)的Redis請(qǐng)求,都可以訪問redis。我使用的阿里云的服務(wù)器。我在另一個(gè)服務(wù)器上去請(qǐng)求              redis-cli 阿里云公網(wǎng)IP地址        就會(huì)連接到redis服務(wù)器。

因?yàn)楣W(wǎng)地址的請(qǐng)求:都是經(jīng)過(guò)這個(gè)eth0的網(wǎng)卡地址(172.18.235.206),從而接收到這個(gè)redis請(qǐng)求。

當(dāng)你們不使用那個(gè)回環(huán)地址,基本上外部的計(jì)算機(jī)都可以訪問本機(jī)的Redis服務(wù)器。

如果我們想限制只有指定的主機(jī)可以連接到redis中,我們只能通過(guò)防火墻來(lái)控制,而不能通過(guò)redis中的bind參數(shù)來(lái)限制。

使用阿里云的安全組,來(lái)限制指定的主機(jī)連接6379端口。

redis中的【protected-mode】的理解:

redis本身無(wú)法限制【只有指定主機(jī)】連接到redis中,就像我上面說(shuō)的一樣,bind指定只是用來(lái)設(shè)置接口地址(interfaces)。

1、如果你的bind設(shè)置為:bind 127.0.0.1,這是非常安全的,因?yàn)橹挥斜九_(tái)主機(jī)可以連接到redis,就算不設(shè)置密碼,也是安全的,除非有人登入到你的服務(wù)器上。

2、如果你的bind設(shè)置為:bind 0.0.0.0,表示所有主機(jī)都可以連接到redis。(前提:你的服務(wù)器必須開放redis的端口)。這時(shí)設(shè)置密碼,就會(huì)多一層保護(hù),只有知道密碼的才可以訪問。也就是任何知道密碼的主機(jī)都可以訪問到你的redis。

protected-mode是redis本身的一個(gè)安全層,這個(gè)安全層的作用:就是只有【本機(jī)】可以訪問redis,其他任何都不可以訪問redis。這個(gè)安全層開啟必須滿足三個(gè)條件,不然安全層處于關(guān)閉狀態(tài):

(1)protected-mode yes(處于開啟)

(2)沒有bind指令。原文:The server is not binding explicitly to a set of addresses using the "bind" directive.

(3)沒有設(shè)置密碼。原文:No password is configured。

這時(shí)redis的保護(hù)機(jī)制就會(huì)開啟。開啟之后,只有本機(jī)才可以訪問redis。 如果上面三個(gè)條件任何一個(gè)不滿足,就不會(huì)開啟保護(hù)機(jī)制。

感謝各位的閱讀!關(guān)于“redis中bind有什么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

本文題目:redis中bind有什么用-創(chuàng)新互聯(lián)
分享地址:http://muchs.cn/article46/dcjjhg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站網(wǎng)站改版、做網(wǎng)站ChatGPT、云服務(wù)器、網(wǎng)站維護(hù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)