mit [ich diese Frage markiert habe vom Moderator gelöscht werden, bis ich Antwort auf meine Frage this erhalten]Aufruf IPV6 IP WebSocket-Schnittstelle
Mein Javascript-Client funktioniert prima, wenn sie node.js sprechen (auf Ubuntu, mehr here) Server über WebSocket-Schnittstelle mit IPV4 IP-Adresse.
Obwohl mein Hosting-Provider bereit ist, mir IPV4 zuzuweisen, lassen Sie mich stattdessen IPV6 verwenden, da IPV4 jetzt begrenzt verfügbar ist.
Wenn der IPV6-IP mit erhalte ich diese Fehlermeldung:
WebSocket connection to 'ws://[2600:3c00::f03c:91ff:fe73:2b08]:31333/' failed: Error in connection establishment: net::ERR_ADDRESS_UNREACHABLE
Ich habe überprüft, dass Port 31333 ist in der Tat offen mit dem Werkzeug: http://www.subnetonline.com/pages/ipv6-network-tools/online-ipv6-port-scanner.php
ich sogar Lösung wie in IPv6 address giveing syntax error in internet explorer-10 websocket versucht habe, - das ist: 2600-3c00-0-0-f03c-91ff-fe73-2b08.ipv6-literal.net
Ich habe diesen Client ausgeführt und kann eine Verbindung mit dem Server herstellen, wenn beide auf Remote ausgeführt werden Ubuntu-basierter Server:
var WebSocket = require('ws')
, ws = new WebSocket('ws://[2600:3c00::f03c:91ff:fe73:2b08]:31333');
ws.on('open', function() {
ws.send('something');
});
ws.on('message', function(message) {
console.log('received: %s', message);
});
Jedoch, wenn ich diesen gleichen Client von meinem Zuhause Windows 7 ausgeführt werden, während der Server remote Ubuntu ein, ist es nicht in der Lage zu verbinden:
> $ node c2.js events.js:85
> throw er; // Unhandled 'error' event
> ^Error: connect ENETUNREACH
> at exports._errnoException (util.js:746:11)
> at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1010:19)
Ich habe auch diesen Code in Google Chrome laufen :
var ws = new WebSocket("ws://[2600:3c00::f03c:91ff:fe73:2b08]:31333");
ws.onerror = function(err)
{
console.log(err);
alert("Connection is error...");
};
Aber ich den gleichen Fehler:
WebSocket connection to 'ws://[2600:3c00::f03c:91ff:fe73:2b08]:31333/' failed: Error in connection establishment: net::ERR_ADDRESS_UNREACHABLE websocket.html:37 Event
Was könnte das Problem sein?
PS: Im Moment habe ich den Server auf Port gestoppt 31333.
Haben Sie überprüft, ob Ihre Firewall den Zugriff blockiert? Z.B. Wenn Sie die IP für localhost * und * für Ihre lokale IPv6-Adresse verwenden, funktioniert die Verbindung mit 'ws: // [:: 1]: 31333' erwartungsgemäß (Chrome 44.0.2403.125, Linux). –
Momentan können Client-Server auf demselben Server kommunizieren. – user5858
Unterstützt Ihre (lokale) Netzwerkverbindung IPv6? –