
ここに2つのサーバーがあります
- 192.168.0.12
- 192.168.0.21
サーバー 192.168.0.12 の 50070 ポートでサービスが実行されています
192.168.0.21 サーバーから telnet を実行すると失敗します:
$telnet 192.168.0.12 50070
Trying 192.168.0.12...
telnet: connect to address 192.168.0.12: Connection refused
ホスト名を指定しても失敗します:
$telnet master1.mycluster 50070
Trying 192.168.0.12...
telnet: connect to address 192.168.0.12: Connection refused
192.168.0.12 から試しても、IP アドレスを指定すると失敗します。
$telnet 192.168.0.12 50070
Trying 192.168.0.12...
telnet: connect to address 192.168.0.12: Connection refused
しかし、ホスト名を指定すると動作します:
$telnet master1.mycluster 50070
Trying 127.0.0.1...
Connected to master1.mycluster.
Escape character is '^]'.
この質問を見つけましたサーバーへの接続を拒否するためにTelnetできませんですが、あらゆる可能性を試しました。私が試したのは次の通りです。
両方のサーバーでiptablesをオフにしました
cat /etc/hosts.allow に ALL: ALL を追加しました
そのポートでサービスが実行されていることを確認しました
しかし、どれも私には効果がありません。
私の/etc/hostsはこちらです
127.0.0.1 master1.mycluster master1
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.12 master1.mycluster master1
192.168.0.21 slave1.mycluster slave1
動作させるために他に何か欠けているものはありますか?
答え1
サービスはループバック アドレスのみをリッスンしています127.0.0.1
。
から接続する場合192.168.0.21
、またはアドレスを指定する場合、ip
サービスがそのアドレスをリッスンしていないため、接続は機能しませんip
。
hostname
からを使用すると、192.168.0.12
ループバック アドレスに接続しているため機能します。これは、まず hosts ファイル が検索され、ループバック を/etc/hosts
指すエントリが含まれているためです。hostname
ip
127.0.0.1 master1.mycluster