2017-08-08 145 views
0

我試圖解決這個問題幾個小時了,我不知道爲什麼它不工作。我設置了mongod無法遠程連接到MongoDB(即使bindIp未設置)

mongod --dbpath /some/path 

因此bind_ip沒有設置(mongod正在監聽所有接口)。 我將所有的iptables的政策接受並刷新所有規則(所以我可以肯定的iptables不會阻止任何東西) - iptables的-S:

-P INPUT ACCEPT 
-P FORWARD ACCEPT 
-P OUTPUT ACCEPT 
-N DOCKER 
-N DOCKER-ISOLATION 
-N FORWARD_IN_ZONES 
-N FORWARD_IN_ZONES_SOURCE 
-N FORWARD_OUT_ZONES 
-N FORWARD_OUT_ZONES_SOURCE 
-N FORWARD_direct 
-N FWDI_public 
-N FWDI_public_allow 
-N FWDI_public_deny 
-N FWDI_public_log 
-N FWDO_public 
-N FWDO_public_allow 
-N FWDO_public_deny 
-N FWDO_public_log 
-N INPUT_ZONES 
-N INPUT_ZONES_SOURCE 
-N INPUT_direct 
-N IN_public 
-N IN_public_allow 
-N IN_public_deny 
-N IN_public_log 
-N OUTPUT_direct 

我再三地檢查了我的服務器的公網IP,它的100%正確。但無論我做什麼,當我嘗試連接從我的本地機器一起MONGO:

mongo <servers_ip> 

我得到

MongoDB shell version: 2.6.11 
connecting to: servers_ip/test 
2017-08-08T18:18:30.689+0200 warning: Failed to connect to servers_ip:27017, reason: errno:113 No route to host 
2017-08-08T18:18:30.690+0200 Error: couldn't connect to server servers_ip:27017 (servers_ip), connection attempt failed at src/mongo/shell/mongo.js:148 
exception: connect failed 

沒有人有任何想法還有什麼我可以做,以使這項工作?編輯: netstat -tanp的輸出| grep mongod:

tcp  0  0 0.0.0.0:27017   0.0.0.0:*    LISTEN  4302/mongod
+1

服務器是否可以通過端口「27017」訪問?也許端口不是由路由器轉發的。 – nadavvadan

+0

請添加'netstat -tanp |的輸出grep mongod' –

+0

@MarkusWMahlberg編輯 –

回答

0

好吧,所以從我這邊看來,一切都很好。這是我的VPS提供商 - OVH - 阻止了端口,我無法對此做任何事情,但將mongod端口更改爲更低的值。感謝@nadavvadan的建議。

+0

很高興你已經設法修復它。 – nadavvadan