
イーサネット LAN 上にある Ubuntu 11.10 マシンのポートに、同じ LAN 上の WiFi 経由で Android デバイスからアクセスできるようにするにはどうすればよいでしょうか?
具体的には、Android アプリの開発を行っており、アプリは Ubuntu マシンのポート (http://192.xxx:port) にアクセスする必要があり、Android アプリは次のように応答します。
失敗: 接続http://192.x... 拒否した
Ubuntu マシンの ifconfig で表示される LAN アドレス 192.x... を使用しています。
ありがとう。
答え1
接続先のポートでリッスンしているサービスがない可能性があります。
ネットワークに問題があるかどうかを確認するには、ターミナルを開いて、非プライベートディレクトリにcdします。(注意してください。このコマンドが開始されたディレクトリのすべてのファイルの内容はネットワーク上で提供されるため、慎重に選択してください。)をクリックし、次のように入力します。
python -m SimpleHTTPServer 8000
これにより、すべてのネットワーク インターフェイスのポート 8000 で HTTP 経由で現在のディレクトリが提供されます。
Androidでブラウザを開き、アドレスを入力しますhttp://192.xxx:8000そして、上記の Python コマンドを入力したディレクトリのファイルがブラウザに表示されるかどうかを確認します。
- もしはい: ネットワーク設定は正しく、問題はアプリ内に存在するか、Ubuntu マシン上の必要なポートでリッスンしているサービスがない可能性があります (上記の私の質問を参照してください)。
- もしいいえ(ファイルは表示されません): ファイアウォールがアクティブになっている可能性があります (ルーターまたは Ubuntu マシン上)。一部のルーターでは、WiFi ステーションが互いに通信したり、LAN IP と通信したりすることがデフォルトで許可されていません (ルーターの設定を確認してください。たとえば、OpenWRT にはこのオプションがあります)