TcpClient 由于目标机器积极拒绝,无法连接

来源:百度知道 编辑:UC知道 时间:2024/05/22 12:00:41
在服务器上我用 Dim tcplister As New TcpListener(Net.IPAddress.Parse("121.14.118.38"), 62223) tcplister.Start() 建立一个监听器.在客户端我用 Dim tcpclient As New Net.Sockets.TcpClient("121.14.118.38", 62223)来连接.出现"由于目标机器积极拒绝,无法连接"的错误..
1.防火墙都关了2.如果把IP改为局域网(如:192.168.16.12)的就不报错3.把两代码都放在服务器的也会报错.4打洞怎么打呀?

TCP不向UDP是无连接通信,TCP是有连接的。
你是从网上找的代码吧。

查看你的服务器端代码,出现这个提示,说明你的监听信道已经被占用。
也许是你客户端在退出时没有向服务器发送退出请求,又或者发送了,但服务器端并没有进行相应的处理。

再补充一点,如果你的服务器端是通过路由连接外网的话,那你直接输入外网的地址和你机子上实际的地址是不一样的。这涉及到地址映射的问题。比如两台机子通过一个IP上网那么,外网端口是由路由来分配的,这样你内网开的〔192.168.1.1:12345〕端口到了外网就可能是〔外网IP:75441〕。这就要进行nat穿透了,也就是常说的打洞。

关掉防火墙,应该是防火墙挡住了。

Ps:按照你的描述,121.14.118.38不是目的机器的地址而是网管对外的IP地址。内网访问需要使用内网IP而不是外网IP。