1. ホーム
  2. linux

[解決済み] MongoDBへの接続が拒否された errno 111

2022-02-05 02:54:14

質問

Ubuntu 12.04 LTSを実行しているLinodeサーバーとMongoDBインスタンス(サービスは実行されており、ローカルに接続できます)がありますが、外部ソースから接続することができません。

IP テーブルに以下の 2 つのルールを追加しました。ここで、< ip address > は、FROM 接続したいサーバーです(以下の概要のとおりです)。 MongoDBリファレンス ):

iptables -A INPUT -s < ip-address > -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -d < ip-address > -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

また、IPテーブルで27017の接続を許可するルールを確認しましたが、IPアドレスからmongoデータベースに接続しようとすると、以下のようなコマンドになります。

mongo databasedomain/databasename -u username -p password

こんなエラーが出るんだけど。

2014-07-22T23:54:03.093+0000 warning: Failed to connect to databaseserverip:27017, reason: errno:111 Connection refused 2014-07-22T23:54:03.094+0000 Error: couldn't connect to server < ip address >:27017 (databaseserverip), connection attempt failed at src/mongo/shell/mongo.js:148 exception: connect failed

どんなヘルプでもVERY APPRECIATED!!!! ありがとうございます!!!

解決方法は?

皆さん、ありがとうございました。

iptableのコンフリクトであることが判明しました。 2つのルールがポートをオープン(結果的にクローズドポートになった)にしていたのです。

しかし、akaさんのコメントの1つとmanu2013さんのコメントの1つは、コンフリクトがなければ、私が遭遇していた問題でした。

だから!いつも忘れずに /etc/mongod.conf ファイルを作成し bind_ip = 0.0.0.0 を使用して、外部との接続を行います。

また、iptable で mongo が希望するポートに対して競合するルールがないことを確認してください ( mongodbのサイトにあるリンク を使用して、iptables を適切に設定してください)。