0

現在、node.js を学んでおり、node.js を使用して簡単なチャット サーバーを作成しています。

私のコード:

net = require('net');

var sockets = [];

var s = net.Server(function(socket) {
    sockets.push(socket);

    socket.on('data', function(d) {
        for (var i = 0; i < sockets.length; i++) {
            if(sockets[i] == socket) continue;
            sockets[i].write(d);
        }
    });

    socket.on('end', function() {
        var i = sockets.indexOf(socket);
        sockets.splice(i, 1);
    });
});

s.listen(8000);

このチャット サーバーをインターネット上で共有して、他のユーザーが使用できるようにするにはどうすればよいですか?

私のローカル マシンでは、telnet 経由でアクセスできます。 telnet localhost 8000

4

2 に答える 2

0

他の人がインターネット経由で telnet を介してこのチャットを使用できるようにしたい場合 (これはお勧めしません)、ルーター (ルーターを使用していると仮定します) を介してポートをローカル マシンのポート 8000 に転送する必要があります。友達にあなたの IP アドレスとマッピングしたポートを教えてください。そうすれば、友達も telnet で接続できるはずです。

ただし、これ以上の情報がなければ、この質問に答えることは困難です。ファイアウォールを使用していますか? モデム?等。

于 2013-06-26T06:15:46.120 に答える
0

すべての情報に基づいてこの質問に答えるのは本当に難しいです。

ルーターやファイアウォールなどの背後にいるかどうかによって異なります。モデムを介してインターネットに直接接続している場合は、(コマンド プロンプトで) ipconfig を使用してパブリック IP を見つけることができます。ネットワーク ルーターの背後にいる場合は、ほとんどの場合、ポート フォワーディングを設定する必要があります。この場合は、ルーターで Google 検索を実行してください。セットアップのチュートリアルが見つかるか、マニュアルを参照できます。

ポート転送の説明は次のとおりです: http://en.wikipedia.org/wiki/Port_forwarding

これが役立つか、正しい方向に向けられることを願っています!

于 2013-06-26T06:20:06.823 に答える