JS:有可能在动态地址上使用(tcp)套接字进行侦听吗



是否可以在动态地址上使用(tcp(套接字进行侦听就像我想使用公共IP的我的网站.net广告。

这是我的代码:

window.addEventListener('DOMContentLoaded', () => {
var server = net.createServer(function(socket) {
socket.write('Echo serverrn');
socket.pipe(socket);
});
server.listen('1337', 'my-website.net');
})

我收到此错误:

未捕获错误:侦听EADDRNOTAVAIL:地址不可用[IP审查]:1337在Server.setupListenHandle[作为_listen2](VM89 net.js:1301(在listenInCluster(VM89 net.js:1366(在GetAddrInfoReqWrap.doListen[作为回调](VM89 net.js:1503(在GetAddrInfoReqWrap.onlookup[作为oncomplete](VM101 dns.js:69(

(我获得了所有端口,它确实适用于127.0.0.1(错误是什么意思?静态动态IP不起作用?

据我所知,你得到了一个动态ip,并使用了一些动态ip服务,如dyndns.org。有两种方法……首先会很复杂,你必须每隔几秒钟检查一次地址,然后停止服务器并监听你当前得到的ip。不是最好的解决方案。另一种是监听0.0.0.0,这基本上意味着监听系统中的每个IP。因此,如果IP发生变化,那也没关系,因为它会一直监听每个接口。

您得到的错误意味着没有一个网络接口具有该IP。您是否使用路由器并获取本地IP 192.x.x.x?然后你应该在你的路由器上设置端口转发,并监听连接到它的适配器的本地IP。

最新更新